Skip to content
This repository has been archived by the owner on Nov 25, 2022. It is now read-only.

Latest commit

 

History

History
179 lines (135 loc) · 5.03 KB

README.md

File metadata and controls

179 lines (135 loc) · 5.03 KB

Archiving, as waydroid now defaults to Android 11. Just use https://github.com/casualsnek/waydroid_script to enable libhoudini.

Waydroid Guide

This guide takes you through the process of installing waydroid, and getting arm translation on Linux.

COMPATIBILITY.md is the table of app compatibility. You're encouraged to request for your favourite apps' compatibility status on the issues page.

Tested System Details:

OS: Zorin OS 16, Ubuntu 20.04, Arch
Kernel: 5.11.0, 5.16.16
CPU: Intel i3-7020U, Intel i7-1065G7

Pre-requisites:

  1. Follow the pre-requisites section: https://docs.waydro.id/usage/install-on-desktops#install-pre-requisites

  2. Download lineageOS android 11 system images archive from SourceForge: https://sourceforge.net/projects/blissos-dev/files/waydroid/lineage/lineage-18.1/

(Use a download manager like fireDM in case of slow download speeds)

  1. Create the system images directory:
sudo mkdir -p /usr/share/waydroid-extra/images
  1. Extract the contents of the archive to ~/temp_folder (Where ~ denotes the user home directory)

  2. Move the contents of the temp_folder to system images directory:

sudo mv ~/temp_folder/* /usr/share/waydroid-extra/images
rmdir ~/temp_folder
  1. Debian based users must also:

impish users may use hirsute in place of bullseye

  • get the latest libgbinder updates:
sudo apt install git libglib2.0-dev libglibutil-dev gcc
git clone --depth=1 https://github.com/mer-hybris/libgbinder
cd libgbinder
make
make install
  • copy the new libgbinder.so.1, libgbinder.so.1.1 and libgbinder.so.1.1.xx files added to /usr/lib to wherever your system has the current libgbinder installed. Use dpkg -L libgbinder to find out.

Install Waydroid

  1. Install waydroid
  1. Edit sudo nano /etc/gbinder.d/anbox.conf to read like:
[Protocol]
/dev/anbox-binder = aidl3
/dev/anbox-vndbinder = aidl3
/dev/anbox-hwbinder = hidl

[ServiceManager]
/dev/anbox-binder = aidl3
/dev/anbox-vndbinder = aidl3
/dev/anbox-hwbinder = hidl

[General]
ApiLevel = 30
  1. Restart waydroid:
sudo systemctl restart waydroid-container.service
waydroid show-full-ui

You may need to sign ashmem_linux manually for secure boot.

Unsigned ashmem_linux error:modprobe: ERROR: could not insert 'ashmem_linux': Operation not permitted

sudo update-secureboot-policy --new-key
sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 /var/lib/shim-signed/mok/MOK.priv /var/lib/shim-signed/mok/MOK.der $(modinfo -n ashmem_linux)

Arm Translation

  1. Install lzip:
  • Debian: sudo apt install lzip
  • Arch: sudo pacman -S lzip
  1. Install Waydroid Extras Script:
git clone --depth=1 https://github.com/casualsnek/waydroid_script
cd waydroid_script
sudo python3 -m pip install -r requirements.txt
sudo python3 waydroid_extras.py -h
  1. Install Libhoudini ARM Translation:
cd waydroid_script
sudo python3 waydroid_extras.py -l

You may need to umount -a and waydroid session stop for Libhoudini to install.

  1. Restart Waydroid Container:
sudo systemctl start waydroid-container.service
  1. Launch Waydroid:
waydroid show-full-ui

I want to stay on X11 right now

Most beginner friendly distros besides Linux Mint Cinnamon do have Wayland pre-installed. Weston can leverage this wayland backend and run Waydroid.

  1. Install Weston Compositor:
sudo apt install weston
  1. Launch Weston:
weston

Click the terminal icon in the top left region inside the Weston window. This opens a terminal window.

  1. Launch Waydroid inside Weston
waydroid show-full-ui

You may need to sudo waydroid container restart to restart the android image before launching inside weston.


Bibliography

This guide has been made possible thanks to these original sources and projects.

  1. Jon West: https://t.me/WayDroid/55770 (Major Source)
  2. Waydroid: https://waydro.id/
  3. Waydroid Script: https://github.com/casualsnek/waydroid_script/
  4. BlissOS: https://blissos.org/

Need help?

Odds are something slipped through at our end.

Creating a bug report, and improving the guide helps the next person who follows the guide.

The good folks at the Waydroid matrix and telegram chatrooms are very helpful too, in case you need advanced troubleshooting.