Waydroid glitching after installing libhoudini #157

Open
opened 2024-04-10 04:24:03 -04:00 by brainwo · 3 comments
brainwo commented 2024-04-10 04:24:03 -04:00 (Migrated from github.com)

I encounter this issue after installing libhoudini from waydroid_script, I didn't install anything prior to installing libhoudini alone. The Waydroid screen start glitching like a broken video card (image attached). I have yet find a solution to fix this after several attempts.

Steps to reproduce:

  1. Open Waydroid
  2. Run the command:
    git clone https://github.com/casualsnek/waydroid_script
    cd waydroid_script
    python3 -m venv venv
    venv/bin/pip install -r requirements.txt
    sudo venv/bin/python3 main.py
    
  3. Pick to install libhoudini
  4. Wait until it prints the log:
    [gbinder] WARNING: Service manager /dev/anbox-binder has died
    [gbinder] Service manager /dev/anbox-binder has appeared
    
  5. App restarted by itself and start glitching

What I have tried so far:

  1. Uninstall libhoudini from waydroid_script
  2. Reinstall Waydroid from system package manager
  3. Clean all previous Waydroid data in following folders
    /var/lib/waydroid 
    home/.waydroid
    ~/waydroid
    ~/.share/waydroid
    ~/.local/share/waydroid
    
  4. Unregister the leftover binfmt for arm_exe, arm_dyn, arm64_exe, and arm64_dyn
  5. Restart the operating system
  6. Use another Wayland compositor
  7. Switch to software rendering following this guide

Additional attachments:

Screenshot

image

Basic system information

Linux Distribution: Arch Linux
Kernel: 6.8.4-arch1-1
Discrete GPU: AMD Radeon RX 460
Integrated GPU: Intel HD Graphics
Processor: Intel i7-4790

Recent /var/lib/waydroid/waydroid.log
(011021) [16:42:16] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
STOPPED
(011021) [16:42:16] % /usr/lib/waydroid/data/scripts/waydroid-net.sh stop
vnic is waydroid0
waydroid-net isn't running
(011021) [16:42:16] % systemctl is-enabled -q nfcd
(013298) [16:42:16] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
STOPPED
(013298) [16:42:16] % modprobe -q ashmem_linux
(013298) [16:42:16] % chmod 666 -R /dev/anbox-binder
(013298) [16:42:16] % chmod 666 -R /dev/anbox-vndbinder
(013298) [16:42:16] % chmod 666 -R /dev/anbox-hwbinder
(013324) [16:42:18] Starting waydroid session
(013298) [16:42:18] % /usr/lib/waydroid/data/scripts/waydroid-net.sh start
vnic is waydroid0
(013298) [16:42:18] % systemctl is-active -q nfcd
(013298) [16:42:18] % chmod 777 -R /dev/dri
(013298) [16:42:18] % chmod 777 -R /dev/fb0
(013298) [16:42:18] % chmod 777 -R /dev/video0
(013298) [16:42:18] % mv /var/lib/waydroid/config_session /var/lib/waydroid/lxc/waydroid
(013298) [16:42:18] % mount -o ro /var/lib/waydroid/images/system.img /var/lib/waydroid/rootfs
(013298) [16:42:18] % 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
(013298) [16:42:18] % mount -o ro /var/lib/waydroid/images/vendor.img /var/lib/waydroid/rootfs/vendor
(013298) [16:42:18] % 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
(013298) [16:42:18] % mount -o bind /var/lib/waydroid/waydroid.prop /var/lib/waydroid/rootfs/vendor/waydroid.prop
(013298) [16:42:18] Save config: /var/lib/waydroid/waydroid.cfg
(013298) [16:42:18] % lxc-start -P /var/lib/waydroid/lxc -F -n waydroid -- /init
(013298) [16:42:18] New background process: pid=13370, output=background
(013298) [16:42:18] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
STOPPED
(013298) [16:42:18] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
RUNNING
(013298) [16:42:18] waiting 10 seconds for container to start...
(013324) [16:42:19] Skipping clipboard manager service because of missing pyclip package
(013324) [16:42:20] Clipboard service is not even started
(013298) [16:42:20] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
RUNNING
(013298) [16:42:20] % lxc-stop -P /var/lib/waydroid/lxc -n waydroid -k
lxc-start: waydroid: ../src/lxc/utils.c: run_buffer: 571 Script exited with status 126
lxc-start: waydroid: ../src/lxc/start.c: lxc_end: 986 Failed to run lxc.hook.post-stop for container "waydroid"
(013298) [16:42:20] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH
STOPPED
(013298) [16:42:20] % /usr/lib/waydroid/data/scripts/waydroid-net.sh stop
vnic is waydroid0
(013298) [16:42:20] % systemctl is-enabled -q nfcd
(013298) [16:42:20] % umount /var/lib/waydroid/rootfs/vendor/waydroid.prop
(013298) [16:42:20] % umount /var/lib/waydroid/rootfs/vendor
(013298) [16:42:21] % umount /var/lib/waydroid/rootfs/vendor
(013298) [16:42:21] % umount /var/lib/waydroid/rootfs
(013298) [16:42:21] % umount /var/lib/waydroid/rootfs

