---
title: Installation
description: How to install kache using mise, cargo-binstall, or from source.
---

# Installation

kache requires Rust 1.95 or later and is built with the 2024 edition (`Cargo.toml` `edition = "2024"`). The binary is self-contained — no runtime dependencies.

## Methods

<Tabs items={["mise (recommended)", "cargo-binstall", "from source"]}>
  <Tab value="mise (recommended)">
    [mise](https://mise.jdx.dev) downloads the pre-built binary from GitHub releases and pins the version per project or globally.

    ```sh
    # install globally
    mise use -g github:kunobi-ninja/kache@latest

    # or pin a specific version
    mise use -g github:kunobi-ninja/kache@0.5.0
    ```

    To pin kache in your project so every contributor gets the same version, add it to your `mise.toml`:

    ```toml
    [tools]
    "github:kunobi-ninja/kache" = "latest"
    ```

    Running `mise install` in the project root will install the pinned version.
  </Tab>
  <Tab value="cargo-binstall">
    [cargo-binstall](https://github.com/cargo-bins/cargo-binstall) downloads the pre-built binary from GitHub releases without compiling.

    ```sh
    cargo binstall kache
    ```

    Every release (including RCs) is published to crates.io, so the plain crate
    name works. To install an unreleased branch build instead, use the `--git`
    form: `cargo binstall --git https://github.com/kunobi-ninja/kache kache`.

    If a pre-built binary isn't available for your target, use the source install method below.
  </Tab>
  <Tab value="from source">
    ```sh
    cargo install kache
    ```

    This compiles kache with your local toolchain. It takes a couple of minutes
    and works on Linux, macOS, and Windows (with the MSVC toolchain). To build an
    unreleased branch instead, use `cargo install --git https://github.com/kunobi-ninja/kache kache`.
  </Tab>
</Tabs>

<Callout type="info">
  The methods above install the latest **stable** release. Release-candidates are
  published but never resolve as "latest", so request one explicitly:
  `cargo install kache --version 0.6.0-rc.1` (or `cargo binstall kache@0.6.0-rc.1`).
</Callout>

## Supported platforms

Pre-built binaries are available for:

| Target | Notes |
|---|---|
| `x86_64-unknown-linux-musl` | Statically linked, works on any Linux |
| `aarch64-unknown-linux-musl` | ARM Linux (AWS Graviton, etc.) |
| `x86_64-apple-darwin` | Intel macOS |
| `aarch64-apple-darwin` | Apple Silicon |
| `x86_64-pc-windows-msvc` | Windows x64 (MSVC) |
| `aarch64-pc-windows-msvc` | Windows ARM64 (MSVC) |

## Verify the installation

```sh
kache --version
```

You should see a version string like `kache 0.5.0`. If the command isn't found, make sure the binary is on your `PATH` (mise handles this automatically).

## Next: enable kache for cargo

Installing the binary doesn't yet wire it into cargo. Run `kache init` to configure your cargo config (`~/.cargo/config.toml`, or the legacy `~/.cargo/config` if that file already exists), install the daemon as a login service, and start it — see [Quick start](/docs/getting-started/quick-start) for the full walkthrough.
