ryanrudolfoba / SteamOS-Waydroid-Installer

Script to easily install / uninstall Android via Waydroid on the Steam Deck running on SteamOS.
https://www.youtube.com/watch?v=06T-h-jPVx8
306 stars 18 forks source link

Waydroid Steamdeck install error: module missing gbinder #74

Closed mangonebula closed 2 months ago

mangonebula commented 2 months ago

Installing using the instructions on this github. I get a missing gbinder error. I´ve tried installing gbinder with a pip command, but it says that gbinder can´t be found.

Here is the error during installation:


SteamOS Waydroid Installer Script by ryanrudolf
https://github.com/ryanrudolfoba/SteamOS-Waydroid-Installer
Script is running in Desktop Mode.
Checking if kernel is supported.
6.1.52-valve16-1-neptune-61 is supported. Proceed to next step.
Please enter current sudo password:
Checking if the sudo password is correct.
Sudo password is good!
Cloning into '/home/deck/AUR/waydroid/waydroid_script'...
remote: Enumerating objects: 717, done.
remote: Counting objects: 100% (327/327), done.
remote: Compressing objects: 100% (129/129), done.
remote: Total 717 (delta 260), reused 237 (delta 198), pack-reused 390
Receiving objects: 100% (717/717), 21.74 MiB | 9.95 MiB/s, done.
Resolving deltas: 100% (438/438), done.
Casualsnek repo has been successfully cloned!
Warning: The rootfs is already read-write!
Nothing is performed.
==> Appending keys from archlinux.gpg...
==> Appending keys from holo.gpg...
==> Updating trust database...
gpg: next trustdb check due at 2024-06-29
pacman keyring has been initialized!
binder kernel module has been installed!
loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (7) dnsmasq-2.89-1 libgbinder-1.1.35-1 libglibutil-1.0.74-1 lxc-1:5.0.2-1
python-gbinder-1.1.2-1 waydroid-1.4.2-1 wlroots-0.16.2-1

Total Installed Size: 31.91 MiB

