What problem does it solve?
Ensures Nix commands run in an explicit, pinned, and reproducible environment by inspecting flake outputs, selecting the correct entrypoint, and diagnosing evaluation or execution failures caused by missing attrs, wrong systems, private inputs, lockfile drift, or impurity.
Core Features & Use Cases
- Flake inspection: Summarizes available outputs such as packages, apps, devShells, checks, nixosConfigurations, and darwinConfigurations.
- Command selection: Guides choosing between nix run, nix develop, and nix shell and prefers the narrowest, reproducible entrypoint.
- Execution helpers: Provides scripts to inspect outputs, launch commands inside a dev shell, and emit concise reproducibility reports.
- Debugging: Classifies failures (missing attrs, wrong system, private inputs, impurity, dirty tree or lock drift) and points to targeted checks and fixes.
- Use Case: When a flake is host-oriented or uses private inputs and you must run or explain a command reproducibly and unambiguously.
Quick Start
Inspect the flake outputs, select the exact attr and system, and run the chosen command inside the pinned dev shell or with nix run to produce a reproducible result.