I noticed this Copr overrides the selinux-policy packages, while yanqiyu’s Copr that this is forked from just uses the new package waydroid-selinux to add in policies. Would it be better to only put the new policies in a separate package like how it was in yanqiyu’s Copr so everything else can get timely updates from the main repo, or is overriding the packages necessary for changes you have made?
It is necessary because genfscon rules are not supported in sepolicy modules.
Just tried it, and ran
sudo waydroid init -c https://raw.githubusercontent.com/aleasto/waydroid-ota/main/system -v https://raw.githubusercontent.com/aleasto/waydroid-ota/main/vendor
sudo systemctl enable --now waydroid-container
to setup. Then,
sudo waydroid container start gives
[01:07:30] Failed to load ashmem driver
[01:07:30] modprobe: FATAL: Module ashmem_linux not found in directory /lib/modules/5.16.11-200.fc35.x86_64
[01:07:30] Failed to load Ashmem driver
Do I still need the Xanmod kernel?
No, you should ignore it.
Also you should not run sudo waydroid container start, it’s already run by systemd.
waydroid session start
[01:38:54] Failed to start Clipboard manager service, check logs
Now its stuck here
Update: I did
pip install pyclip and it now doesn’t give that error, but still stuck indefinitely
I’m having trouble running waydroid, it’s weird. When I just booted, waydroid-container seems to be running fine (judging from the systemctl status waydroid-container output). But when I waydroid show-full-ui, logs say that it failed to start the container, and, the container is indeed dead.
I also think I’ve located the cause of the issue in logs:
(005955) [15:27:37] % lxc-start -P /var/lib/waydroid/lxc -F -n waydroid -- /init
(005955) [15:27:37] New background process: pid=6289, output=background
lxc-start: waydroid: network.c: netdev_configure_server_veth: 708 No such file or directory - Failed to attach "vethc5FWvn" to bridge "waydroid0", bridge interface doesn't exist
lxc-start: waydroid: network.c: lxc_create_network_priv: 3419 No such file or directory - Failed to create network device
lxc-start: waydroid: start.c: lxc_spawn: 1826 Failed to create the network
lxc-start: waydroid: start.c: __lxc_start: 2053 Failed to spawn container "waydroid"
lxc-start: waydroid: conf.c: run_buffer: 323 Script exited with status 126
lxc-start: waydroid: start.c: lxc_end: 996 Failed to run lxc.hook.post-stop for container "waydroid"
lxc-start: waydroid: tools/lxc_start.c: main: 308 The container failed to start
lxc-start: waydroid: tools/lxc_start.c: main: 313 Additional information can be obtained by setting the --logfile and --logpriority options
(005955) [15:27:37] waiting 10 seconds for container to start...
Also lxc-checkconfig reports
Cgroup v1 systemd controller: missing
Cgroup v1 freezer controller: missing
Cgroup ns_cgroup: required
So I’m currently googling all this stuff and trying to figure out how to fix lxc problems. Maybe someone here has any ideas?
I am stuck here too, it’s been 30 minutes i think
The latest build works like a charm. Thanks!
Any idea on whats the status on stuff like integration with libhoudini for the x86 LineageOS images provided?
I followed these directions, and initially when trying to do “waydroid show-full-ui” I would get “Failed to get service waydroidplatform, trying again…” forever. I tried stopping the systemd service (which said it was running successfully) and manually starting it with “mydroid container start”. Now when trying to show-full-ui I instead get “Starting waydroid session” but then nothing after that. I now continue to get that new behavior even if I shut down the manually started container and restart it via the systemd service
What did I do wrong? Is there a log i should be looking at?
OK, this is very odd. When it’s waiting at “Starting waydroid session”, if I look at processes in top, I see a surfaceflinger process running as the wrong user - my primary user account, which is not the account I’m logged in as when trying to start it, and which I didn’t use at all when setting this up. I also see a bootanimation process running as UID 1003, a user which doesn’t even exist on my system.
Are there perhaps some UIDs hardcoded somewhere they shouldn’t be?
sudo waydroid logcat will provide more information
Ah, I see, it was throwing a bunch of errors about sensors… removing the package waydroid-sensors and restarting worked. Is that package needed for anything? I’m on a desktop pc, not a phone, if that makes a difference.
I inherited the package from the previous copr fork, where the author already knew it was broken. I haven’t looked into it yet though.
Thanks. Is there any reason not to install Google Play Services, assuming I obtain the apk elsewhere? Will it not work, or will my account get banned for using it from an unauthorized device?
waydroid already supports google services by initializing with
waydroid init -s GAPPS which will download android images with google services included, however this copr currently only works with my custom built android images and I have not built the ‘gapps’ variant yet.
This project may help you GitHub - casualsnek/waydroid_script: Python Script to add OpenGapps, Magisk, libhoudini translation library and libndk translation library to waydroid !
Thanks, I’ll take a look. Do you have any info on what’s required to build a custom images that works with this copr version? In addition to gapps, I’d like to get an Android TV variant built, and I’d be willing to contribute some effort to that
Building from master already works: Compile Waydroid - Lineage OS based images - Waydroid
Except that for the browser to not crash you need to rebuild the chromium apks in external/chromium-webview/ with these patches:
Or more simply copy my apk from /var/lib/waydroid/rootfs/system/product/app/webview/webview.apk
You can find me on irc.libera.chat if you need
I tried installing gapps using the waydroid_extras script, but when I get to the step of getting my android ID, it produces no output ID - I checked the sqlite db myself and it’s not in there.
Not sure if this is related or a separate issue, but I don’t seem to have network connectivity. Both the browser and Google Play store app say no network connection.
FYI for anyone reading this thread, the issue was that my container (for complicated, unrelated reasons), wasn’t getting network connectivity, and apparently that’s a prerequisite for generating an android ID