Sailfish OS release: 4.2.0.21, aarch64. Thanks to rinigus for the stable Tama Sailfish port.
Thanks to Erfan Abdi for the instructions, modifications and and help with debugging over Telegram Waydroid channel.
Waydroid repository: https://github.com/waydroid/waydroid
Instructions are valid for Sailfish OS release 4.2.0.21 for Sony Tama and Waydroid release 1.1.1.
devel-su zypper ref
devel-su zypper in python3-gobject lxc lxc-libs
Add Chum repo and install dnsmasq from there.
# add chum repo and
devel-su zypper ref
devel-su zypper in dnsmasq
git clone https://github.com/waydroid/waydroid.git
4. Initialise waydroid (also refer to https://docs.waydro.id)
cd to the cloned Waydroid directory and run the python script as root. By default, this downloads and extracts images to /var/lib/waydroid/images/.
devel-su python3 waydroid.py init
Images can also be downloaded to a custom path by "devel-su python3 waydroid.py init -i /custom/path"
[Protocol]
/dev/puddlejumper = aidl2
/dev/vndpuddlejumper = aidl2
/dev/hwpuddlejumper = hidl
[ServiceManager]
/dev/puddlejumper = aidl2
/dev/vndpuddlejumper = aidl2
/dev/hwpuddlejumper = hidl
File attached.
6. Have to resize the downloaded "system.img" in step 4 and replace the file /system/etc/ld.config.29.txt with the one attached.
This will be updated in later Waydroid releases as informed by Erfan, and this step wouldn't be needed. "resize2fs" was not available in Sailfish OS when I tried, so I copied the system.img to PC and did this over there and copied back the modified image to phone.
If there is an easier way to do it on the phone itself, do mention.
# on a PC, cd to the directory where you copied the system.img from phone
mkdir waydroidrootfs
resize2fs system.img 2G
sudo mount system.img waydroidrootfs
sudo cp /path/to/downloaded/ld.config.29.txt ./waydroidrootfs/system/etc/ld.config.29.txt
sudo umount rootfs
rm -rf waydroidrootfs
Copy back "system.img" to phone. Will be probably a good idea to very sha256sum of the image before copying between the phone and PC to verify that the file wasn't corrupted during copying.
devel-su vi /vendor/etc/vintf/manifest.xml
Goto line 310, change "android.hardware.vibrator" to "android.hardware.vibrator.dis" Reboot device.
(also refer to https://docs.waydro.id) waydroid.py script is in the directory from step 3
# cd to the waydroid directory
devel-su python3 waydroid.py container start
9. In another console window start Waydroid session as regular user and wait until you see a message "Android with user 0 is ready"
python3 waydroid.py session start
python3 waydroid.py show-full-ui
The last three steps could be simplified probably. Clicking Waydroid or android app icons in the app grid were not opening them at least now. Executing command in step 10 was, though.