- Rust 99.7%
- Nix 0.3%
Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: Ic291383760519562a033172ea6c6d8e96a6a6964 |
||
|---|---|---|
| crates | ||
| docs | ||
| nix | ||
| pakker | ||
| .envrc | ||
| .gitignore | ||
| .rustfmt.toml | ||
| .taplo.toml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| flake.lock | ||
| flake.nix | ||
Pakker
Fast, reliable multiplatform modpack manager for Minecraft, written in Rust. Pakker manages Minecraft modpacks across CurseForge, Modrinth, and GitHub. It handles project resolution, dependency linking, lockfile updates, exports, and remote modpack workflows from a single CLI.
Core Features
- Create and import modpacks
- Add, remove, update, and inspect projects
- Resolve dependencies across supported platforms with automatic cross-platform project merging
- Manage pack configuration and per-project overrides
- Export CurseForge, Modrinth, and serverpack layouts
New in Pakker
- Work with forked packs and remote repositories
- Interactively set, configure, and test API credentials
Quick Start
- Run
pakker initto create a new modpack. - Use
pakker addorpakker add-prjto add projects. - Run
pakker exportwhen you want distributable output.
How It Works
Pakker maintains two files in your modpack directory:
pakker.json: pack metadata, paths, overrides, and per-project settingspakku-lock.json: resolved project state with platform IDs, file URLs, and dependency links
When you add a project, Pakker queries the supported platforms, merges results
into a single project record with cross-platform identifiers, resolves
dependencies recursively, and updates the lockfile. The resolver detects
circular dependencies and links related projects via pakku_links.
Acknowledgments
Pakker is greatly inspired by Pakku, and commits to bringing similar functionality with improved performance and additional features through a Rust implementation. Pakku is by no means a bad project, but I found it difficult to work with the Kotlin code.
Many thanks to teksturepako for Pakku, as well as his infinite patience, code reviews and suggestions to bring Pakker to its current state.