Runtime driver and Display driver open a full page instead of a drop-down, built from the settings widgets (as previewed): INSTALLED lists every driver as a tappable row with a radio mark and a tag (BUNDLED / DOWNLOADED / IMPORTED); AVAILABLE TO DOWNLOAD lists what the last check of Banners-Turnip and WinNative found, with a Download button and progress; Import stays at the bottom. The refresh button sits beside the title (SettingsPage gains an action slot) and is the only thing that goes online; it spins while checking. Every driver gets a trash can with a confirmation, the bundled ones too: deleting a bundled display driver removes its unpacked copy and hides it (TurnipDriver.hideBundled), with 'Restore built-in drivers' to bring them back. It stays in the apk and Auto still unpacks it on a GPU that needs it, so a deletion can never leave a device without a driver. Auto and Runtime default are settings, not drivers, and have no trash can.
SteamDeck
Run Valve's native ARM64 Steam client on an Adreno Android device. Steam runs in a Linux runtime under proot, with gamescope and an in-app Vulkan compositor. Windows games use Valve's ARM64 Proton and FEX. A desktop with LXQt, Firefox, and emulators is also available.
Requirements and install
Use Android 9 or newer on a supported Adreno device (730 or newer, or 8xx). Mali, Xclipse, PowerVR, and Adreno 710 are unsupported. No root is required. Allow about 3 GB for the runtime and 1.1 GB more for the desktop and emulators. Install the APK from Releases, install the Linux runtime, then press Play and sign in. Steam downloads on first launch. Install Desktop & apps to use the desktop and emulators.
On Android 12+, if Steam exits without a log, turn off Restrict child processes in Developer options.
Build
Run tools/build_local.sh with Docker, Java 17, the Android SDK/NDK, and zstd installed. It builds the ARM64 audio sinks from PulseAudio 13.0 and packages them into the APK at app/build/outputs/apk/release/app-release.apk. Set STEAMDECK_PA13_SOURCE_DIR to an existing PulseAudio 13.0 source directory to skip downloading it. To install the APK on an attached device, run tools/deploy_local.sh.
Limits
Compatibility and performance vary by device; hardware validation is limited. Desktop compositing uses software rendering. Firefox sandboxing is reduced under proot. See the session logs in Download/SteamDeck/ when diagnosing problems.
Credits and licence
GPL-3.0. Runtime, shim, input, and controller work build on WinNative and Bannerlator (maxjivi05). See LICENSE. Steam and Proton belong to Valve Corporation; this project is not affiliated with Valve.