GithubHelp home page GithubHelp logo

ryanrudolfoba / steamos-waydroid-installer Goto Github PK

View Code? Open in Web Editor NEW
342.0 10.0 18.0 9.6 MB

Script to easily install / uninstall Android via Waydroid on the Steam Deck running on SteamOS.

Home Page: https://www.youtube.com/watch?v=06T-h-jPVx8

Shell 100.00%
android steamdeck steamos waydroid

steamos-waydroid-installer's People

Contributors

derpychap avatar pokepunch avatar ryanrudolfoba avatar silentexception avatar wacomalt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

steamos-waydroid-installer's Issues

Cannot install, missing config

so, my issue is relatively straightforward. I cannot get the script to install because at a point after the packages have been installed the installer errors out by saying that it cannot find the configuration file. after Double checking, I have verified that the Clone repo did work properly and that all the files in the GitHub repo are present and accounted for. I could probably install this myself manually, which is what I intended on doing before I actually found this script. It seemed at the time like it would be a much easier way to go about installing Waydroid. I don't think it could be a configuration issue on my end however I do have brew and the nix package manager installed on my deck but that hasn't caused issues anywhere else. This is especially true considering that your script uses the AUR instead. If you have any ideas, let me know and I'll be more than happy to test for you.

Thanks!

Wireless debugging issue in waydroid steamos

Hi! i am sorry for asking this, but do you know how to solve "wireless debugging" in developer mode ? i tried to set the toogle on but it's said "connect to your wifi" i tried what the instruction said but the the wifi seems not working. How to resolve this ?

[SteanOS 3.5.7] Controller Not Support

Hi @ryanrudolfoba, you do the great job, thank you first.

I followed your tutorial on YouTube and executed your script on my Steam Deck[LCD version]. Everything went smoothly. However, after entering the Android system, the controller test program couldn't detect the Xbox 360 controller. Is this a known issue? How can I resolve this problem? Looking forward to your reply.

Error installling in fresh SteamOS 3.5.7

Installer fails with the following:

Cloning into 'python-gbinder'...
done.
Switched to a new branch 'makepkg'
==> Starting prepare()...
==> Starting pkgver()...
==> Starting build()...
Traceback (most recent call last):
  File "/home/deck/AUR/waydroid/python-gbinder/src/python-gbinder/setup.py", line 27, in <module>
    from Cython.Build import cythonize
ModuleNotFoundError: No module named 'Cython'
==> ERROR: A failure occurred in build().
    Aborting...
Error building and installing waydroid. good bye!

Not sure if it's caused by some recent update on Arch's repos, but it's not looking good - the uninstallation instructions don't work since the uninstall script was not created. It should be possible to easily revert everything (including removing any Arch packages that do not come with Steam OS and were installed by the script) in case the installation fails like this.

Touch not working in games on steam deck

Hi, as the title says when i click in a game (though not in the android home menu) the click doesn't register, I've heard something called fake touch can rectify this but idk how to install it - please help

cp: cannot stat 'binder/6.1.52-valve9-1-neptune-61/binder_linux.ko.zst': No such file or directory

I'm on SteamOS 3.5.7 LCD steam deck, the full log is:

SteamOS Waydroid Installer Script by ryanrudolf
https://github.com/ryanrudolfoba/SteamOS-Waydroid-Installer
Checking if kernel is supported.
6.1.52-valve9-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!
[sudo] password for deck: 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 | 2.81 MiB/s, done.
Resolving deltas: 100% (438/438), done.
==> Appending keys from archlinux.gpg...
==> Appending keys from holo.gpg...
==> Updating trust database...
gpg: next trustdb check due at 2024-04-10
pacman keyring has been initialized!
cp: cannot stat 'binder/6.1.52-valve9-1-neptune-61/binder_linux.ko.zst': No such file or directory
Error installing binder kernel module. Goodbye!
rm: cannot remove '/lib/modules/6.1.52-valve9-1-neptune-61/binder_linux.ko.zst': No such file or directory
(deck@steamdeck steamos-waydroid-installer)$ 

2 things. Pyclip and external monitor.

  1. Something about pyclip not being there. I got this message on the console. Can't remember where.
  2. Like the nested desktop issue I posted into the steam community forum, trying to use this on an external monitor and the pointe cannot get below a certain point in the external screen to press any of the bottom three icons. I guess it's a more general issue since it seems to happen on both this and the nested desktop. It's a pain cos I have to stop the app, unplug my monitor, start the app, and plug my monitor into the docking station again.
    The normal switch to desktop has no issues with the mouse pointer going down far enough.
    I can launch waydroid inside the normal "Switch to desktop". Of course, it opens in a window and I can get to the three bottom buttons in that window.
    However if I try to expand that window, I see your background pic but the android display itself does not expand. Unfortunately every keypress on my Bluetooth keyboard registers as 2 presses inside waydroid on this normal desktop, and the steam virtual keyboard doesn't register at all, and core keyboard won't come up at all for me after I installed it. The android onscreen keyboard however does work.

