Introduction
What rusty is, who it is for, and how the pieces fit together.
rusty is a Linux-only Cargo and rustup replacement written in Zig. One binary manages Rust toolchains, resolves dependencies into a content-addressable store, caches build layers per crate, and understands workspace monorepos natively.
Large Rust monorepos are painful with stock cargo and rustup. rusty is built around the workflows that actually hurt at scale: deduplicated storage, incremental layer caching, affected-package analysis, and a unified CLI instead of bolting scripts on top of Cargo.
Linux only
rusty will only ever run on Linux. macOS and Windows lack the filesystem semantics the content store and build cache rely on. Do not open issues or pull requests for other platforms — they will be closed.
What you get
Toolchains
Install, select, and proxy cargo, rustc, and friends through $RUSTY_HOME/bin.
Content store
pnpm-style CAS for crates, blobs, and directory trees — digests instead of sprawling caches.
Build layers
Per-crate differential cache under .rusty/. Plan hits and misses before a long build.
Workspace
affected, dependents, unify, and test-plan for monorepo CI.
Quick start
# Build from source (requires Zig)
zig build -Doptimize=ReleaseSafe
./zig-out/bin/rusty env install stable
./zig-out/bin/rusty env use stable
export PATH="${RUSTY_HOME:-$HOME/.rusty}/bin:$PATH"
rusty init my-crate --kind lib
cd my-crate
rusty fetch
rusty build
rusty testSee Installation and Your first project for the full walkthrough.
Status
Current version: 0.0.1-dev. APIs, lockfile formats, and native driver coverage are still evolving. Treat this as early access — not a drop-in production guarantee yet.