Skip to main content

rimpack

rimpack is a Python CLI for building, validating, and launching RimWorld modpacks from human-authored project files.

It treats a modpack as a normal project directory:

  • pack.toml is the root manifest.
  • mods/*.list files define authored mod intent.
  • rules/ contains optional activation and ordering rules.
  • generated/ contains outputs that can be regenerated.
  • launch state stays machine-local instead of mutating the real RimWorld install.

The repository is spec-driven. The authoritative behavior and file-format definitions live in specs/.

Current Capabilities

Today, rimpack can:

  • initialize a new modpack project with rimpack init
  • inspect RimWorld mods with rimpack load-mods
  • resolve Steam Workshop items with rimpack resolve steam
  • copy a Workshop mod into the current pack's local/mods with rimpack localize
  • subscribe and unsubscribe Workshop mods
  • add mod references to a declared .list file with rimpack add
  • append ordering rules with rimpack add-ordering-rule
  • validate a modpack before launch with rimpack validate
  • launch a modpack through a symlinked runtime tree with rimpack launch

Activation rule files are supported by the project format and validation pipeline, but there is not yet a dedicated CLI command to author them.

Install

The project uses Python 3.12+ and uv.

uv sync --dev
uv run rimpack --help

You can also run the console script directly after syncing:

rimpack --help

First Run

Running rimpack with no command creates a user-local config file if one does not already exist. That config stores absolute machine-local paths such as:

  • the RimWorld install directory
  • the Steam Workshop content directory for app 294100

You can also provide them through environment variables:

  • RIMWORLD_FOLDER
  • STEAM_WORKSHOP_FOLDER

Quick Start

Initialize a new pack:

uv run rimpack init .\MyPack

Add a Workshop mod to the @libraries list:

uv run rimpack add @libraries steam:2009463077

Copy a Workshop mod into the current pack's local/mods directory:

uv run rimpack localize steam:2009463077

Validate the pack:

uv run rimpack validate

Leave temporarily resolved Workshop mods subscribed after validation:

uv run rimpack validate --no-clean

Launch it:

uv run rimpack launch

Documentation

Browsable project documentation lives in docs/:

A GitHub Actions workflow publishes those docs to GitHub Pages on pushes to main.

Development

The expected local checks are:

uv run ruff check .
uv run basedpyright
uv run pytest

Download files

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

Source Distribution

rimpack-0.2.3.tar.gz (103.8 kB view details)

Uploaded Source

Built Distribution

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

rimpack-0.2.3-py3-none-any.whl (51.0 kB view details)

Uploaded Python 3

File details

Details for the file rimpack-0.2.3.tar.gz.

File metadata

  • Download URL: rimpack-0.2.3.tar.gz
  • Upload date:
  • Size: 103.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.5

File hashes

Hashes for rimpack-0.2.3.tar.gz
Algorithm Hash digest
SHA256 0d02ab2514dd9e7e5086a9f764a1976aa4730d5344b10fb29da83b0ba32ae889
MD5 d917218e569b8c12b7985970577d3668
BLAKE2b-256 2c0cf9ea2024959f38261934511dcbf1fc5a1c6db00d17b2d7395f121a5e3fbe

See more details on using hashes here.

File details

Details for the file rimpack-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: rimpack-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 51.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.5

File hashes

Hashes for rimpack-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1a80a2e7042c1121d16a3f60b8a87cbafb4571564de5f2df9ec8bdb57bc0155e
MD5 8138e593ba03ec2f83fa2f0734dfcd08
BLAKE2b-256 80e47d58d86fe7a5318c6d7a45baae914e479a7e4acb50468ac7bd6c07ff80b9

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.3 This release

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

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