A collection of tools that is packaged into an easy to use script that is streamlined and tested to work with the Steam Deck running on SteamOS.
- The main program that does all the heavy lifting is Waydroid - a container-based approach to boot a full Android system on a regular GNU/Linux system.
- Waydroid Toolbox to easily toggle some configuration settings for Waydroid.
- waydroid_script to easily add the libndk ARM translation layer and widevine.
libndk-fixer is a fixed / improved libndk translation layer specific for Roblox (demo guide here).we don't need libndk-fixer anymore for Roblox - demo here
Note
If you are going to use this script for a video tutorial, PLEASE reference on your video where you got the script! This will make the support process easier! And don't forget to give a shoutout to @10MinuteSteamDeckGamer / ryanrudolf from the Philippines!
If you like my work please show support by subscribing to my YouTube channel @10MinuteSteamDeckGamer.
I'm just passionate about Linux, Windows, how stuff works, and playing retro and modern video games on my Steam Deck!
Monetary donations are also encouraged if you find this project helpful. Your donation inspires me to continue research on the Steam Deck! Clover script, 70Hz mod, SteamOS microSD, Secure Boot, etc.
Scan the QR code or click the image below to visit my donation page.
- Do this at your own risk!
- This is for educational and research purposes only!
Click the image below for a video tutorial and to see the functionalities of the script!
- Initial support for Android 11 TV
Old Changelog - Click here for more details
What's New (as of Dec 27 2024)
- Support for SteamOS Beta 3.6.21
- Uploaded initial Waydroid Android 11 TV image in the release section
What's New (as of Oct 28 2024)
- Support for latest SteamOS Stable 3.6.19
- fixed binder kernel module parameters
- enhancement - ability to choose with / without Google Playstore on a fresh install
- enhancement - automatically activate mantis gamepad pro and shizuku
- enhancement - disable root detection (some apps might still detect root)
- enhancement - disable first time setup wizard
- enhancement - Waydroid Toolbox - added NETWORK option
- enhanceement - Waydroid Toolbox - updated ADBLOCK option
What's New (as of Oct 10 2024)
- add support for latest SteamOS Beta 3.6.16 / 3.6.17
- add sanity check for home and var partition - make sure home has at least 5GB free space, and var has at least 100MB free space
- add / fix verbose messages
- trim output of steamos-add-to-steam
What's New (as of Sep 07 2024)
- support for SteamOS 3.6.12
What's New (as of Aug 27 2024)
- support for SteamOS 3.6.10
- added experimental waydroid launcher that supports rotation - demo here
- Waydroid Toolbox - option to uninstall waydroid and retain android user data, or full uninstall of waydroid including android user data
What's New (as of Aug 09 2024)
- support for SteamOS 3.6.9
- waydroid bump from 1.4.2 to 1.4.3
- lxc bump from 0.2 to 0.3
- binder kernel môdule re-built using latest May26 commits
- cleanup the binder kernel folder names so its easier to read
- remove libndk-fixer (not needed anymore for Roblox)
- Add sanity check on the waydroid launcher
What's New (as of May 28 2024)
- Fix for scoped storage permission issue. Apps can now write to data / obb folder. FIFA 14 now works because of this!
What's New (as of May 05 2024)
- Minor fix - make minigbm_gbm_mesa as default. This should make Roblox performance better.
- Waydroid Toolbox - added option to toggle between gbm or minigbm_gbm_mesa.
- Added verbose error message when Waydroid initialization fails during install.
Updated Waydroid Toolbox to easily configure some aspects of Waydroid
What's New (as of May 01 2024)
- Roblox now works thanks to slappy826! demo guide here how to configure Roblox
- Updated the Waydroid Toolbox script
- code cleanup / additional logic
- switch from gbm to minigm_gbm_mesa
What's New (as of April 25 2024)
- This works with latest stable SteamOS 3.5.19. There is no kernel change for SteamOS - it still uses 6.1.52-valve16-1 so this works right away no need for new kernel modules.
SteamOS has been stuck on 6.1.52-valve16-1 for several releases now so I think this will stay and next major bump will be on SteamOS 3.6.x.
What's New (as of March 09 2024)
- Updated launcher to easily run APKs in Game Mode. demo guide here
- Fix minor typo in uninstall - this now removes the Waydroid application entries in the KDE menu.
- Added Waydroid Toolbox to easily configure some aspects of Waydroid.
What's New (as of February 11 2024)
- Added support for latest SteamOS Preview 3.5.15 - kernel 6.1.52-valve16-1-neptune-61
What's New (as of February 10 2024)
- lower audio latency
- added more sanity checks
What's New (as of February 07 2024)
- removed weston. been testing cage for several weeks now and this is way better than weston.
- added custom hosts file to block ads
What's New (as of February 05 2024)
- merged PR - Add fixed key layout file for Steam Deck controller
- SteamOS 3.5.14 works. No need to recompile kernel module as it uses the same kernel from 3.5.13
What's New (as of February 02 2024)
- added cage launcher for multi-touch support
- rewrite the script - instead of building from source this now installs prebuilt binaries
- easier and quicker to install
- added support for SteamOS 3.5.13 Preview
What's New (as of December 07 2023)
- this now works with casualsnek script!
- added libndk arm translation layer (via casualsnek script)
- added widevine (via casualsnek script). This is needed for Netflix and Disney+
- waydroid fingerprint identifies as a Pixel 5 redfin. This is needed for Netflix
- new method for detecting controller via Saren method
What's New (as of November 26 2023)
- cleanup and removed support for SteamOS 3.4.x due to SteamOS 3.5.x already went to stable
- removed PlasmaNested.sh as this is already included in SteamOS 3.5.x
- removed the bundled weston binary (only useful when on SteamOS 3.4.x)
What's New (as of November 15 2023)
- initial release
Click here - Read the sections below carefully for steps on how to install and use this script!
Prerequisites for SteamOS
sudo
password should already be set by the end user. Ifsudo
password is not yet set, the script will ask to set it up.
How to Use and Install the Script
-
Go into Desktop Mode and open a
konsole
terminal. -
Clone the github repo.
cd ~/ git clone --depth=1 https://github.com/ryanrudolfoba/steamos-waydroid-installer
-
Execute the script! \
cd ~/steamos-waydroid-installer chmod +x steamos-waydroid-installer.sh ./steamos-waydroid-installer.sh
-
Script will automatically install Waydroid together with the custom config. Install will roughly take around 5mins depending on the internet connection speed.
-
Once done exit the script and go back to Game Mode.
Launching Waydroid
- Go to Game Mode.
- Run the Android_Waydroid_Cage launcher.
Click here - Read the sections below carefully. This are purely OPTIONAL.
Steam Deck Controller Layout Thanks to DanielLester83!
Search 'Waydroid' in the community templates or maybe this link would work steam://controllerconfig/3665077347/3304296813
This maps the back buttons to function keys for use with android key remappers like this https://github.com/keymapperorg/KeyMapper
This work around seems to be needed because steaminput does not seem to pass the Search/OS/Windows/Meta Key to Android.
This layout also tweaks the trackpad inputs.
Configure Android Start Menu Shortcuts to Work in Desktop Mode
NOTE: This is purely optional and doesn't affect the functionality of Waydroid if you don't do the steps.
Personally I don't need it but for those that do then this is what you need. Thanks to DanielLester83 for the instructions!
Controller Not Being Detected
The script has been updated so that the controller detection will get triggered once Android has completed the boot process. This makes the controller detection more accurate and the boot sequence to be faster.
However if you use Bluetooth headphones it will interfere with controller detection. Use the workaround mentioned here and here
- Go to Desktop Mode.
- There will be an icon called Waydroid Toolbox on the desktop.
- Launch that icon and select UNINSTALL.
- If you encounter an issue with the script, try to uninstall, clone the repo again and perform an install.
Reason for that - you might be using an older version of my script and a new version might have already fixed your issue. - If uninstall / reinstall didn't help, open an issue and please be descriptive as possible.
At the minimum include this when filing an issue -
SteamOS version -
Error message encountered -
Screenshot of error -
Do you have any scripts / tweaks that might be causing issues? - Downloads are slow when acquiring the waydroid image. This is similar to this issue.
Answer - You might have connected to a slow sourceforge mirror. Press CTRL-C to cancel the download and re-run the script again. - No shortcuts in Game Mode after running the script / Unsupported File Type when adding shortcuts. This is similar to this issue.
Answer - This issue happens if Steam client cant be run because the script was called from an ssh or virtual tty session. Make sure to run the script on Desktop Mode via konsole.
When there is a SteamOS update the waydroid will be wiped. This is normal behavior due to how SteamOS applies updates.
Re-run the script again but if the SteamOS update contains a new kernel version the script will exit immediately.
Please file an issue report when this happens so I can compile a binder kernel module to match the SteamOS update.
This mini guides are tailor-fitted for the Steam Deck that uses the script provided in this repo.
How to Sideload APKs
How to Upgrade the Android Image
How to Configure Fake Wi-Fi
How to Configure Fake Touchscreen / Configure Mouse Clicks as Touchscreen Input
How to Launch APKs Directly in Game Mode
Configure for 1080p When in Docked Mode
Configure sdcard as Main Storage for Waydroid
Activate and Configure Mantis Gamepad Pro
How to Configure Roblox
How to Access the OBB Folder / How to Root
How to Rotate Waydroid
Geekbench Benchmark Result Between Steam Deck OLED and Steam Deck LCD on SteamOS Android Waydroid - Feb 11 2024
Plants vs Zombies - Feb 04 2024
Honkai Star Rail - Feb 06 2024
Asphalt 8 Airborne - Feb 08 2024
Honkai Impact 3rd - Feb 10 2024
Mobile Legends - Feb 13 2024
T3 Arena - Feb 16 2024
Warcraft Rumble - Feb 19 2024
Diablo Immortal - Feb 21 2024
Oceanhorn - Feb 23 2024
Candy Crush Saga - Mar 11 2024
BombSquad - Mar 16 2024
Project BloodStrike - Mar 18 2024
NBA Infinite - Mar 23 2024
Roblox - May 01 2024
Plants vs Zombies 2 - Reflourished - May 17 2024
Wuthering Waves - May 23 2024
FIFA 14 - May 28 2024
KOF Arena / King of Fighters Arena - June 18 2024
Injustice - July 12 2024
Wuthering Waves using patched LIBNDK - Aug 01 2024
Roblox x86 APK - Aug 03 2024
Blue Archive using patched LIBNDK - Aug 27 2024
Please check this google sheets for games tested by other users.
If you wish to contribute, please include the game name, how it runs etc etc.
Please feel free to add your game testing in there too! Thank you!