Installation
carrel runs on Linux (x86_64 and arm64) and macOS (Apple silicon).
Prebuilt binaries
Download the archive for your platform from the latest release, unpack it and put carrel on your PATH:
tar xzf carrel-v*-x86_64-unknown-linux-musl.tar.gz
install carrel-v*/carrel ~/.local/bin/
| Platform | Archive |
|---|---|
| Linux, x86_64 | x86_64-unknown-linux-musl (static, runs on any distribution) |
| Linux, arm64 | aarch64-unknown-linux-musl (static) |
| macOS, Apple silicon | aarch64-apple-darwin |
Each archive comes with a .sha256 checksum.
With bin
bin picks the right archive for your platform, unpacks it and keeps track of the version:
bin install github.com/arunoruto/carrel
bin update carrel # later, to get a new release
Nix
The repository is a flake:
nix run github:arunoruto/carrel # try it
nix profile install github:arunoruto/carrel
or as a flake input, using its package or overlay:
{
inputs.carrel.url = "github:arunoruto/carrel";
# environment.systemPackages = [ inputs.carrel.packages.${pkgs.system}.default ];
# or: nixpkgs.overlays = [ inputs.carrel.overlays.default ]; then pkgs.carrel
}
The Nix package comes with its text extractor (Python with pymupdf4llm from nixpkgs), so nothing is downloaded at runtime and extraction works offline.
With Cargo
cargo install --git https://github.com/arunoruto/carrel
The text extractor
Turning PDFs into text and figures is done by an external command (see Configuration). Outside of Nix the default runs pymupdf4llm through uv, so install uv; it fetches pymupdf4llm on first use. Without it, papers are still added, just without their text.