Let me know if there is any additional information you like me to share. Thanks in advance.

I encounter this issue after installing libhoudini from waydroid_script, I didn't install anything prior to installing libhoudini alone. The Waydroid screen start glitching like a broken video card (image attached). I have yet find a solution to fix this after several attempts. # Steps to reproduce: 1. Open Waydroid 1. Run the command: ```sh git clone https://github.com/casualsnek/waydroid_script cd waydroid_script python3 -m venv venv venv/bin/pip install -r requirements.txt sudo venv/bin/python3 main.py ``` 1. Pick to install libhoudini 1. Wait until it prints the log: ```sh [gbinder] WARNING: Service manager /dev/anbox-binder has died [gbinder] Service manager /dev/anbox-binder has appeared ``` 1. App restarted by itself and start glitching # What I have tried so far: 1. Uninstall libhoudini from waydroid_script 1. Reinstall Waydroid from system package manager 1. Clean all previous Waydroid data in following folders ``` /var/lib/waydroid home/.waydroid ~/waydroid ~/.share/waydroid ~/.local/share/waydroid ``` 1. Unregister the leftover binfmt for arm_exe, arm_dyn, arm64_exe, and arm64_dyn 1. Restart the operating system 1. Use another Wayland compositor 1. Switch to software rendering following [this guide](https://wiki.archlinux.org/title/Waydroid#Software_rendering) # Additional attachments: <details> <summary><b>Screenshot</b></summary> ![image](https://github.com/casualsnek/waydroid_script/assets/45139213/4aa722b0-dcd2-4205-bfd4-f7984db0e693) </details> <details> <summary><b>Basic system information</b></summary> Linux Distribution: Arch Linux Kernel: 6.8.4-arch1-1 Discrete GPU: AMD Radeon RX 460 Integrated GPU: Intel HD Graphics Processor: Intel i7-4790 </details> <details> <summary><b>Recent /var/lib/waydroid/waydroid.log</b></summary> ``` (011021) [16:42:16] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH STOPPED (011021) [16:42:16] % /usr/lib/waydroid/data/scripts/waydroid-net.sh stop vnic is waydroid0 waydroid-net isn't running (011021) [16:42:16] % systemctl is-enabled -q nfcd (013298) [16:42:16] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH STOPPED (013298) [16:42:16] % modprobe -q ashmem_linux (013298) [16:42:16] % chmod 666 -R /dev/anbox-binder (013298) [16:42:16] % chmod 666 -R /dev/anbox-vndbinder (013298) [16:42:16] % chmod 666 -R /dev/anbox-hwbinder (013324) [16:42:18] Starting waydroid session (013298) [16:42:18] % /usr/lib/waydroid/data/scripts/waydroid-net.sh start vnic is waydroid0 (013298) [16:42:18] % systemctl is-active -q nfcd (013298) [16:42:18] % chmod 777 -R /dev/dri (013298) [16:42:18] % chmod 777 -R /dev/fb0 (013298) [16:42:18] % chmod 777 -R /dev/video0 (013298) [16:42:18] % mv /var/lib/waydroid/config_session /var/lib/waydroid/lxc/waydroid (013298) [16:42:18] % mount -o ro /var/lib/waydroid/images/system.img /var/lib/waydroid/rootfs (013298) [16:42:18] % 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 (013298) [16:42:18] % mount -o ro /var/lib/waydroid/images/vendor.img /var/lib/waydroid/rootfs/vendor (013298) [16:42:18] % 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 (013298) [16:42:18] % mount -o bind /var/lib/waydroid/waydroid.prop /var/lib/waydroid/rootfs/vendor/waydroid.prop (013298) [16:42:18] Save config: /var/lib/waydroid/waydroid.cfg (013298) [16:42:18] % lxc-start -P /var/lib/waydroid/lxc -F -n waydroid -- /init (013298) [16:42:18] New background process: pid=13370, output=background (013298) [16:42:18] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH STOPPED (013298) [16:42:18] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH RUNNING (013298) [16:42:18] waiting 10 seconds for container to start... (013324) [16:42:19] Skipping clipboard manager service because of missing pyclip package (013324) [16:42:20] Clipboard service is not even started (013298) [16:42:20] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH RUNNING (013298) [16:42:20] % lxc-stop -P /var/lib/waydroid/lxc -n waydroid -k lxc-start: waydroid: ../src/lxc/utils.c: run_buffer: 571 Script exited with status 126 lxc-start: waydroid: ../src/lxc/start.c: lxc_end: 986 Failed to run lxc.hook.post-stop for container "waydroid" (013298) [16:42:20] % lxc-info -P /var/lib/waydroid/lxc -n waydroid -sH STOPPED (013298) [16:42:20] % /usr/lib/waydroid/data/scripts/waydroid-net.sh stop vnic is waydroid0 (013298) [16:42:20] % systemctl is-enabled -q nfcd (013298) [16:42:20] % umount /var/lib/waydroid/rootfs/vendor/waydroid.prop (013298) [16:42:20] % umount /var/lib/waydroid/rootfs/vendor (013298) [16:42:21] % umount /var/lib/waydroid/rootfs/vendor (013298) [16:42:21] % umount /var/lib/waydroid/rootfs (013298) [16:42:21] % umount /var/lib/waydroid/rootfs ``` </details> Let me know if there is any additional information you like me to share. Thanks in advance.
brainwo commented 2024-04-10 05:09:11 -04:00 (Migrated from github.com)

I'm not sure what happening, but after several attempts in installing and uninstalling libhoudini and restarting waydroid-container, it seems to fix the issue. And now Arm apps start appearing in Play Store. 😕

I'm not sure what happening, but after several attempts in installing and uninstalling libhoudini and restarting waydroid-container, it seems to fix the issue. And now Arm apps start appearing in Play Store. 😕
brainwo commented 2024-04-10 08:32:31 -04:00 (Migrated from github.com)

Update: turns out it has something to do with ro.hardware.egl.
The Arch Linux Wiki guide is outdated or misguided, for an updated guide please refer to https://docs.waydro.id/faq/get-waydroid-to-work-through-a-vm.

Will reopen this issue, it seems like there is a part in the install libhoudini script that alter my device behavior. I don't remember turning on setting ro.hardware.egl to swiftshader previously and now I notice my Waydroid runs slower. Though, it could be something to do with the fact that I install my Waydroid a year ago.

Update: turns out it has something to do with `ro.hardware.egl`. The Arch Linux Wiki guide is outdated or misguided, for an updated guide please refer to https://docs.waydro.id/faq/get-waydroid-to-work-through-a-vm. Will reopen this issue, it seems like there is a part in the install libhoudini script that alter my device behavior. I don't remember turning on setting `ro.hardware.egl` to `swiftshader` previously and now I notice my Waydroid runs slower. Though, it could be something to do with the fact that I install my Waydroid a year ago.
zahrakarimid commented 2024-12-26 14:45:46 -05:00 (Migrated from github.com)

I'm not sure what happening, but after several attempts in installing and uninstalling libhoudini and restarting waydroid-container, it seems to fix the issue. And now Arm apps start appearing in Play Store. 😕

wow. it is nice.
i have an old g550 lenovo laptop. i instaled waydroid and can't install some apps like khan academy kids. i followed github instructions and installed libhoudini. howver waydroid failed to start. now it is the fourth time i remove and re-install waydroid but nothing changed
i tried to follow your instructions but nothing changed
do you have any recommendation?

> I'm not sure what happening, but after several attempts in installing and uninstalling libhoudini and restarting waydroid-container, it seems to fix the issue. And now Arm apps start appearing in Play Store. 😕 wow. it is nice. i have an old g550 lenovo laptop. i instaled waydroid and can't install some apps like khan academy kids. i followed github instructions and installed libhoudini. howver waydroid failed to start. now it is the fourth time i remove and re-install waydroid but nothing changed i tried to follow your instructions but nothing changed do you have any recommendation?
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wbruno/waydroid_script#157