The latest linux-neptune-61-headers package is newer than the kernel used in 3.5.7

The latest version of linux-neptune-61-headers is targeting 6.1.52.valve10-1 while the kernel version used in 3.5.7 is 6.1.52-valve9-1. If the user updated the package database, it will download the incorrect version of the headers and it won't build the binder module. The headers should be downloaded directly with pacman -U instead -S

Waydroid download

Hi
The download part of the install script where it gets Waydroid from Sourceforge is taking way way too long, I have downloaded the image manually from that link instead
Where should I put the downloaded zip file so the script can continue?

Add option to reduce audio latency using scrcpy

Waydroid appears to have a significant amount of audio latency, to the point where rhythm games become impossible to play unless you adjust the audio latency in the game's settings.

By using scrcpy, you can significantly reduce the amount of audio latency.

Using the game Cytoid as an example, here's the amount of measured end-to-end latency in the game's calibration tool when using Waydroid's audio playback:

15324628_20240204220644_1

When running scrcpy --audio-buffer 30 --audio-codec=raw --no-video-playback --tcpip=[WAYDROID_IP_ADDRESS]:5555 via SSH I measured the following latency:

15324628_20240204221513_1

For a rough idea of how this compares to an actual Android device, I ran the same test on my Sony Xperia 1 II.

Screenshot_20240204-222604

This results in roughly half the end-to-end audio latency of Waydroid's native audio output, and brings things much closer to an actual Android device. I tried lower values for --audio-buffer, but it resulted in some noticeable popping in the audio. I haven't noticed any issues in more demanding games that I have tested, but despite that it might be best to make such a feature default off just in case.

Errors during installation

I get these errors 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-valve9-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 to "/home/deck/AUR/waydroid/waydroid_script"...
remote: Enumerating objects: 717, done.
remote: Counting objects: 100% (327/327), done.
remote: Compressing objects: 100% (128/128), done.
remote: Total 717 (delta 259), reused 238 (delta 199), pack-reused 390
Object download: 100% (717/717), 21.74 MiB | 788.00 KiB/s, done.
Delta resolution: 100% (437/437), done.
Warning: The rootfs is already read-write!
          Nothing is performed.
==> Adding keys from archlinux.gpg...
==> Adding keys from holo.gpg...
==> Updating trusted database...
gpg: the next database check will take place on 2024-04-10
pacman keyring has been initialized!
cp: cannot create regular file '/lib/modules/6.1.52-valve9-1-neptune-61/binder_linux.ko.zst': Read-only file system
Error installing binder kernel module. Goodbye!
rm: cannot remove '/lib/modules/6.1.52-valve9-1-neptune-61/binder_linux.ko.zst': No such file or directory

Unsupported file type when adding shortcuts

Installation has been working wonderfully, however the final step (adding the shortcuts) seemingly failed. Adding them to Game Mode manually does seem to work, although I couldn't find steamos-nested-desktop.sh

OS Version: 3.5.7
OS Build: 20231122.1

INFO: widevine installation finished
Casualsnek script done.
Adding shortcuts to game mode. Please wait.
Unsupported file type
Android_Waydroid_Cage.sh shortcut has been added to game mode.
Unsupported file type
Android_Waydroid_Weston.sh shortcut has been added to game mode.
Unsupported file type
steamos-nested-desktop shortcut has been added to game mode.
Waydroid has been successfully installed!

Could not resolve the "weston" dependency "colord"

Using the latest installer script, I am running into an issue where the package "colord" could not be resolved properly. It results into weston not properly setup/upgraded, which then makes the installation fail. Following is the few lines of warnings and ultimately error that is logged.

warning: database file for 'jupiter-rel' does not exist (use '-Sy' to download)
warning: database file for 'holo-rel' does not exist (use '-Sy' to download)
warning: database file for 'core-rel' does not exist (use '-Sy' to download)
warning: database file for 'extra-rel' does not exist (use '-Sy' to download)
warning: database file for 'community-rel' does not exist (use '-Sy' to download)
warning: database file for 'multilib-rel' does not exist (use '-Sy' to download)
loading packages...
resolving dependencies...
warning: cannot resolve "colord", a dependency of "weston"
:: The following package cannot be upgraded due to unresolvable dependencies:
      weston

:: Do you want to skip the above package for this upgrade? [y/N] 
error: failed to prepare transaction (could not satisfy dependencies)
:: unable to satisfy dependency 'colord' required by weston
Error installing waydroid and cage. Goodbye!

I am on StetamOS stable.

Install Issues