:: Proceed with installation? [Y/n]
(7/7) checking keys in keyring [############################] 100%
(7/7) checking package integrity [############################] 100%
(7/7) loading package files [############################] 100%
(7/7) checking for file conflicts [############################] 100%
(7/7) checking available disk space [############################] 100%
:: Processing package changes...
(1/7) installing wlroots [############################] 100%
Optional dependencies for wlroots
xorg-xwayland: Xwayland support [installed]
(2/7) installing dnsmasq [############################] 100%
(3/7) installing lxc [############################] 100%
Optional dependencies for lxc
dnsmasq: lxc-net.service [installed]
lua [installed]
lua-filesystem: lxc-top
lua-alt-getopt: lxc-top
(4/7) installing libglibutil [############################] 100%
(5/7) installing libgbinder [############################] 100%
(6/7) installing python-gbinder [############################] 100%
(7/7) installing waydroid [############################] 100%
Optional dependencies for waydroid
python-pyclip: share clipboard with container
:: Running post-transaction hooks...
(1/7) Creating system user accounts...
(2/7) Reloading system manager configuration...
(3/7) Creating temporary files...
/usr/lib/tmpfiles.d/steamos.conf:6: Duplicate line for path "/root", ignoring.
/usr/lib/tmpfiles.d/steamos.conf:23: Duplicate line for path "/var/empty", ignoring.
/usr/lib/tmpfiles.d/tmp.conf:12: Duplicate line for path "/var/tmp", ignoring.
/usr/lib/tmpfiles.d/var.conf:19: Duplicate line for path "/var/cache", ignoring.
(4/7) Arming ConditionNeedsUpdate...
(5/7) Reloading system bus configuration...
(6/7) Updating icon theme caches...
(7/7) Updating the desktop file MIME type cache...
waydroid and cage has been installed!
ln: failed to create symbolic link '/home/deck/Desktop/Waydroid-Toolbox': File exists
Config file missing. Lets configure waydroid.
Traceback (most recent call last):
File "/usr/bin/waydroid", line 6, in <module>
import tools
File "/usr/lib/waydroid/tools/__init__.py", line 12, in <module>
from . import actions
File "/usr/lib/waydroid/tools/actions/__init__.py", line 3, in <module>
from tools.actions.initializer import init, wait_for_init, remote_init_client
File "/usr/lib/waydroid/tools/actions/initializer.py", line 5, in <module>
from tools import helpers
File "/usr/lib/waydroid/tools/helpers/__init__.py", line 5, in <module>
import tools.helpers.props
File "/usr/lib/waydroid/tools/helpers/props.py", line 8, in <module>
from tools.interfaces import IPlatform
File "/usr/lib/waydroid/tools/interfaces/IPlatform.py", line 1, in <module>
import gbinder
ModuleNotFoundError: No module named 'gbinder'
Waydroid did not initialize correctly. Performing cleanup!
checking dependencies...
:: networkmanager optionally requires dnsmasq: connection sharing

Packages (7) dnsmasq-2.89-1 libgbinder-1.1.35-1 libglibutil-1.0.74-1 lxc-1:5.0.2-1
python-gbinder-1.1.2-1 waydroid-1.4.2-1 wlroots-0.16.2-1

Total Removed Size: 31.91 MiB

:: Do you want to remove these packages? [Y/n]
:: Processing package changes...
(1/7) removing wlroots [############################] 100%
(2/7) removing waydroid [############################] 100%
(3/7) removing lxc [############################] 100%
(4/7) removing dnsmasq [############################] 100%
(5/7) removing python-gbinder [############################] 100%
(6/7) removing libgbinder [############################] 100%
(7/7) removing libglibutil [############################] 100%
:: Running post-transaction hooks...
(1/5) Reloading system manager configuration...
(2/5) Arming ConditionNeedsUpdate...
(3/5) Reloading system bus configuration...
(4/5) Updating icon theme caches...
(5/5) Updating the desktop file MIME type cache...
Cleanup completed! Try running the install script again! Goodbye!
ryanrudolfoba commented 2 months ago

This points to a python issue -

Traceback (most recent call last): File "/usr/bin/waydroid", line 6, in import tools File "/usr/lib/waydroid/tools/init.py", line 12, in from . import actions File "/usr/lib/waydroid/tools/actions/init.py", line 3, in from tools.actions.initializer import init, wait_for_init, remote_init_client File "/usr/lib/waydroid/tools/actions/initializer.py", line 5, in from tools import helpers File "/usr/lib/waydroid/tools/helpers/init.py", line 5, in import tools.helpers.props File "/usr/lib/waydroid/tools/helpers/props.py", line 8, in from tools.interfaces import IPlatform File "/usr/lib/waydroid/tools/interfaces/IPlatform.py", line 1, in import gbinder ModuleNotFoundError: No module named 'gbinder'

Based on the error message this is a broken python on your system. The script doesnt touch python it just uses what is already installed. Most probably you have 3rd party apps / scripts that is interfering with the built-in python that came with SteamOS.

Please check this similar issue reported by another member a few weeks ago and a possible fix - https://github.com/ryanrudolfoba/SteamOS-Waydroid-Installer/issues/42#issuecomment-1947933910

mangonebula commented 2 months ago

Thanks for your message! I didn't mess with python for anything that I can remember. I just installed emulators but I used emudeck.

I tried the advice on that thread but booting the previous os and updating didn't work. I tried to fix the packages with the command sudo pacman -Suy but it didn't change anything. I don't understand the solution that the poster commented in that thread you mentioned. He doesn't describe the steps he took to resolve it.

The only solution I can think of is to reinstall the operating system, but I'd like to avoid wiping out everything. I really want to find a solution to repair python, but I don't know anything about python.

Can anyone comment to send me a solution please? You can get at me on Reddit too: https://www.reddit.com/r/waydroid/comments/1cbx5sa/steamdeck_missing_module_gbinder_error/

mangonebula commented 1 month ago

SOLUTION: I found a solution for anyone out there with this problem. This issue comes from a conflict with Emudeck using the miniconda3 version of linux.

To install waydroid, copy the miniconda3 folder in home/deck to the desktop or any other folder.

Then follow the waydroid install instructions and paste the folder back to it's original location.

ryanrudolfoba commented 1 month ago

SOLUTION: I found a solution for anyone out there with this problem. This issue comes from a conflict with Emudeck using the miniconda3 version of linux.

To install waydroid, copy the miniconda3 folder in home/deck to the desktop or any other folder.

Then follow the waydroid install instructions and paste the folder back to it's original location.

To be sure, what is the output of this commands -

which python whereis python