Getting Started · Configuration · Syncing · Managing Games
A Decky Loader plugin that syncs your self-hosted RomM library into Steam as non-steam shortcuts. Games appear directly in your Steam library, launch through RetroDECK, and can keep their saves in sync across devices through your RomM server.
- Library sync — Pulls the platforms and collections you pick from your RomM server into Steam as non-steam shortcuts with RomM cover art; later runs are incremental and preview what will change before touching anything
- SteamGridDB artwork — Add a free SteamGridDB key to get hero banners, logos, wide capsules and custom icons, with a manual picker for games that don't match automatically
- Save sync — Opt-in save syncing across devices through your RomM server, automatically before launch and after you quit; identical saves resolve silently, and if both sides genuinely changed you decide which one wins
- Save slots & version history — Multiple named save profiles per game, plus per-file version history with restore
- ROM downloads — Download on demand with progress, pause/resume/cancel, and a managed queue
- BIOS management — Per-platform BIOS status, download all or only what your active core requires, hash-verified against a bundled registry, and delete them again when you're done
- Game detail page — Replaces Steam's page for synced games: RomM metadata, RetroAchievements progress, playtime, install and BIOS status, save management, and per-game actions
- Multi-disc & multi-version — Pick the disc for multi-disc games and switch between regions or revisions of the same game, right from its Steam page
- Emulator cores — Set the core per system, or override it for a single game
- Steam Input — Pick a Steam Input mode (Default / Force On / Force Off) and apply it to every shortcut the plugin created
- RetroArch input fix — Spots the
input_drivervalue that breaks controller navigation in RetroArch's menus and repairs it in one tap - Follows RetroDECK moves — Moved RetroDECK to another drive? The ROMs, BIOS files and saves the plugin manages are relocated and your shortcuts repointed — nothing needs re-downloading
- Cleanup tools — Remove shortcuts per platform or all at once, uninstall ROMs, and clear orphaned grid images
| Quick Access panel | Game detail page |
|---|---|
![]() |
![]() |
| BIOS management | Per-game actions |
![]() |
![]() |
- Decky Loader on your Steam Deck or Linux HTPC — the plugin lives in Steam's gamepad UI, so it works in the Deck's Game Mode or in Big Picture Mode on any Linux PC
- A running RomM server, version 4.9.0 or newer (the plugin stays inert against older servers)
- RetroDECK for launching games
From the Decky Store — not available yet
⚠️ Not available yet. The plugin will be submitted to the Decky Store with the v1.0 release. Until then, use the manual install below.
Once published, install it straight from Decky's built-in store — open the Quick Access Menu → Decky → store icon, search for RomM Sync, and install. No Developer Mode required.
From ZIP or URL — the current method
This is the current method while v1.0 is in progress. It requires Developer Mode in Decky Loader (Decky settings → gear icon → toggle Developer Mode).
- Download the latest
decky-romm-sync.zipfrom the releases page - In Decky settings → Developer tab → Install Plugin from ZIP (or from URL with the latest release link)
Full step-by-step instructions, including first-time setup, are in Getting Started.
- Open the Quick Access Menu and select RomM Sync
- In Settings, enter your RomM server URL and credentials, then hit Test Connection
- In Platforms, enable the platforms you want to sync
- Hit Sync Library — your ROMs appear as non-steam shortcuts
See the User Guide for syncing details, save sync, and BIOS management.
Build from source, run the tests, and read the architecture reference on the documentation site:
- Development setup
- Frontend dev loop — live-reload the UI into a windowed Big Picture on the Deck, no Game Mode switching
- Backend architecture
This plugin stands on the shoulders of some great projects:
- RomM — the self-hosted ROM manager at the heart of this plugin. RomM provides the library, metadata, cover art, and save file storage that makes the entire sync experience possible
- RetroDECK — the all-in-one emulation solution for Steam Deck that bundles ES-DE, RetroArch, and standalone emulators into a single flatpak. Our entire launch chain runs through RetroDECK
- Decky Loader — the plugin framework that makes all of this possible
- Valve — for the Steam Deck, SteamOS, and an open enough platform to build on
- Unifideck — inspiration for game detail page injection techniques and gamepad navigation patterns
- MetaDeck — inspiration for store patching patterns used in metadata display on non-Steam shortcuts
- Argosy — RomM's Android device-sync client. Its baseline-anchored save-conflict handling — client-side detection layered over RomM's negotiate transport, with a keep-local/keep-remote prompt on genuine divergence — validated the posture this plugin's save sync takes
- Grout — RomM's Linux handheld client. Its 409-driven upload reconciliation (POST with overwrite=false, downgrading to a download when the local save is unchanged and surfacing a conflict when it diverged) informed this plugin's negotiate upload and conflict path
GPL-3.0. This is an independent project and is not affiliated with, endorsed by, or sponsored by the RomM project or Valve Corporation.



