Skip to content
Getting Started

Building from a git checkout uses the toolchain pinned in rust-toolchain.toml, which rustup installs on first use. cargo install builds with your own toolchain and needs Rust 1.95 or newer, the crate's rust-version. Release binaries have no Rust runtime dependency.

mise use -g github:kunobi-ninja/kache@latest

To pin Kache in a project:

[tools]
"github:kunobi-ninja/kache" = "latest"
cargo binstall kache

This downloads a release binary when one exists for your target.

cargo install kache

Cargo builds Kache with your local Rust toolchain.

Release candidates do not resolve as latest. Request their full x.y.z-rc.n version explicitly.

Package managers

brew install kunobi-ninja/kunobi/kache

Use kunobi-ninja/kunobi/kache-unstable for release candidates and betas.

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://r2.kunobi.com/kache/apt/gpg.key \
  | sudo gpg --dearmor -o /etc/apt/keyrings/kache.gpg
echo "deb [signed-by=/etc/apt/keyrings/kache.gpg] https://r2.kunobi.com/kache/apt stable main" \
  | sudo tee /etc/apt/sources.list.d/kache.list
sudo apt update
sudo apt install kache

Replace stable with unstable to receive prereleases as well as stable releases.

The package also installs compiler-name shims in /usr/lib/kache. Prepend that directory to PATH to cache Make and CMake object compiles. See C and C++.

winget install kunobi-ninja.kache
# or
scoop bucket add kunobi https://github.com/kunobi-ninja/scoop-kunobi
scoop install kunobi/kache
# or
choco install kache

The corresponding prerelease packages are kunobi-ninja.kache.Unstable, kunobi/kache-unstable, and choco install kache --pre.

paru -S kache-bin

kache-bin is the official prebuilt package. kache-git builds the current main branch; the community kache package builds a release from source.

Both official packages install compiler-name shims in /usr/lib/kache. For makepkg, put PATH="/usr/lib/kache:$PATH" in ~/.makepkg.conf.

Nix

The stable branch follows released versions:

nix run github:kunobi-ninja/kache/stable -- --version
nix profile install github:kunobi-ninja/kache/stable

Pin a release tag when updates must be explicit:

nix profile install github:kunobi-ninja/kache/v0.14.2

The flake also exports an overlay, NixOS module, and nix-darwin module. See the repository flake.nix for their current names and options.

The package includes cc, c++, gcc, g++, clang, and clang++ symlinks in ${kache}/shims. With this flake's overlays.default applied, enable them in your NixOS configuration:

{ pkgs, ... }:
{
  environment.systemPackages = [ pkgs.kache ];
  environment.sessionVariables = {
    RUSTC_WRAPPER = "${pkgs.kache}/bin/kache";
    PATH = [ "${pkgs.kache}/shims" ];
  };
}

Keep the real compilers later in PATH. The shims cover C and C++; Rust still uses RUSTC_WRAPPER. Nix builds the symlinks, so no kache install-shims step is needed. The existing ${kache}/lib/kache path remains available.

Supported release targets

PlatformArchitectures
Linux, muslx86_64, aarch64
macOSx86_64, Apple silicon
Windows, MSVCx86_64, ARM64

Other Rust-supported targets may work through cargo install, but they are not release-tested targets.

Verify the install

kache --version
kache doctor

Next, follow the quick start.

Available for:
Apple macOS logomacOSMicrosoft Windows logoWindowsLinux logoLinux
Download Kunobi