Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

811 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

decky-romm-sync

Your self-hosted RomM library, in your Steam library

Getting Started · Configuration · Syncing · Managing Games

BIOS & Cores · Save Sync · Troubleshooting

Documentation Release Stars Downloads Requires RomM 4.9.0 or newer

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.

Features

  • 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_driver value 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

Screenshots

Quick Access panel Game detail page
Quick Access panel Game detail page
BIOS management Per-game actions
BIOS status Actions menu

Requirements

  • 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

Installation

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).

  1. Download the latest decky-romm-sync.zip from the releases page
  2. 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.

Quick start

  1. Open the Quick Access Menu and select RomM Sync
  2. In Settings, enter your RomM server URL and credentials, then hit Test Connection
  3. In Platforms, enable the platforms you want to sync
  4. Hit Sync Library — your ROMs appear as non-steam shortcuts

See the User Guide for syncing details, save sync, and BIOS management.

Contributing

Build from source, run the tests, and read the architecture reference on the documentation site:

CI Quality Gate Coverage Maintainability Reliability Security

Acknowledgments

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

License

GPL-3.0. This is an independent project and is not affiliated with, endorsed by, or sponsored by the RomM project or Valve Corporation.

About

Decky Loader plugin integrating RomM (self-hosted ROM Manager) with Steam Gaming Mode and BPM

Resources

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages