Cross-platform (Linux + Windows) GUI mod manager for Ready or Not.
![]() |
![]() |
| Platform | Download |
|---|---|
| Windows | Setup (.exe) |
| Linux - AppImage | AppImage |
| Linux - Debian/Ubuntu | .deb package |
| Linux - Fedora/openSUSE | .rpm package |
| Linux - Arch (AUR) | ronmodmanager-bin |
| Linux - Flatpak | Flatpak bundle |
Not sure which to pick? Windows: grab the Setup .exe. Linux: use your distro's native package (.deb, .rpm, or AUR), AppImage for anything else, or Flatpak for a sandboxed install.
The app is distributed via a self-hosted Flatpak remote on GitHub Pages. This gives you automatic updates through GNOME Software, Flatpost, or flatpak update.
# Import the signing key and add the remote (once)
curl -sL https://savagecore.github.io/RoNModManager/ronmodmanager-flatpak.gpg \
-o /tmp/ronmodmanager-flatpak.gpg
flatpak remote-add --user \
--gpg-import=/tmp/ronmodmanager-flatpak.gpg \
ronmodmanager https://savagecore.github.io/RoNModManager/
# Install
flatpak install ronmodmanager uk.savagecore.ronmodmanager
# Update (or use GNOME Software / Flatpost)
flatpak update uk.savagecore.ronmodmanagerAlternatively, download ronmodmanager.flatpak from the latest release and install directly:
flatpak install --user --bundle ronmodmanager.flatpakSee docs/HOSTING_MODPACKS.md for instructions on exporting, self-hosting, and sharing modpacks.
A userscript is available to add a one-click "Install via RoN Mod Manager" button to mod pages on Nexus Mods and mod.io, making browser-based mod installs seamless.
- Source:
userscript/src/main.ts - Built script:
userscript/dist/ron-mod-manager-userscript.user.js
- Install a userscript manager such as Violentmonkey.
- Install Userscript
- To build locally for testing, run
npm run buildin theuserscript/directory. The output will be inuserscript/dist/. - For releases, simply create a new release or tag as usual. The main release workflow will automatically build the userscript and attach the
.user.jsfile to the release.
Note: The userscript will auto-update when installed from the official GitHub Releases link, thanks to the included
@updateURLmetadata.
- Tauri v2 (Rust backend)
- Svelte 5 + TypeScript (frontend)
- Tailwind CSS 4
npmpackage management
make install
make devSee docs/LINUX_WINDOW_PERSISTENCE.md for details on window state persistence on Linux/Wayland.
src-tauri/target/ (Rust build cache) and .flatpak-builder/build/ (Flatpak build snapshots) can grow to hundreds of GB over time. To reclaim space:
make clean.flatpak-builder/cache/ is kept by both commands - it caches downloaded sources and speeds up subsequent Flatpak builds.
make lint-all # all linters (frontend + backend)
# or individually:
make lint-frontend # Prettier check + svelte-check
make lint-backend # cargo fmt --check + clippy
make test # vitest + cargo testTo regenerate the screenshots in docs/screenshots/, install the prerequisites once:
sudo dnf install xdotool imagemagick # Fedora / Nobara
sudo apt install xdotool imagemagick # Debian / UbuntuThe script runs the app in XWayland mode (GDK_BACKEND=x11) so xdotool can control the window. XWayland starts automatically on KDE Plasma.
Build the debug binary once (or after any Rust changes):
make screenshots-buildThen retake screenshots any time - frontend changes are picked up automatically without a rebuild:
make screenshotsThe script starts the Vite dev server, launches the debug binary (which connects to it), and runs twice - once for light mode and once for dark - saving to docs/screenshots/light/ and docs/screenshots/dark/. The app launches with SCREENSHOT_MODE=1 (incognito auto-activated, no setup wizard, no geometry restore) and each sidebar page is navigated and captured via xdotool + ImageMagick.
| Shortcut | Action |
|---|---|
Ctrl+I |
Toggle incognito mode (replaces mod list with dummy data for screenshots) |
MIT

