Analysis updated 2026-06-24
Build Rust projects inside Nix with full reproducibility without maintaining a large generated dependency file.
Run cached Clippy lint checks so only your own code is re-analyzed, not the entire dependency tree.
Pre-fetch the crates.io index on a connected machine so Rust builds work in network-isolated environments.
Run Rust integration tests through the Nix build interface with support for compiled binary invocations.
| anthropics/cargo-nix-plugin | lily-protocol/lily-contracts | nhodges/yt-dlv | |
|---|---|---|---|
| Stars | 13 | 13 | 13 |
| Language | Rust | Rust | Rust |
| Setup difficulty | hard | hard | moderate |
| Complexity | 4/5 | 4/5 | 3/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Must be compiled against the exact same Nix version that loads it, version mismatches break the plugin silently.
cargo-nix-plugin is a plugin for the Nix package manager that makes it easier to build Rust projects reproducibly. Nix is a build system focused on making builds fully deterministic: the same inputs always produce the same outputs, with no hidden dependencies. When you want to build a Rust project inside Nix, you need to tell Nix about all the dependencies Cargo manages, which has traditionally required generating a large intermediate file that describes the full dependency graph. This plugin replaces that approach. Instead of generating a file with tens of thousands of lines, the plugin adds a built-in function to Nix called resolveCargoWorkspace that reads your Cargo.lock file directly and fetches the minimal amount of information it needs from the crates.io package index, without requiring the cargo tool itself to be installed. It returns dependency information in a format Nix already knows how to use to compile Rust code. You can also pass pre-generated metadata from cargo if your build environment does not have network access, or pre-populate the index cache on a connected machine using a companion tool called cargo-nix-prefetch and then point the plugin at that local cache. Beyond basic builds, the plugin includes support for cached Clippy checks. Clippy is a Rust linting tool that checks your code for common mistakes. The plugin compiles dependencies once and caches them in the Nix store, so re-running Clippy only processes your own code rather than every library you depend on. Tests can also be run through the same interface, with support for integration tests that invoke compiled binaries. The plugin requires that it be compiled against the same version of Nix that loads it, so keeping versions in sync matters when upgrading.
A Nix plugin that makes Rust builds fully reproducible by reading Cargo.lock directly via a built-in resolveCargoWorkspace function, replacing large generated dependency files and adding cached Clippy lint support.
Mainly Rust. The stack also includes Rust, Nix, crates.io.
No license information is mentioned in the explanation.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.