Hello! I am having install issues for your script around the sudo password on my Steam Deck. I have attempted to reset the password multiple times through the user settings and it still will not let me past that prompt. I’ve tried restarting, changing the password to a four letter all lower case option, etc. to no avail. It was recommended that I open an issue here from the post I recently
IMG_3841
IMG_3842
Uploading IMG_3841.jpeg…
made on Reddit. I appreciate any and all help with this issue! Thank you!

Game tests

Tried a few games, all from Play Store

Godville - Works
Clicker Heroes - Works
Pokemon Go - Asks for date of birth, but UI is not interactable so can't proceed (probably won't work anyway due to Safetynet, and lack of GPS)
Pokemon TCG Live - Numerous Wayland bugs during the first run wizard that are difficult to work around, and random crashes that reset everything Didn't have the patience to see if it's possible to get past the login screens.*
Pokemon Masters Ex - Errors and loops (99.9% sure this is its Safetynet check)

    • Letterboxed, but software keyboard does not properly work in letterbox mode making it unusable. Hardware keyboard keys all are interpreted as double presses. Some message boxes in the app open partly off screen.

Running ARM Applications on SteamOS 3.5.6

Hi, i really like you project because it is easy to follow and help me successfully install waydroid. However, i found that i cannot download some game in Google Play. After some check i found casualsnek script, and yes in the end i realize you already tested and write on the README.md.

In my point of view, i think the problem is SteamOS 3.5.6 in someway mounted the /var/lib, so i try to change /var/lib/waydroid to /usr/local/games/waydroid in your install script but DON'T try it because more problem(some path still cannot change in waydroid arg.work).

I guess i can still enjoy the waydroid with only x86. After all, appreciate for all you work. Thank you.

Installing Galaxy Store and maybe changing device Model

Hi, from every other way that I found on the internet, I only had succes installing waydroid with your video and instructions, since I don't understand linux and programing enought to make things out alone. With that said, I am actually interested in installing Galaxy Store, since Play Store doesn't have good discounts at my contry, but Galaxy Sotre does. I got my hands on the app, but it doesn't work on this setup, guess it's because of the Pixel 5's fingerprint. How could I install this app or change the device model so it would be compatible with galaxy store apps? (I won't pretend to use netflix, so Pixel 5 isn't necesssary).

Avoid disabling SteamOS readonly by migrating Waydroid to using Distrobox / Podman

https://github.com/89luca89/distrobox/blob/main/docs/useful_tips.md#using-waydroid-inside-a-distrobox

Distrobox and Podman are included in steamOS 3.5.

With distrobox-host-exec, we should be able to have a rootfull container set up and maintain the install that could auto rebuild the binder modules when it detects a new kernel.

We could build with distrobox ephemeral so it temporary makes a distrobox container that is automatically destroyed once the build is done and modules are exported.

We can use Systemd if we need to overlay any files on the system with a overlayfs like using systemd-sysext

ModuleNotFoundError: No module named 'dbus'

Help.
I have already installed some stuff using the Konsole, if that helps.
`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-valve14-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!
[sudo] password for deck: Cloning into '/home/deck/AUR/waydroid/waydroid_script'...
remote: Enumerating objects: 717, done.
remote: Counting objects: 100% (327/327), done.
remote: Compressing objects: 100% (128/128), done.
remote: Total 717 (delta 259), reused 238 (delta 199), pack-reused 390
Receiving objects: 100% (717/717), 21.74 MiB | 4.32 MiB/s, done.
Resolving deltas: 100% (437/437), done.
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-04-10
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!
Config file missing. Lets configure waydroid.
Traceback (most recent call last):
File "/usr/bin/waydroid", line 6, in
import tools
File "/usr/lib/waydroid/tools/init.py", line 8, in
import dbus.mainloop.glib
ModuleNotFoundError: No module named 'dbus'
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!
(deck@steamdeck steamos-waydroid-installer)$ ./steamos-waydroid-installer.sh
`

PUBG Mobile crashes during launch

Set up went smooth but I can’t get PUBG to run - I thought arm translation was in so I thought it would work but it crashes during the loading screen after downloading resources. Any one have any luck?

Pacman dependancies already installed - counts as an error.

Full konsole output
steam OS 3.5.7

