We were bitten by this and after hours of debugging it turned out it was caused by a left-over Waydroid installation. If you have the waydroid package installed, just remove it and wait a few minutes (the AlienDalvik service will be restarted and then launch correctly after removing it).
If you are affected by this issue, you will see a bunch of log messages from the “Parcel” logger in the Android boot log (not journalctl
, see below!) complaining about messages in an incompatible format being received.
Some lessons/tricks learned:
- To get a boot log for the Android environment use:
sudo -u appsupport-root lxc-attach --lxcpath="$(/usr/sbin/appsupport-config --lxc-path)" -n "$(/usr/sbin/appsupport-config --name)" -- /system/bin/bootstrap/linker64 /system/bin/logcat
(Note the use of the custom…/bootstrap/linker64
to work around the main linker not being available yet from its APEX package) - To recreate the AlienDalvik LXC container without data loss use:
sudo systemctl stop aliendalvik sudo umount /opt/alien/rootfs sudo lxc-destroy --lxcpath="$(/usr/sbin/appsupport-config --lxc-path)" -n "$(/usr/sbin/appsupport-config --name)" sudo systemctl restart aliendalvik-prepare.service
- To reinstall all packages (effectively a dirty re-flash) use:
sudo zypper in -f $(rpm -q -a --qf '%{NAME} ')