WayDroid on SFOS?

@roundedrectangle thanks for bringing this up again.

I disabled dnsmasq service with devel-su systemctl disable --now dnsmasq

Afterwards I ran:

waydroid session start

[23:45:22] Skipping clipboard manager service because of missing pyclip package

Followed by two times devel-su waydroid init

[23:49:23] Already initialized
[23:49:33] Already initialized

And closing with `waydroid show-full-ui

[23:49:40] Failed to get service waydroidplatform, trying again…
(This now gets added every second)

Maybe inbetween I got a little bit impatient and tried to restart lxc with devel-su systemctl restart lxc

And this is the log I finally got:

[defaultuser@Phone22 ~]$ waydroid log

[waydroid-sensors-daemon] Got new plugin for accelerometersensor with pid 9800 and session 6
[waydroid-sensors-daemon] Got plugin_string accelerometersensor
[waydroid-sensors-daemon] Got plugin_interface local.AccelerometerSensor
[waydroid-sensors-daemon] Got plugin_path /SensorManager/accelerometersensor
[waydroid-sensors-daemon] Got new plugin for gyroscopesensor with pid 9800 and session 7
[waydroid-sensors-daemon] Got plugin_string gyroscopesensor
[waydroid-sensors-daemon] Got plugin_interface local.GyroscopeSensor
[waydroid-sensors-daemon] Got plugin_path /SensorManager/gyroscopesensor
[waydroid-sensors-daemon] Failed to create SensorfwHumiditySensor: Could not create sensorfw backend
(004273) [23:45:22] % chmod 777 -R /dev/ashmem
[waydroid-sensors-daemon] Got new plugin for alssensor with pid 9800 and session 8
[waydroid-sensors-daemon] Got plugin_string alssensor
[waydroid-sensors-daemon] Got plugin_interface local.ALSSensor
[waydroid-sensors-daemon] Got plugin_path /SensorManager/alssensor
(004273) [23:45:22] % chmod 777 -R /dev/MTK_SMI
(004273) [23:45:22] % chmod 777 -R /dev/mdp_sync
(004273) [23:45:22] % chmod 777 -R /dev/mtk_cmdq
[waydroid-sensors-daemon] Got new plugin for magnetometersensor with pid 9800 and session 9
[waydroid-sensors-daemon] Got plugin_string magnetometersensor
[waydroid-sensors-daemon] Got plugin_interface local.MagnetometerSensor
[waydroid-sensors-daemon] Got plugin_path /SensorManager/magnetometersensor
(004273) [23:45:22] % chmod 777 -R /dev/graphics
(004273) [23:45:22] % chmod 777 -R /dev/ion
[waydroid-sensors-daemon] Got new plugin for orientationsensor with pid 9800 and session 10
[waydroid-sensors-daemon] Got plugin_string orientationsensor
[waydroid-sensors-daemon] Got plugin_interface local.OrientationSensor
[waydroid-sensors-daemon] Got plugin_path /SensorManager/orientationsensor
(004273) [23:45:22] % chmod 777 -R /dev/fb0
(004273) [23:45:22] % chmod 777 -R /dev/video1
(004273) [23:45:22] % chmod 777 -R /dev/video0
[waydroid-sensors-daemon] Got new plugin for pressuresensor with pid 9800 and session 12
[waydroid-sensors-daemon] Got plugin_string pressuresensor
[waydroid-sensors-daemon] Got plugin_interface local.PressureSensor
[waydroid-sensors-daemon] Got plugin_path /SensorManager/pressuresensor
(004273) [23:45:22] % mv /var/lib/waydroid/config_session /var/lib/waydroid/lxc/waydroid
[waydroid-sensors-daemon] Got new plugin for proximitysensor with pid 9800 and session 13
[waydroid-sensors-daemon] Got plugin_string proximitysensor
[waydroid-sensors-daemon] Got plugin_interface local.ProximitySensor
[waydroid-sensors-daemon] Got plugin_path /SensorManager/proximitysensor
(004273) [23:45:22] % mount -o ro /var/lib/waydroid/images/system.img /var/lib/waydroid/rootfs
[waydroid-sensors-daemon] Failed to create SensorfwStepcounterSensor: Could not create sensorfw backend
[waydroid-sensors-daemon] Failed to create SensorfwTemperatureSensor: Could not create sensorfw backend
(004273) [23:45:22] % mount -t overlay -o ro,lowerdir=/var/lib/waydroid/overlay:/var/lib/waydroid/rootfs,upperdir=/var/lib/waydroid/overlay_rw/system,workdir=/var/lib/waydroid/overlay_work/system,xino=off overlay /var/lib/waydroid/rootfs
(004273) [23:45:22] % mount -o ro /var/lib/waydroid/images/vendor.img /var/lib/waydroid/rootfs/vendor
(004273) [23:45:22] % mount -t overlay -o ro,lowerdir=/var/lib/waydroid/overlay/vendor:/var/lib/waydroid/rootfs/vendor,upperdir=/var/lib/waydroid/overlay_rw/vendor,workdir=/var/lib/waydroid/overlay_work/vendor,xino=off overlay /var/lib/waydroid/rootfs/vendor
(004273) [23:45:22] % mount -o bind /vendor/lib/egl /var/lib/waydroid/rootfs/vendor/lib/egl
(004273) [23:45:22] % mount -o bind /vendor/lib64/egl /var/lib/waydroid/rootfs/vendor/lib64/egl
(004273) [23:45:22] % mount -o bind /vendor/odm /var/lib/waydroid/rootfs/odm_extra
(004273) [23:45:22] % mount -o bind /var/lib/waydroid/waydroid.prop /var/lib/waydroid/rootfs/vendor/waydroid.prop
(004273) [23:45:22] Save config: /var/lib/waydroid/waydroid.cfg
(004273) [23:45:22] % lxc-start -P /var/lib/waydroid/lxc -F -n waydroid -- /init
(004273) [23:45:22] New background process: pid=9843, output=background
(004273) [23:45:22] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
lxc-start: waydroid: ../src/lxc/utils.c: open_without_symlink: 1084 Too many levels of symbolic links - vibrator in /usr/lib64/lxc/rootfs/sys/class/leds/vibrator was a symbolic link!
RUNNING
(009765) [23:45:22] Skipping clipboard manager service because of missing pyclip package
(004273) [23:45:24] Failed to add service waydroidhardware: -2147483647
(004273) [23:45:24] Failed to add service waydroidhardware: -2147483647
(010664) [23:47:29] % tail -n 60 -F /var/lib/waydroid/waydroid.log
(010664) [23:47:29] *** output passed to waydroid stdout, not to this log ***
(011002) [23:49:23] Already initialized
(011018) [23:49:33] Already initialized
(004273) [23:49:40] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
RUNNING
(011032) [23:49:40] Failed to get service waydroidplatform, trying again...
...
(011032) [00:00:25] Failed to get service waydroidplatform, trying again...
(009765) [00:00:26] UserMonitor service is not even started
(009765) [00:00:26] Clipboard service is not even started
(004273) [00:00:26] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
RUNNING
(004273) [00:00:26] % lxc-stop -P /var/lib/waydroid/lxc -n waydroid -k
lxc-start: waydroid: ../src/lxc/conf.c: run_buffer: 322 Script exited with status 126
lxc-start: waydroid: ../src/lxc/start.c: lxc_end: 985 Failed to run lxc.hook.post-stop for container "waydroid"
(004273) [00:00:26] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
STOPPED
(004273) [00:00:26] % /usr/lib/waydroid/data/scripts/waydroid-net.sh stop
vnic is waydroid0
(004273) [00:00:26] % systemctl is-enabled -q nfcd
(004273) [00:00:26] % pidof waydroid-sensord
9800
(004273) [00:00:26] % kill -9 9800
(004273) [00:00:26] % umount /home/waydroid/rootfs/vendor/waydroid.prop
(004273) [00:00:26] % umount /home/waydroid/rootfs/vendor/lib64/egl
(004273) [00:00:26] % umount /home/waydroid/rootfs/vendor/lib/egl
(011032) [00:00:26] Failed to get service waydroidplatform, trying again...
(004273) [00:00:26] % umount /home/waydroid/rootfs/vendor
(004273) [00:00:26] % umount /home/waydroid/rootfs/vendor
(004273) [00:00:27] % umount /home/waydroid/rootfs/odm_extra
(004273) [00:00:27] % umount /home/waydroid/rootfs
(004273) [00:00:27] % umount /home/waydroid/rootfs
(011032) [00:00:27] Failed to get service waydroidplatform, trying again...
...
(011032) [00:03:15] Failed to get service waydroidplatform, trying again...
waydroid session start(011032) [00:03:16] Failed to get service waydroidplatform, trying again...
(011032) [00:03:17] Failed to get service waydroidplatform, trying again...
...
(011032) [00:06:23] Failed to get service waydroidplatform, trying again...
(011032) [00:06:24] Failed to access IPlatform service

Overall it feels it got one step further, but not with a successful finish. Additionally, now the screen of the phone stays black. Is this a result of the lxc restart? And do I reboot the phone now?
`