`SteamOS Waydroid Installer Script by ryanrudolf
https://github.com/ryanrudolfoba/SteamOS-Waydroid-Installer
VERSION_ID=3.5.7
SteamOS 3.5.x detected. Proceed with the script.
Please enter current sudo password:
Checking if the sudo password is correct.
Sudo password is good!
So far so good!
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 2023-12-18
Pacman has been initialized!
Cloning into '/home/deck/AUR/waydroid/waydroid'...
remote: Enumerating objects: 93, done.
remote: Counting objects: 100% (93/93), done.
remote: Compressing objects: 100% (76/76), done.
remote: Total 93 (delta 16), reused 93 (delta 16), pack-reused 0
Receiving objects: 100% (93/93), 23.22 KiB | 204.00 KiB/s, done.
Resolving deltas: 100% (16/16), done.
Cloning into '/home/deck/AUR/waydroid/binder_linux-dkms'...
remote: Enumerating objects: 54, done.
remote: Counting objects: 100% (54/54), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 54 (delta 11), reused 54 (delta 11), pack-reused 0
Receiving objects: 100% (54/54), 14.54 KiB | 7.27 MiB/s, done.
Resolving deltas: 100% (11/11), done.
Cloning into '/home/deck/AUR/waydroid/python-gbinder'...
remote: Enumerating objects: 39, done.
remote: Counting objects: 100% (39/39), done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 39 (delta 8), reused 39 (delta 8), pack-reused 0
Receiving objects: 100% (39/39), 6.71 KiB | 6.71 MiB/s, done.
Resolving deltas: 100% (8/8), done.
Cloning into '/home/deck/AUR/waydroid/libgbinder'...
remote: Enumerating objects: 56, done.
remote: Counting objects: 100% (56/56), done.
remote: Compressing objects: 100% (35/35), done.
remote: Total 56 (delta 21), reused 56 (delta 21), pack-reused 0
Receiving objects: 100% (56/56), 7.22 KiB | 7.22 MiB/s, done.
Resolving deltas: 100% (21/21), done.
Cloning into '/home/deck/AUR/waydroid/libglibutil'...
remote: Enumerating objects: 48, done.
remote: Counting objects: 100% (48/48), done.
remote: Compressing objects: 100% (33/33), done.
remote: Total 48 (delta 15), reused 48 (delta 15), pack-reused 0
Receiving objects: 100% (48/48), 6.66 KiB | 6.66 MiB/s, done.
Resolving deltas: 100% (15/15), done.
Cloning into '/home/deck/AUR/waydroid/waydroid_script'...
remote: Enumerating objects: 670, done.
remote: Counting objects: 100% (316/316), done.
remote: Compressing objects: 100% (99/99), done.
remote: Total 670 (delta 263), reused 237 (delta 217), pack-reused 354
Receiving objects: 100% (670/670), 21.72 MiB | 8.39 MiB/s, done.
Resolving deltas: 100% (411/411), done.
No errors encountered downloading from AUR.
:: There are 26 members in group base-devel:
:: Repository holo-rel

  1. archlinux-keyring
    :: Repository core-rel
  2. autoconf 3) automake 4) binutils 5) bison 6) debugedit 7) fakeroot 8) file
  3. findutils 10) flex 11) gawk 12) gcc 13) gettext 14) grep 15) groff 16) gzip
  4. libtool 18) m4 19) make 20) pacman 21) patch 22) pkgconf 23) sed 24) sudo
  5. texinfo 26) which

Enter a selection (default=all):
warning: downgrading package archlinux-keyring (20230504-1 => 20221123-1.1)
warning: downgrading package binutils (2.40-6 => 2.39-3)
warning: downgrading package file (5.44-3 => 5.43-1)
warning: downgrading package findutils (4.9.0-3 => 4.9.0-1)
warning: downgrading package gawk (5.2.2-1 => 5.2.0-3)
warning: downgrading package gettext (0.21.1-5 => 0.21.1-1)
warning: downgrading package grep (3.11-1 => 3.8-2)
warning: downgrading package gzip (1.12-2 => 1.12-1)
warning: downgrading package libtool (2.4.7+4+g1ec8fa28-3 => 2.4.7-5)
warning: downgrading package pacman (6.0.2-7 => 6.0.1-8)
warning: downgrading package sed (4.9-3 => 4.8-1)
warning: downgrading package sudo (1.9.13.p3-1 => 1.9.11.p3-1)
warning: downgrading package which (2.21-6 => 2.21-5)
warning: downgrading package glibc (2.37-3.2 => 2.36-6)
warning: downgrading package glib2 (2.76.3-1 => 2.74.0-2)
warning: downgrading package linux-api-headers (6.3-1 => 5.18.15-1)
error: target not found: linux-neptune-61-headers
warning: downgrading package python (3.11.3-2 => 3.10.8-2)
Error installing pacman dependencies. good bye!
(deck@steamdeck steamos-waydroid-installer)$
`

Wifi check issues

I noticed that some applications, despite having access to the internet, do not work because they simply check the waydroid's wifi and say that it is turned off, as in most multiplayer games and chinatown wars, which does not connect to the rockstar account, some way of implementing fake wifi in the future?

Apps freeze and crash after awhile

