r2mod cli
A simple CLI Mod Manager for Linux
Screenshots 1 screenshots
About this mod Author’s original text
r2mod_cli
| Features | Installation | Usage | Changelog |
|---|---|---|---|
A simple mod manager written in Bash for Linux users.
Features
- Simple No-Nonsense Usage
- Setup BepInEx and R2API
- Install and Update Mods
- Resolve Dependencies
- Hold Specific Mods Back from Updating
- Enable/Disable Mods
- Edit Mod Configs
- Check for Updates for itself
- Supports Importing/Exporting r2modman profile codes
- Supports Flatpak Steam Installs
- Tab Completion
Installation
AUR
r2mod is available in the Arch AUR as r2mod_cli
yay -S r2mod_cli
Flatpak
r2mod is available from flathub as io.github.Foldex.r2mod
flatpak install flathub io.github.Foldex.r2mod
Alias
Flatpak bin exports should allow you to run r2mod using io.github.Foldex.r2mod.
But you may wish to set up an alias for easier use.
alias r2mod="io.github.Foldex.r2mod"
Completions
Flatpak does not allow shell completions to be installed in the usual root owned locations.
The flatpak will install them under user owned directories at runtime instead.
For ZSH, you may need to add $HOME.local/share/zsh/site-functions to your $fpath
Manual
The prior methods are preferred, but if you wish to manually install:
Extract the zip and run sudo make install inside its directory.
Dependencies
Arch
sudo pacman -S curl findutils gawk jq p7zip sed
Fedora
sudo dnf install curl findutils gawk jq p7zip sed
Ubuntu
sudo apt-get install curl findutils gawk jq p7zip-full sed
Usage
First Setup
Make sure you have run Risk of Rain 2 beforehand to create the needed directories.
It is heavily recommended to run r2mod setup to create a new install.
Some empty folders will be placed in the BepInEx/plugins dir, do not remove them.
They are used to track updates for certain mods.
Custom Install Location
The default install directories for Steam/Flatpak should automatically be handled.
If you've installed Risk of Rain 2 to a different location, please export the environment variable
$R2MOD_INSTALL_DIR in your bash profile and point it to your install directory:
export R2MOD_INSTALL_DIR="$HOME/custom/dir/Risk of Rain 2"
$R2MOD_COMPAT_DIR also exists for custom locations of Steam's compatdata directory.
export R2MOD_COMPAT_DIR="$HOME/custom/dir/steamapps/compatdata/632360"
Flatpak
If you wish to use a custom install location with the flatpak, you may use overrides or Flatseal to edit the permissions and environment variables.
- The env vars must be an absolute path, they are literal strings and do not have ~ expansion.
- Do NOT include Risk of Rain 2 in the R2MOD_INSTALL_DIR env path, an issue with flatpak does not allow for spaces in environment variables. Just point up to steamapps/common.
- Use flatpak override --user if it is a user installed flatpak
sh
flatpak override \
--env='R2MOD_INSTALL_DIR=/home/foldex/Games/Steam/SteamLibrary/steamapps/common' \
--env='R2MOD_COMPAT_DIR=/home/foldex/Games/Steam/SteamLibrary/steamapps/compatdata/632360' \
--filesystem='~/Games/Steam/SteamLibrary/steamapps/common/Risk of Rain 2' \
--filesystem='~/Games/Steam/SteamLibrary/steamapps/compatdata/632360' \
io.github.Foldex.r2mod
Command List
Accepts shorthand for command names.
r2mod ch(eck): Check for Script Updates
r2mod del(ete) ProfileName: Delete Local Profile
r2mod dis(able) (Mod-Dependency-String): Disable Mods
r2mod ed(it) ConfigName: Edit Mod Configs
r2mod en(able) (Mod-Dependency-String): Enable Mods
r2mod exp(ort) ProfileName: Export r2modman mod profile
r2mod hol(d): Toggle Mod Updates
r2mod imp(ort) ProfileCode: Install r2modman mod profile
r2mod ins(tall) Mod-Dependency-String: Install New Mod
r2mod li(st) (count|all): List or Count Installed Mods
r2mod loa(d) ProfileName: Import Local Profile
r2mod ref(resh): Force Refresh Package Cache
r2mod run: Launch Risk of Rain
r2mod sav(e) ProfileName: Export Local Profile
r2mod sea(rch): Search for Mods
r2mod set(up): Install a Fresh BepInEx Setup
r2mod un(install) Mod-Dependency-String: Uninstall Mod
r2mod upd(ate): Update All Exisit
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.