Waydroid not working correctly

Yeah its strange on cachy, waydroid works fine (with no magisk though) with psi=1 and echo binder_linux | sudo tee /etc/modules-load.d/binder.conf haven't tried seeing if removing those 2 tweaks breaks waydroid, I thought they were needed for all kernel's

on the zen kernel and the tkg-bmq (which I think also has binder) I can't get it to work no matter what I try
it just refuses to load with either the no such file or directory error or service manager has died

1 Like

These two tweaks are only supposed to be needed for kernels with binder drivers as kernel modules, not inbuilt.

1 Like

Yup, no tweaks needed for me. I just had to follow the steps to load the binder modules at /dev/binder at startup and that was it.

1 Like

This one?

Yeah that one.

1 Like

If Zen kernel doesn't work with these

Try doing step 4 of the guide:

zen kernel still gives (after a reboot)

[gbinder] ERROR: Can't open /dev/binder: No such file or directory
[19:47:48] Failed to add presence handler: None

when following the guide

cat /etc/fstab
File: /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>                          <mount point>  <type>  <options>  <dump>  <pass>
UUID=4AC6-7B21                            /boot/efi      vfat    umask=0077 0 2
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /              btrfs   subvol=/@,defaults,noatime,compress=zstd,
discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /home          btrfs   subvol=/@home,defaults,noatime,compress=z
std,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /root          btrfs   subvol=/@root,defaults,noatime,compress=z
std,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /srv           btrfs   subvol=/@srv,defaults,noatime,compress=zs
td,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /var/cache     btrfs   subvol=/@cache,defaults,noatime,compress=
zstd,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /var/log       btrfs   subvol=/@log,defaults,noatime,compress=zs
td,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /var/tmp       btrfs   subvol=/@tmp,defaults,noatime,compress=zs
td,discard=async,ssd 0 0
tmpfs                                     /tmp           tmpfs   defaults,noatime,mode=1777 0 0
UUID=d6a92575-7181-4506-80d1-84a9594f90e8 /mnt/GAMES     auto    nosuid,nodev,nofail,x-gvfs-show 0 0
none                         /dev/binderfs binder   nofail  0      0

 ╭─zany130@Garuda in ~ via  v3.11.3 took 7ms
 ╰─λ cat /etc/tmpfiles.d/waydroid.conf
File: /etc/tmpfiles.d/waydroid.conf
d! /dev/binderfs 0755 root root

 ╭─zany130@Garuda in ~ via  v3.11.3 took 6ms
 ╰─λ cat /etc/modules-load.d/waydroid.conf
File: /etc/modules-load.d/waydroid.conf
binder_linux

It should be binder.

Edit:
I too am not able to run Waydroid with Zen :thinking:

@NaN, any hint?

Lemme check, I haven't used waydroid in a while. Currently I am traveling in a train so it would take a while for me to respond.

1 Like

No worries, please you take your time.

@zany130 and @Austin I have just updated my system and also reinstalled waydroid. I am facing no issues using waydroid in linux-zen

╰─λ cat /etc/modules-load.d/waydroid.conf
File: /etc/modules-load.d/waydroid.conf
binder

╭─siddharth@siddharth in ~ took 29ms
󰂃66%
╰─λ cat /etc/tmpfiles.d/waydroid.conf
File: /etc/tmpfiles.d/waydroid.conf
d! /dev/binderfs 0755 root root

Redacted /etc/fstab

none    /dev/binderfs   binder  nofail  0   0

The only reason for the failure erroneous use of binder_linux in /etc/modules-load.d/waydroid.conf instead of binder.

Oh I also do not use the psi=1 kernel parameter

5 Likes

for me it still gives this on zen