I'm getting an odd issue where after an app has been open for an extended period of time, it freezes up and must be manually exited. Along with this, when that same app is re-opened it will simply freeze on the splashscreen and proceed to hang/freeze until it properly crashes. The only way to fix this is to restart waydroid completely. However even after doing so, the problem will always crop up again.

I've done a fresh install of waydroid twice now, but sadly to no avail.

Read-only file system when install

Screenshot_20240226_192550

Tried few times but no luck
cp: cannot create regular file '/lib/modules/6.1.52-valve9-1-neptune-61/binder_linux.ko.zst': Read-only file system

no module named dbus

chmod: cannot operate on dangling symlink '/dev/anbox-binder'
amdgpu: amdgpu_cs_ctx_create2 failed. (-13)
Traceback (most recent call last):
File "/usr/bin/waydroid", line 6, in
import tools
File "/usr/lib/waydroid/tools/init.py", line 8, in
import dbus.mainloop.glib
ModuleNotFoundError: No module named 'dbus'

I also saw this during install.

SteamOS 3.5.7 [6.1.52-valve9-1-neptune-61]

Good day! Several errors occur during installation on 3.5.7:

  1. Executing waydroid session start & results in :
    chmod: cannot operate on dangling symlink '/dev/anbox-binder'

  2. Subsequent execution of cd ~/AUR/waydroid/waydroid_script
    sudo venv/bin/python 3 main.py certified results in the error "waydroid is not initialized, run way android init"

  3. Executing waydroid init results in:

[23:56:57] Failed to load binder driver
[23:56:57] modprobe: FATAL: Module binder_linux not found in directory /lib/modules/6.1.52-valve9-1-neptune-61
[23:56:57] ERROR: Binder node "binder" for waydroid not found
[23:56:57] See also: https://github.com/waydroid
Run 'waydroid log' for details.

ERROR: Downloaded system image hash doesn't match

I'm getting an error while running the install script. I think these are the relevant lines.

Config file missing. Lets configure waydroid.
[19:35:15] Downloading https://sourceforge.net/projects/waydroid/files/images/system/lineage/waydroid_x86_64/lineage-18.1-20240224-GAPPS-waydroid_x86_64-system.zip/download
[Downloading]   9.24 MB/858.64 MB       0.99 kbps(approx.)[19:46:23] Validating system image
[19:46:23] ERROR: Downloaded system image hash doesn't match, expected: 9ac5727051c543b0eca80e2318e45ebe1894a0f43025397fcc99832c03ff7678
[19:46:23] See also: <https://github.com/waydroid>
 Run 'waydroid log' for details.
Waydroid did not initialize correctly. Performing cleanup!

I followed the guide as normal. Repo's already added prior, and I copy-pasted the second commands. I've also tried running those commands again and the results are the same.

Running 'waydroid log' returns a 'command not found.
I'm on the most recent SteamOS version 3.5.17 build 20240228.2 on an LCD model.

Warning: database file for 'xy' does not exist (use '-Sy' to download)

