Skip to main content

No project description provided

Project description

RMM: RimWorld Mod Manager

Do you dislike DRM based platforms but love RimWorld and it's mods? RMM is cross platform mod manager that allows you to download, update, auto-sort, and configure mods for the game without relying on the Steam consumer client. RMM has a keyboard based interface that is easy to use and will be familiar to Linux users and developers.

RMM v1.0 supports Windows, Linux, and MacOS.

Prerequisites

To use RMM you need:

  • SteamCMD installed and in your path.
  • Set RMM_PATH to game path if game is installed in non default location.

Installation for Arch Linux

RMM has an AUR package 'rmm'. The package brings in all dependencies, including steamcmd, and can be installed with makepkg and git or an AUR helper as shown below. No other steps are required:

a. Makepkg:

mkdir -p ~/build ; cd ~/build
git clone https://aur.archlinux.org/rmm.git
cd rmm
makepkg -si

b. yay (AUR Helper)

yay -S rmm

Installation via PIP (PyPi)

1. Install SteamCMD

For Arch Linux, you can install steamcmd using makepkg as stated below:

mkdir -p ~/build ; cd ~/build
git clone https://aur.archlinux.org/steamcmd.git
cd steamcmd
makepkg -si

Alternatively, you can install it using a 'AUR Helper' such as yay.

yay -S steamcmd

Verify steamcmd is correctly installed with the below command:

whereis steamcmd

whereis should return a path such as below. Otherwise, ensure steamcmd is in your PATH.

steamcmd: /usr/bin/steamcmd /usr/share/steamcmd

2. Adding .local/bin to your PATH

RMM can be directly accessed with command rmm. In order for this to work, you need to add ~/.local/bin to your PATH variable, otherwise, your terminal will not find the rmm script. If you notice that you cannot run rmm after installation, try the following:

echo 'export PATH="$PATH:$HOME/.local/bin" >> ~/.bashrc

Alternatively, RMM can always called with:

python -m rmm

3. Installing package from PIP

python3 -m pip install --user rmm-spoons

Configuration

Set RMM_PATH (Optional)

If RimWorld is installed a directory other than the default ones, you should set the RMM_PATH variable to your game directory for convenience.

Set it permanently in your bashrc or zshrc files:

# Note please update this path to your actual game or mod directory
echo 'export RMM_PATH="$HOME/your/game/path" >> ~/.bashrc

Temporarily set it during your shell session:

export RMM_PATH="~/PATHTOGAME/game/Mods"

Set RMM_WORKSHOP_PATH (Optional)

You probably do not need to set this variable.

RMM supports managing mods in your Steam Workshop mods directory. If RimWorld is installed into the same library as your Workshop mods, as would be the case for most people, RMM will find your workshop directory. Otherwise, you can set this value as per the example below:

echo 'export RMM_WORKSHOP_PATH="$HOME/.local/share/Steam/steamapps/workshop" >> ~/.bashrc

Installation for Development (Developers)

Clone repository and install with pip.

mkdir -p ~/build
git clone https://github.com/Spoons/rmm.git ~/build/rmm
pip install --user ~/build/rmm

Usage

RimWorld Mod Manager

Usage:
rmm [options] config
rmm [options] export [-e]|[-d] <file>
rmm [options] import <file>
rmm [options] list
rmm [options] query [<term>...]
rmm [options] remove [-f file]|[<term>...]
rmm [options] search <term>...
rmm [options] sort
rmm [options] sync <name>...
rmm [options] update [sync options]
rmm -h | --help
rmm -v | --version

Operations:
config            Sort and enable/disable mods
export            Save mod list to file.
import            Install a mod list from a file.
list              List installed mods.
query             Search installed mods.
remove            Remove installed mod.
search            Search Workshop.
sort              Auto-sort your modslist
sync              Install or update a mod.
update            Update all mods from Steam.

Parameters
term              Name, author, steamid
file              File path
name              Name of mod.

Export Option:
-d                Export disabled mods to modlist.
-e                Export enabled mods to modlist.

Remove Options:
-f                Remove mods listed in modlist.

Options:
-p --path DIR     RimWorld path.
-w --workshop DIR Workshop Path.
-u --user DIR     User config path.

Environment Variables:
RMM_PATH          Folder containings Mods
RMM_WORKSHOP_PATH Folder containing Workshop mods (optional)
RMM_USER_PATH     Folder containing saves and config

Pathing Preference:
CLI Argument > Environment Variable > Defaults

How To

List installed packages:

rmm list

Search workshop packages:

rmm search term

Search locally installed mods

rmm query term

Install package:

rmm sync rimhud

Removing a package:

rmm remove fuzzy

Saving a mod list

rmm export ~/modlist.txt

Install mod list:

rmm import ~/modlist.txt

Update all packages:

rmm update

Backup mod directory:

rmm backup ~/rimworld.tar

Migrate from Steam Workshop to RimWorld 'Mods' folder:

rmm migrate

Tips

Duplicating a mod setup to a new installation:

rmm -p ~/path-to-game export ~/modlist.txt
rmm -p ~/path-to-game import ~/modlist.txt

Contributing

If you would like to contribute your time or efforts towards the project, you are welcome to and your efforts will be appreciated. Please format any code changes through python-black.

License

This project is licensed under the GPLv3 License - see the LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rmm-spoons-1.0.3.tar.gz (36.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rmm_spoons-1.0.3-py3-none-any.whl (32.0 kB view details)

Uploaded Python 3

File details

Details for the file rmm-spoons-1.0.3.tar.gz.

File metadata

  • Download URL: rmm-spoons-1.0.3.tar.gz
  • Upload date:
  • Size: 36.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for rmm-spoons-1.0.3.tar.gz
Algorithm Hash digest
SHA256 c81ba4eaad7be5940f7fa934054ff4bb677b6c9089d0062299595db89060b9b1
MD5 a84c3f207b58ae5130b0f218b6f1cfc2
BLAKE2b-256 bc348a1f600be6fb8902d40980b606db901e43256dbbc088cc3110fbc35642b2

See more details on using hashes here.

File details

Details for the file rmm_spoons-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: rmm_spoons-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 32.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2

File hashes

Hashes for rmm_spoons-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2a4427ee5c138c9996d9a28fbfad2cf6145c2b45fa27825b77f3ed2d8c192eb8
MD5 1ea2d62cac52501dcbda5542e4d933ec
BLAKE2b-256 c9191bfc9a7493eaf99f61fd0a28081b6f71fb450c4c6f1de667ba04d8f7551b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page