I don’t think this is a normal behaviour.

Rebooting might always help.

It may be useful to check if the container is shown as started in waydroid status. If not, try devel-su waydroid container start and check if it succeeds. If there will be an error, the full version is probably in waydroid logs.

This might also help, even though it is marked as fixed (this helped me too. You might want to check my issue as well). I don’t remember what exact line the issue talks about, but if you will open the config file I am sure you will find it.

In general, when installing Waydroid I tried every possible solution I found in waydroid repository issues, Reddit, SailfishOS waydroid repository issues and everything else I could find, even if it was marked as fixed and not required or not directly related to my problem and logs. I am not really an expert at waydroid but that’s what I did to get it to work.

1 Like

So rebooting helped to revive the phone. Seems like no long term issue. Thats great!

I checked then the error you had bout the apparmor reference. Unfortunatly in / var/lib/waydroid/lxc/waydroid/config the line

#lxc.apparmor.profile = unconfined

was already outcommented. Activating it leads to the same error you reported. But as long as its outcommented at least something is happening.
However, I am still stuck, without a clue. If I look at the log after running waydroid show-full-ui is this:

(047920) [21:34:55] Skipping clipboard manager service because of missing pyclip package
(004279) [21:34:56] Failed to add service waydroidhardware: -2147483647
(004279) [21:34:56] Failed to add service waydroidhardware: -2147483647

