Compiling Garage from source

2 min

Garage is a standard Rust project. First, you need rust and cargo. For instance on Debian:

sudo apt-get update
sudo apt-get install -y rustc cargo

You can also use Rustup to setup a Rust toolchain easily.

In addition, you will need a full C toolchain. On Debian-based distributions, it can be installed as follows:

sudo apt-get update
sudo apt-get install build-essential

Using source from

Garage's source code is published on, Rust's official package repository. This means you can simply ask cargo to download and build this source code for you:

cargo install garage

That's all, garage should be in $HOME/.cargo/bin.

You can add this folder to your $PATH or copy the binary somewhere else on your system. For instance:

sudo cp $HOME/.cargo/bin/garage /usr/local/bin/garage

Using source from the Gitea repository

The primary location for Garage's source code is the Gitea repository.

Clone the repository and build Garage with the following commands:

git clone
cd garage
cargo build

Be careful, as this will make a debug build of Garage, which will be extremely slow! To make a release build, invoke cargo build --release (this takes much longer).

The binaries built this way are found in target/{debug,release}/garage.