Skip to main content

Add your description here

Project description

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

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

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.

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