Skip to content
stage_01 2 cmds

Setup

Sudo and Decky basics.

Set a sudo password

Required for `sudo`. SteamOS ships without one — set it before anything else.

Install Dependencies

Installs nvm and Node.js 22 to ~/. Required for the magus TUI — safe on SteamOS's immutable file system.

low risk
stage_02 11 cmds

Apps & Tools

Launchers, browsers, streaming, utilities.

Capture & Chat

OBS Studio

Streaming and recording.

Discover Overlay

A Discord voice + chat overlay that actually works in Steam games.

System & Hygiene

Flatseal

Flatpak permissions GUI.

Warehouse

Flatpak management GUI. Mass-uninstall, audit user data, snapshot installs.

Mission Center

Pretty, native system monitor. CPU, GPU, RAM, drives, processes.

Daily Drivers

Brave

Chromium browser with ad/tracker blocking.

Firefox

Mozilla browser.

Bitwarden

Open-source password vault.

Spotify

Music. Add as non-Steam game for Game Mode.

Vesktop

Lightweight Discord with Vencord baked in. Better screen-share on Linux.

VLC

Plays anything you throw at it. The forever-default.

stage_03 8 cmds

Optimise

Performance and Plasma tweaks.

Install CryoUtilities

Swap, swappiness, huge pages — one tool. Click "Recommended" after install.

Deck only low risk

Force touch mode

Switches Plasma to its touch-friendly layout. Use `auto` to let it decide.

Larger cursor for touch

Bumps cursor size to 32 px. Easier to track with thumbs in desktop mode.

Double-click to open

Switches off KDE's single-click activation. The behaviour everyone else uses.

Disable Baloo (file indexer)

KDE's file indexer can pin CPU for hours after a fresh install. Disabling reclaims desktop-mode battery and quiets the fans.

Persistent Wi-Fi power save

Lower background drain by letting the radio idle between frames. Sticks in desktop mode; Game Mode is known to re-enable management after sleep/wake.

low risk

Btrfs /home conversion

Convert /home to Btrfs for transparent compression. Big storage wins on 64 GB Decks. Survives system updates.

Deck only high risk

Nested Desktop in Game Mode

A pocketable Plasma session inside Game Mode. Skip the full "Switch to Desktop" dance — pop a 1280×800 KDE window over your library when you just need to tweak something.

low risk
stage_04 7 cmds

Customise

Plugins, art, polish.

/ within customise · sub-area a

Decky Loader plugins

Loader first, plugins after.

6 plugins · 1 loader
00 the loader

Install Decky Loader

The plugin runtime. Same script as Setup — safe to re-run, idempotent.

low risk
01 recommended plugins

CSS Loader

Custom themes for SteamOS — fonts, colours, layouts. Has its own installer.

low risk

SteamGridDB

Replace ugly default artwork on non-Steam shortcuts and EmuDeck entries.

low risk

ProtonDB Badges

Shows the ProtonDB rating next to every game in the library.

low risk

HLTB for Deck

How Long to Beat estimates on every game page. Useful for handheld sessions.

low risk

PlayTime

Per-session tracker that covers non-Steam games Steam ignores.

low risk

AutoFlatpaks

Background Flatpak updates without dropping to desktop mode.

low risk
stage_05 23 cmds

Gaming

Launchers, emulators, streams. Source ports welcome.

Retro & Emulation

RetroArch

The big-tent emulator frontend. Cores for nearly every retro console.

Dolphin Emulator

GameCube and Wii. Buttery-smooth on the Deck.

DuckStation

PS1 emulator. Per-game compatibility, sharp upscaling. Installed as an AppImage — no longer on Flathub.

EmuDeck

One-shot installer that sets up a curated emulator stack with sane defaults.

RetroDeck

Every major emulator in a single flatpak. A drop-in EmuDeck alternative.

Mega Bezel

HSM's reflection shader for RetroArch — CRT scanlines, glass reflections, and bezel art. Foundation for the Duimon preset pack below.

low risk

Duimon Mega Bezel Shaders

CRT shader presets with reflections and bezels for RetroArch. Requires RetroArch and the Mega Bezel shader pack installed first.

low risk

Launchers & Compat

ProtonUp-Qt

Proton-GE, Wine-GE, Luxtorpeda installer.

Wine Cellar

Manage Proton-GE and Wine-GE from Game Mode. Decky alternative to ProtonUp-Qt.

low risk

Bottles

Run Windows apps in pre-tuned wine bottles.

Cartridges

One library that reads from Steam, Heroic, Lutris, emulators.

Heroic Games Launcher

Epic, GOG, Amazon Prime in one launcher.

Lutris

Wine, emulators, Battle.net, Origin, Ubisoft Connect.

Waydroid (Android container)

Run Android apps and games inside a Wayland container. Useful for the handful of titles that never came to PC — gacha launchers, mobile-only ports, that one casual game your friends still play.

Deck only medium risk

Streaming & Remote Play

GeForce Now

Cloud-stream your Steam, Epic, and Ubisoft library. RTX 4080 tier on a handheld.

PS Remote Play

Stream PS4 / PS5 over LAN or internet. Chiaki4deck — controller-mapped for Steam Deck.

Moonlight

Stream games from a GPU-equipped PC to your Deck. Open-source NVIDIA GameStream client.

Sunshine

Self-hosted GameStream server. The Deck-side counterpart to Moonlight.

Tools & Overlays

GOverlay

GUI for MangoHud — FPS, frametime, sensors. Skip the config file edit.

Ludusavi

Save game backup. Pair with cloud sync for resilience.

Source Ports

GZDoom

Modern source port of Doom, Doom II, Heretic, Hexen, Strife. Point it at your WADs and play.

OpenMW

Open-source Morrowind engine. Modern resolution, longer view distance, better mod support than the original.

DevilutionX

Diablo 1 + Hellfire, rebuilt. Widescreen, controller support, bug fixes, no DRM scaffolding.

/ future spells

Still being conjured.

6 drafts
  • planned

    Lossless Scaling

    Frame interpolation, wired through Decky.

  • planned

    CSS Loader themes

    Restyle SteamOS with community-made themes.

  • planned

    Save sync & rescue

    Cloud-sync safety net for native Linux saves.

  • draft

    Productivity & dev

    Browsers, editors, terminals worth keeping around.

  • research

    Steam Machine mode

    Run SteamOS as a console UI on non-Deck hardware.

  • research

    Terminal picker

    Pick commands without ever opening a browser.

0 selected

Script

0 commands · 0 lines

Building script...