SteamOS Waydroid Installer Script by ryanrudolf
https://github.com/ryanrudolfoba/SteamOS-Waydroid-Installer
VERSION_ID=3.5.7
SteamOS 3.5.x detected. Proceed with the script.
Please enter current sudo password:
Checking if the sudo password is correct.
Sudo password is good!
So far so good!
==> Appending keys from archlinux.gpg...
==> Appending keys from holo.gpg...
==> Updating trust database...
gpg: next trustdb check due at 2023-12-18
Pacman has been initialized!
Cloning into '/home/deck/AUR/waydroid/waydroid'...
remote: Enumerating objects: 93, done.
remote: Counting objects: 100% (93/93), done.
remote: Compressing objects: 100% (76/76), done.
remote: Total 93 (delta 16), reused 93 (delta 16), pack-reused 0
Receiving objects: 100% (93/93), 23.22 KiB | 7.74 MiB/s, done.
Resolving deltas: 100% (16/16), done.
Cloning into '/home/deck/AUR/waydroid/binder_linux-dkms'...
remote: Enumerating objects: 54, done.
remote: Counting objects: 100% (54/54), done.
remote: Compressing objects: 100% (41/41), done.
remote: Total 54 (delta 11), reused 54 (delta 11), pack-reused 0
Receiving objects: 100% (54/54), 14.54 KiB | 7.27 MiB/s, done.
Resolving deltas: 100% (11/11), done.
Cloning into '/home/deck/AUR/waydroid/python-gbinder'...
remote: Enumerating objects: 39, done.
remote: Counting objects: 100% (39/39), done.
remote: Compressing objects: 100% (31/31), done.
remote: Total 39 (delta 8), reused 39 (delta 8), pack-reused 0
Receiving objects: 100% (39/39), 6.71 KiB | 6.71 MiB/s, done.
Resolving deltas: 100% (8/8), done.
Cloning into '/home/deck/AUR/waydroid/libgbinder'...
remote: Enumerating objects: 56, done.
remote: Counting objects: 100% (56/56), done.
remote: Compressing objects: 100% (35/35), done.
remote: Total 56 (delta 21), reused 56 (delta 21), pack-reused 0
Receiving objects: 100% (56/56), 7.22 KiB | 7.22 MiB/s, done.
Resolving deltas: 100% (21/21), done.
Cloning into '/home/deck/AUR/waydroid/libglibutil'...
remote: Enumerating objects: 48, done.
remote: Counting objects: 100% (48/48), done.
remote: Compressing objects: 100% (33/33), done.
remote: Total 48 (delta 15), reused 48 (delta 15), pack-reused 0
Receiving objects: 100% (48/48), 6.66 KiB | 6.66 MiB/s, done.
Resolving deltas: 100% (15/15), done.
Cloning into '/home/deck/AUR/waydroid/waydroid_script'...
remote: Enumerating objects: 670, done.
remote: Counting objects: 100% (316/316), done.
remote: Compressing objects: 100% (99/99), done.
remote: Total 670 (delta 263), reused 237 (delta 217), pack-reused 354
Receiving objects: 100% (670/670), 21.72 MiB | 9.35 MiB/s, done.
Resolving deltas: 100% (411/411), done.
No errors encountered downloading from AUR.
warning: database file for 'jupiter-rel' does not exist (use '-Sy' to download)
warning: database file for 'holo-rel' does not exist (use '-Sy' to download)
warning: database file for 'core-rel' does not exist (use '-Sy' to download)
warning: database file for 'extra-rel' does not exist (use '-Sy' to download)
warning: database file for 'community-rel' does not exist (use '-Sy' to download)
warning: database file for 'multilib-rel' does not exist (use '-Sy' to download)
warning: database file for 'rumpowered' does not exist (use '-Sy' to download)
warning: database file for 'jupiter-staging' does not exist (use '-Sy' to download)
warning: database file for 'holo-staging' does not exist (use '-Sy' to download)
error: target not found: fakeroot
error: target not found: base-devel
error: target not found: glibc
error: target not found: glib2
error: target not found: linux-api-headers
error: target not found: linux-neptune-61-headers
error: target not found: python3
error: target not found: lxc
error: target not found: dnsmasq
error: target not found: weston
Error installing pacman dependencies. good bye!

Bluetooth mouse buttons register on screen but nothing

Bluetooth mouse buttons can be seen registering on screen as being pressed but nothing happens when clicked.
Seems to only be when I re-plug ext monitor in again to fix the issue in last fault posting.
Have to restart waydroid to get mouse to work again, but then the mouse won't move to bottom of screen again.
It looks like I can only use this on the deck display.
Kinda strange that the mouse works perfectly if I press the steam button and wiggle the pointer around in there.

Install script crashes and burns if run over SSH, reports success anyway

The most annoying part is it reports it completed successfully, however no shortcuts have actually been added to game mode, and it finished much quicker than when I later tried it through Konsole so I suspect Android was never actually downloaded and installed either.

I ran the uninstall script which similarly had a ton of error messages, though I didn't capture that output as I did it on the Deck itself.

Ran the install script via Konsole on the Deck and that worked much better.

Would be nice if the install script worked over SSH, if possible.

At least the install script should do minimal error checking and bail with cleanup if something goes wrong, and never report success incorrectly. The current behavior is confusing and misleading.

SteamOS Waydroid Installer Script by ryanrudolf
https://github.com/ryanrudolfoba/SteamOS-Waydroid-Installer
Checking if kernel is supported.
6.1.52-valve9-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 | 1.25 MiB/s, done.
Resolving deltas: 100% (438/438), done.
Warning: The rootfs is already read-write!
         Nothing is performed.
==> Appending keys from archlinux.gpg...
==> Appending keys from holo.gpg...
==> Locally signing trusted keys in keyring...
  -> Locally signed 10 keys.
==> Importing owner trust values...
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: inserting ownertrust of 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
==> Disabling revoked keys in keyring...
  -> Disabled 33 keys.
==> Updating trust database...
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:  11  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:  11  signed:  80  trust: 1-, 0q, 0n, 10m, 0f, 0u
gpg: depth: 2  valid:  58  signed:  23  trust: 58-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2024-04-10
pacman keyring has been initialized!
binder kernel module has been installed!
loading packages...
warning: wlroots-0.16.2-1 is up to date -- reinstalling
warning: dnsmasq-2.89-1 is up to date -- reinstalling
warning: lxc-1:5.0.2-1 is up to date -- reinstalling
warning: libglibutil-1.0.74-1 is up to date -- reinstalling
warning: libgbinder-1.1.35-1 is up to date -- reinstalling
warning: python-gbinder-1.1.2-1 is up to date -- reinstalling
warning: waydroid-1.4.2-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Packages (9) colord-1.4.6-1  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  weston-12.0.1-1  wlroots-0.16.2-1

