android x86 is a free and an open source project to port the android system made by Google from the ARM architecture to the x86 architecture, which allow users to run the android system on their desktop machines to enjoy all android functionalities + Apps & games.
The android x86 project finished porting the android 8.1 Oreo system to the x86 architecture few weeks ago. In this post, we’ll explain how to install it on your Linux system so that you can use your android apps and games any time you want.
First, let’s download the android x86 8.1 Oreo system image. You can download it from this page, just click on the “View” button under the file.
We are going to use QEMU to run android x86 on our Linux system. QEMU is a very good emulator software, which is also free and open source, and is available in all the major Linux distributions repositories.
To install QEMU on Ubuntu(16.04 & 18.04)/Linux Mint/Debian:
sudo apt-get install qemu qemu-kvm libvirt-bin
If you are on Ubuntu 18.10, you need to install different packages:
sudo apt install qemu qemu-kvm libvirt-daemon-system libvirt-clients
To install QEMU on Fedora:
sudo dnf install qemu qemu-kvm
For other distributions, just search for the qemu and qemu-kvm packages and install them.
After you have installed QEMU, we’ll need to run the following command to create the android.img file, which will be like some sort of an allocated disk space just for the android system. All android files and system will be inside that image file:
qemu-img create -f qcow2 android.img 15G
Here we are saying that we want to allocate a maximum of 15GB for android, but you can change it to any size you want (make sure it’s at least bigger than 5GB).
Now, to start running the android system for the first time, run:
sudo qemu-system-x86_64 -m 2048 -boot d -enable-kvm -smp 3 -net nic -net user -hda android.img -cdrom /home/mhsabbagh/android-x86_64-8.1-r1.iso
Replace /home/mhsabbagh/android-x86_64-8.1-r1.iso with the path of the file that you downloaded from the android x86 website. For explaination of other options we are using here, you may refer to this article.
After you run the above command, the android system will start:
From this window, choose “Advanced options”, which should lead to the following menu, from which you should choose “Auto_installation” as follows:
After that, the installer will just tell you about whether you want to continue or not, choose Yes:
And the installation will carry on without any further instructions from you:
Finally you’ll receive this message, which indicates that you have successfully installed android 8.1:
For now, just close the QEMU window completely.
Now that the android system is fully installed in your android.img file, you should use the following QEMU command to start it instead of the previous one:
sudo qemu-system-x86_64 -m 2048 -boot d -enable-kvm -smp 3 -net nic -net user -hda android.img
Notice that all we did was that we just removed the -cdrom option and its argument. This is to tell QEMU that we no longer want to boot from the ISO file that we downloaded, but from the installed android system.
You should see the android booting menu now:
Then you’ll be taken to the first preparation wizard, choose your language and continue:
From here, choose the “Set up as new” option:
Then android will ask you about if you want to login to your current Google account. This step is optional, but important so that you can use the Play Store later:
Then you’ll need to accept the terms and conditions:
Now you can choose your current timezone:
The system will ask you now if you want to enable any data collection features. If I were you, I’d simply turn them all off like that:
Finally, you’ll have 2 launcher types to choose from, I recommend that you choose the Launcher3 option and make it the default:
Then you’ll see your fully-working android system home screen:
From here now, you can do all the tasks you want; You can use the built-in android apps, or you may browse the settings of your system to adjust it however you like. You may change look and feeling of your system, or you can run Chrome for example:
You may start installing some apps like WhatsApp and others from the Google Play store for your own use:
You can now do whatever you want with your system. Congratulations!
We don’t want to always have to open the terminal window and write that long QEMU command to run the android system, but we want to run it in just 1 click whenever we need that.
To do this, we’ll create a new file under /usr/share/applications called android.desktop with the following command:
sudo nano /usr/share/applications/android.desktop
And paste the following contents inside it (Right click and then paste):
[Desktop Entry] Name=Android 8.1 Comment=Run Android 8.1 Oreo on Linux using QEMU Icon=phone Exec=bash -c 'pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY qemu-system-x86_64 -m 2048 -boot d -enable-kvm -smp 3 -net nic -net user -hda /home/mhsabbagh/android.img' Terminal=false Type=Application StartupNotify=true Categories=GTK;
Again, you have to replace /home/mhsabbagh/android.img with the path to the local image on your system. Then save the file (Ctrl + X, then press Y, then Enter).[alert type=”warning” icon-size=”big”]Notice that we needed to use “pkexec” to run QEMU with root privileges because starting from newer versions, accessing to the KVM technology via libvirt is not allowed for normal users; That’s why it will ask you for the root password each time.[/alert]
Now, you’ll see the android icon in the applications menu all the time, you can simply click it any time you want to use android and the QEMU program will start:
We showed you how install and run android 8.1 Oreo on your Linux system. From now on, it should be much easier on you to do your android-based tasks without some other software like Blutsticks and similar methods. Here, you have a fully-working and functional android system that you can manipulate however you like, and if anything goes wrong, you can simply nuke the image file and run the installation all over again any time you want.
Have you tried android x86 before? How was your experience with it?