If I check waydroid status now, I get this:

Session: RUNNING
Container: RUNNING
Vendor type: HALIUM_11
IP address: UNKNOWN
Session user: defaultuser(100000)
Wayland display: …/…/display/wayland-0

If i then run waydroid show-full-ui again, I only get:

[21:51:06] Failed to get service waydroidplatform, trying again…

What is the next step then? And how can I see the container on the phone screen/grid?

I’m sorry, but I don’t really know. As I already said, I’m not an expert at this. Maybe check if anything changed in waydroid logs. Possibly try restarting container and/or session. You might find more help in the issues tab on sailfishos waydroid repository or waydroid’s official one.

Thank you anyway @roundedrectangle it still helped me to get a little further.
Unfortunatly, the logs do not give a clue. They still have the same entries as shared before.

However, after some restarts etc. I do get one App, where I can see the LineageOS booting animation running (supposedly from CHUM GUI Waydroid package). Parallely, I see the following message in Waydroid-runner appearing: Unexpected Wayland display setting for running Android session. Stopping the execution.

In the waydroid status I can see Wayland display: …/…/display/wayland-0 as shared before.
Is this correct?
And why is @contra stating, that no gbinder is needed? Is this connected to the issue? I saw it is connected to display also. But I am a little bit clueless here.

Puh so I am out of options.
I only found out via rpm -q- libgbinderthat indeed with SailfishOS 5.0.0.62 the libgbinder version libgbinder-1.1.42-1.1.1.bso.aarch64 is being used. Therefore the mentioned configuration is not needed anymore. However, I feel a bit desperated on continuing, as I see no solution to run waydroid properly.

Is this Android 13 or something that should work?

Super relevant to my interests

Not sure if I got you right @mjtorn

I am using a Vollphone 22, which was coming from VollaOS 12.1, which was flashed via UBportsinstaller. From my understanding is Android 12.0.5
I then used the last installer of SailfishOS Version 5.0.0.62 from Mr. Piggz: Releases · HelloVolla/sailfish-release-halium-mimameid · GitHub
For waydroid then the Halium 12 images had been used as proposed by Contra: aleasto-lineageos - Browse /LineageOS 20/waydroid_arm64 at SourceForge.net

1 Like

Ok, yeah, I’ve heard it said that versions <14 should work, and not having Android support is my biggest deterrent from the FP5.

That one ships with 14, so it won’t work.

There’s a forum post recommending “latest Android” for it, which may even be interpreted as version 15.

My condolences for Waydroid not working, though it seems it should.

Sad state of affairs when I’m sure plenty of people would pay Jolla for AAS, but licensing or whatever prohibits that, and Waydroid either isn’t important enough for people, or there are so few devs able to do it they don’t have time.

Maybe some year.