Total Download Size:    1.72 MiB
Total Installed Size:  43.88 MiB
Net Upgrade Size:      11.97 MiB

:: Proceed with installation? [Y/n]
:: Retrieving packages...
 colord-1.4.6-1-x86_64                      1757.1 KiB  1361 KiB/s 00:01 [########################################] 100%(9/9) checking keys in keyring                                           [########################################] 100%
(8/9) checking package integrity                                         [########################################] 100%
(8/9) loading package files                                              [########################################] 100%
(9/9) checking for file conflicts                                        [########################################] 100%
(9/9) checking available disk space                                      [########################################] 100%
:: Processing package changes...
(1/9) reinstalling wlroots                                               [########################################] 100%
(2/9) reinstalling dnsmasq                                               [########################################] 100%
(3/9) reinstalling lxc                                                   [########################################] 100%
(4/9) reinstalling libglibutil                                           [########################################] 100%
(5/9) reinstalling libgbinder                                            [########################################] 100%
(6/9) reinstalling python-gbinder                                        [########################################] 100%
(7/9) reinstalling waydroid                                              [########################################] 100%
(8/9) installing colord                                                  [########################################] 100%
Optional dependencies for colord
    argyllcms: color profiling
    colord-sane: SANE support
(9/9) installing weston                                                  [########################################] 100%
Optional dependencies for weston
    xorg-xwayland: support x11 backend [installed]
    libpipewire: support pipewire backend [installed]
    freerdp: support rdp backend [installed]
    neatvnc: support vnc backend
:: Running post-transaction hooks...
(1/9) Creating system user accounts...
Creating group 'colord' with GID 959.
Creating user 'colord' (Color management daemon) with UID 959 and GID 959.
(2/9) Reloading system manager configuration...
(3/9) 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/9) Reloading device manager configuration...
(5/9) Arming ConditionNeedsUpdate...
(6/9) Reloading system bus configuration...
(7/9) Compiling GSettings XML schema files...
(8/9) Updating icon theme caches...
(9/9) Updating the desktop file MIME type cache...
waydroid and cage has been installed!
mkdir: cannot create directory ‘/var/lib/waydroid’: File exists
cp: cannot create regular file '/var/lib/waydroid/overlay/system/usr/keylayout/': No such file or directory
Config file missing. Lets configure waydroid.
ln: failed to create symbolic link '/var/lib/waydroid/images': No such file or directory
ln: failed to create symbolic link '/var/lib/waydroid/cache_http': No such file or directory
Run 'waydroid log' for details. Alternatively you can use '--details-to-stdout' to get more output, e.g. 'waydroid --details-to-stdout init'.
Collecting tqdm
  Downloading tqdm-4.66.1-py3-none-any.whl (78 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 78.3/78.3 kB 2.1 MB/s eta 0:00:00
Collecting requests
  Downloading requests-2.31.0-py3-none-any.whl (62 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.6/62.6 kB 5.7 MB/s eta 0:00:00
Collecting InquirerPy
  Downloading InquirerPy-0.3.4-py3-none-any.whl (67 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 67.7/67.7 kB 3.7 MB/s eta 0:00:00
Collecting charset-normalizer<4,>=2
  Downloading charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (140 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 140.3/140.3 kB 1.6 MB/s eta 0:00:00
Collecting idna<4,>=2.5
  Downloading idna-3.6-py3-none-any.whl (61 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.6/61.6 kB 5.3 MB/s eta 0:00:00
Collecting urllib3<3,>=1.21.1
  Downloading urllib3-2.2.0-py3-none-any.whl (120 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 120.9/120.9 kB 2.2 MB/s eta 0:00:00
Collecting certifi>=2017.4.17
  Downloading certifi-2024.2.2-py3-none-any.whl (163 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 163.8/163.8 kB 2.2 MB/s eta 0:00:00
Collecting pfzy<0.4.0,>=0.3.1
  Downloading pfzy-0.3.4-py3-none-any.whl (8.5 kB)
Collecting prompt-toolkit<4.0.0,>=3.0.1
  Downloading prompt_toolkit-3.0.43-py3-none-any.whl (386 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 386.1/386.1 kB 1.9 MB/s eta 0:00:00
Collecting wcwidth
  Downloading wcwidth-0.2.13-py2.py3-none-any.whl (34 kB)
Installing collected packages: wcwidth, urllib3, tqdm, prompt-toolkit, pfzy, idna, charset-normalizer, certifi, requests, InquirerPy
Successfully installed InquirerPy-0.3.4 certifi-2024.2.2 charset-normalizer-3.3.2 idna-3.6 pfzy-0.3.4 prompt-toolkit-3.0.43 requests-2.31.0 tqdm-4.66.1 urllib3-2.2.0 wcwidth-0.2.13

[notice] A new release of pip available: 22.3.1 -> 24.0
[notice] To update, run: python3 -m pip install --upgrade pip
ERROR: Cannot locate waydroid config file, reinit wayland and try again!
Error with casualsnek script.
tee: /var/lib/waydroid/waydroid_base.prop: No such file or directory
Adding shortcuts to game mode. Please wait.
Unsupported file type
Android_Waydroid_Cage.sh shortcut has been added to game mode.
Unsupported file type
Android_Waydroid_Weston.sh shortcut has been added to game mode.
Unsupported file type
steamos-nested-desktop shortcut has been added to game mode.
Waydroid has been successfully installed!

unable to uninstall using the given instructions, possibly due to something going wrong during the install?

Decided to uninstall after the script seemed to not work as intended.

  • no shortcuts were added in gaming mode
  • when using the .desktop files, the icon shows up for a second before disappearing
  • tried to enter "waydroid session start" in the terminal, got errors telling me that the display/sockets weren't set? can't make much sense of it as I'm not an expert. searching for the message online gave unrelated/no solutions. gave up around this point.
    image

Attempted to uninstall and got the following error:

image

I did get this message that said something along the lines of "cannot run this as root user" near the end of the install process, maybe that has something to do with the issue?

I'm guessing that the best way out is uninstalling, but I'm open to trying to get this to work

Games tested

Very Little Nightmares - The Google store says "This tablet isn't compatible with the app", and so won't install. It is a pity, as this is the only game I've actually bought from the Google store for my phone. This one does install and work using BlueStacks on Windows.

The Simpsons Tapped Out - Installs and lets me log in. It does keep losing connection, but it does that on my phone, android tablet, my mum's ipad etc. So that's nothing to do with Waydroid.
It works for the most part, but I did notice that every time I click to play one of the minigames, it kicks me to the Waydroid desktop. The game is still running, but disconnected in the background.

Steam Deck Controls

Hi,

Not sure if this has been covered? Have installed flawlessley.....however

How do you use the Steam Deck controls to scroll through Android screen menus?

Is there a best configuration?

var partition issues

“I’m having trouble installing scripts on Waydroid on my Steam Deck due to the size of only 256 MB of the var partition. Is there any possibility to change the installation to the deck’s home?”

Bluetooth keyboard key presses interpreted as double presses

May apply to all hardware keyboards, not sure. Seems to be something that should be fixable. Possibly two different methods are being used to send keypresses to Android. Disable one?

When I type with a hardware keyboard key presses are doubled, both visible characters and control keys.

For example if I try to type "The MAZZTer" I get "TThhee MMAAZZZZTTeerr"

[SteamOS 3.5.7] Add as non-steam game does not function properly

In SteamOS 3.5.7 stable channel, the script to add as non steam game seems to have been modified so that it doesn't allow shell scripts.

Here is the output of the script steamos-add-to-steam that is used in the last line of the waydroid-installer script:

$ deck@steamdeck SteamOS-Waydroid-Installer)$ cat /usr/bin/steamos-add-to-steam
#! /bin/sh

add_to_steam() {
    encodedUrl="steam://addnonsteamgame/$(python3 -c "import urllib.parse;print(urllib.parse.quote(\"$1\", safe=''))")"
    touch /tmp/addnonsteamgamefile
    xdg-open $encodedUrl
}

show_error() {
    if [ "$show_dialog" = "1" ]; then
        kdialog --title Error --error "$1"
    else
        echo "$1" >&2
    fi
}

if [ "$1" = "-ui" ]; then
    show_dialog=1
    shift
fi

file=$1
if [ ! -e "$file" ]
then
    echo "Usage: steamos-add-to-steam [-ui] <path>"
    exit 1
fi
mime=$(xdg-mime query filetype "$file")
case "$mime" in
    "application/x-desktop"|"application/x-ms-dos-executable")
        add_to_steam "$file"
        ;;
    "application/x-executable"|"application/vnd.appimage"|"application/x-shellscript")
        if [ -x "$file" ]; then
            add_to_steam "$file"
        else
            show_error "Unable to add non-Steam game. Is the file executable?"
        fi
        ;;
    *)
        show_error "Unsupported file type"
        ;;
esac

"Unsupported file type" is returned, because the MIME type does not match any of the specified ones.

$ deck@steamdeck SteamOS-Waydroid-Installer)$ xdg-mime query filetype "PlasmaNested.sh" 
text/x-shellscript

can't install on stable channel

lastest update kill my waydroid.
trying to reinstall but get the error : 6.1.52-valve16-1-neptune-61 is NOT supported. Exiting immediately.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.