waydroid_script icon indicating copy to clipboard operation
waydroid_script copied to clipboard

Waydroid glitching after installing libhoudini

Open brainwo opened this issue 1 year ago • 3 comments

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.

brainwo avatar Apr 10 '24 08:04 brainwo

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 avatar Apr 10 '24 09:04 brainwo

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.

brainwo avatar Apr 10 '24 12:04 brainwo

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?

zahrakarimid avatar Dec 26 '24 19:12 zahrakarimid