(didn't try a fresh install maybe that would work but then strange its working on cachy and xanmod)

[gbinder] ERROR: Can't open /dev/binder: No such file or directory
[20:06:57] Failed to add presence handler: None
File: /etc/tmpfiles.d/waydroid.conf
d! /dev/binderfs 0755 root root

File: /etc/modules-load.d/waydroid.conf
binder

and

File: /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>                          <mount point>  <type>  <options>  <dump>  <pass>
UUID=4AC6-7B21                            /boot/efi      vfat    umask=0077 0 2
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /              btrfs   subvol=/@,defaults,noatime,compress=zstd,
discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /home          btrfs   subvol=/@home,defaults,noatime,compress=z
std,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /root          btrfs   subvol=/@root,defaults,noatime,compress=z
std,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /srv           btrfs   subvol=/@srv,defaults,noatime,compress=zs
td,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /var/cache     btrfs   subvol=/@cache,defaults,noatime,compress=
zstd,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /var/log       btrfs   subvol=/@log,defaults,noatime,compress=zs
td,discard=async,ssd 0 0
UUID=53e270ad-dfd5-4874-a125-69d21ada6b8d /var/tmp       btrfs   subvol=/@tmp,defaults,noatime,compress=zs
td,discard=async,ssd 0 0
tmpfs                                     /tmp           tmpfs   defaults,noatime,mode=1777 0 0
UUID=d6a92575-7181-4506-80d1-84a9594f90e8 /mnt/GAMES     auto    nosuid,nodev,nofail,x-gvfs-show 0 0
none                         /dev/binderfs binder   nofail  0      0

removed all other tweaks like psi=1

File: /boot/refind_linux.conf
"Boot with standard options"  "amd_pstate=active BOOT_IMAGE=/@/boot/vmlinuz-linux-%v root=UUID=53e270ad-df
d5-4874-a125-69d21ada6b8d rw rootflags=subvol=@ rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel
=3 sysrq_always_enabled=1 amdgpu.ppfeaturemask=0xffffffff nowatchdog nmi_watchdog=0 drm.edid_firmware=HDMI
-A-1:edid/LG-C2.bin"
"Boot to single-user mode"    "amd_pstate=active BOOT_IMAGE=/@/boot/vmlinuz-linux-%v root=UUID=53e270ad-df
d5-4874-a125-69d21ada6b8d rw rootflags=subvol=@ rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel
=3 sysrq_always_enabled=1 amdgpu.ppfeaturemask=0xffffffff nowatchdog nmi_watchdog=0 single"
"Boot with minimal options"   "ro root=/dev/nvme0n1p2"
2 Likes

I, too am having the same issue as @zany130.

Hmm. I tried reinstalling python-gbinder & libgbinder(followed by a reboot), still, the issue persists.
I don’t know if a Waydroid reinstall should work?
Let us know if someone has the same issue on a fresh Waydroid install.
I would not want to reinstall Waydroid cause I have setup many apps that I use.
But I will do it if nobody can.

1 Like

I did technically do a fresh install since I removed waydroid with

sudo pacman -Rns waydroid
sudo paccache -ruk0
sudo rm -r (find / -name "*waydroid*" -not -path '/.snapshots/*' 2> /dev/null)

which removed all the files related to waydroid including the ones under modules-load.d and tmpfiles.d

Then proceeded to reinstall waydroid on an up to date system.

3 Likes

I see.
You seem to be good at bash-scripting.

Let’s see if anybody else is able to replicate you.

1 Like

Since the error generated is can't open /dev/binder how about renaming in

tmpfiles.d

and fstab

/dev/binderfs to /dev/binder

I mean it's just a thought.

1 Like

Binder driver is first mounted at /dev/binderfs, then symlinks are created for the contents inside the /dev/binderfs directory to /dev directory.

/dev/binder -> /dev/binderfs/binder
/dev/binder-control -> /dev/binderfs/binder-control
/dev/features -> /dev/binderfs/features
/dev/hwbinder -> /dev/binderfs/hwbinder
/dev/vndbinder -> /dev/binderfs/vndbinder

This is how it works with Cachyos & Xanmod kernels.

@NaN, sorry to bother you again and again.

Could you share which all symlinks like these you have with Zen kernel?

No problem, here

lrwxrwxrwx       22 root      21 Jul 21:22  features -> /dev/binderfs/features
lrwxrwxrwx       26 root      21 Jul 21:22  anbox-binder -> /dev/binderfs/anbox-binder
lrwxrwxrwx       28 root      21 Jul 21:22  anbox-hwbinder -> /dev/binderfs/anbox-hwbinder
lrwxrwxrwx       29 root      21 Jul 21:22  anbox-vndbinder -> /dev/binderfs/anbox-vndbinder
lrwxrwxrwx       28 root      21 Jul 21:22  binder-control -> /dev/binderfs/binder-control

and

ls /dev/binderfs
drwxr-xr-x     - root 21 Jul 21:22  features
crw-rw-rw- 239,2 root 21 Jul 21:22  anbox-binder
crw-rw-rw- 239,4 root 21 Jul 21:22  anbox-hwbinder
crw-rw-rw- 239,3 root 21 Jul 21:22  anbox-vndbinder
crw------- 239,1 root 21 Jul 21:22  binder-control

Oh something I also must mention,

sudo waydroid init -s GAPPS -f

I have been using this command to initialize my waydroid container so far so if this is a image issue maybe this would solve it.

PS: I just reinstalled waydroid again a 3rd time and it seems that

crw-rw-rw- 239,2 root 21 Jul 21:22  anbox-binder
crw-rw-rw- 239,4 root 21 Jul 21:22  anbox-hwbinder
crw-rw-rw- 239,3 root 21 Jul 21:22  anbox-vndbinder

these modules and thier symlinks is created by waydroid itself since without waydroid my

/dev/binderfs

only has these two things in it

drwxr-xr-x     - root 21 Jul 21:22  features
crw------- 239,1 root 21 Jul 21:22  binder-control

Yup checked it again and enabling/disabling the waydroid-container service adds and removes these three modules along with ALL the symlinks for all the modules. Not sure if this is the default behavior or not.

1 Like

Just to confirm, when Waydroid is running, which of these modules are there in the directory?

ls /dev/binderfs
features
anbox-binder
anbox-hwbinder
anbox-vndbinder
binder-control