Skip to content
BX-TeamPublic

About

A native Minecraft launcher and modpack toolkit in pure Rust

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Riven Logo

Riven

A native Minecraft launcher and modpack toolkit in pure Rust — install, update and build packs from one app or one CLI.

Chat on Discord github

🖼️ Showcase

Screenshots

Instances and mods

Developer mode

Config editor

Releases

✨ Features

  • Launcher — instances, Microsoft and offline accounts, automatic Java, Vanilla / Fabric / Quilt / NeoForge / Forge, logs and crash reports.
  • Modpacks from a link — Modrinth modpacks, .mrpack, Prism exports and Riven packs; a pack updates itself before every launch.
  • Own pack format — one riven.json with pinned versions and hashes, edited through the app or the CLI, never by hand.
  • Sources — Modrinth, GitHub Releases, direct URLs and local files, with dependency resolution and conflict checks.
  • Fast, safe updates — release channels, a tiny pointer checked with ETag, content-addressed downloads, ed25519 signatures.
  • Developer mode — content table, dependency tree, config editor, releases, git and a test instance in one window.
  • Servers and Nix — headless riven install --side server, and a Nix library that builds a pack without a fixed-output hash.

📦 Installation

Download for Windows Portable for Windows Download for macOS AppImage for Linux Package for Debian and Ubuntu Package for Fedora Package for Arch Linux Run with Nix

ARM64 Linux: AppImage · .deb · .rpm. Every file of every version is on the Releases page.

The macOS app is not notarized: right-click → Open the first time.

For servers, riven-cli-<arch>-<os> archives hold the CLI without the GUI and its libraries:

riven install --side server --dir /srv/mc --headless gh:owner/pack

The launcher updates itself from GitHub Releases (Settings → About), the CLI with riven self-update. Copies from a package manager or Nix are updated there instead.

⌨️ CLI

riven with no arguments opens the launcher; a subcommand runs in the terminal.

riven init --mc 1.21.1 --loader neoforge   # new riven.json
riven add sodium                           # with its dependencies
riven update --dry-run                     # preview newer versions
riven build --channel stable               # signed release in dist/
riven deploy                               # dist/ → GitHub Pages

Every command is described in the documentation.

❄️ Nix

Run the launcher without installing:

nix run --accept-flake-config github:BX-Team/Riven/v1.1.1

Releases are built for x86_64-linux and aarch64-linux and pushed to Cachix, so a tagged version downloads instead of compiling. --accept-flake-config lets Nix use the cache the flake names — if you are a trusted Nix user (trusted-users); otherwise Nix ignores it and compiles. Without a tag Nix takes master, which may not be in Cachix yet and then compiles from source.

To use the cache in any case, add it to your system:

nix = {
  settings = {
    substituters = [
      "https://bx-team.cachix.org"
    ];
    trusted-public-keys = [
      "bx-team.cachix.org-1:tnGNc1rsS8QOav+VGxXCZzf/Y0/SGchOwVCCBA/eG6E="
    ];
  };
};

The flake exposes packages.<system>.riven and riven-cli, plus lib.mkModpack, which turns a pack repository into a server's mods and configs — every file is its own fetchurl, no packHash:

modpack = riven.lib.mkModpack {
  inherit pkgs;
  src = ./.;
  side = "server";
  groups.velocity = true;
};

🔨 Build from source

Riven is a single pure-Rust gpui application. It needs the toolchain pinned in rust-toolchain.toml.

git clone https://github.com/BX-Team/Riven.git
cd Riven
cargo run                                        # launcher + CLI
cargo run --no-default-features --features cli   # CLI only
cargo build --release                            # target/release/riven

On Linux the launcher also needs the gpui system libraries (Wayland, X11, xkbcommon, Vulkan, fontconfig), or just nix develop.

🤝 Contributing

Ideas, bug reports and pull requests are welcome in Issues or on Discord.

⚖️ License

This project is licensed under the GPL-3.0-or-later License — see the LICENSE file for details.

💛 Credits

About

A native Minecraft launcher and modpack toolkit in pure Rust

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages