Nix
A powerful, purely functional package manager and build system that guarantees highly reproducible, isolated software builds across different machines.
What it is
Nix takes a radical approach to dependency management by storing all packages in isolation using cryptographic hashes. This prevents "dependency hell" where upgrading a library breaks another app. With Nix, a developer can declaratively define a project's exact environment, ensuring that a build on a Mac perfectly matches the build on a Linux CI server.
When you would use it
You use Nix when standard package managers fail to provide the strict reliability and reproducibility your team needs, ensuring that a project builds identically on every developer's machine forever.
Common operations
- Creating entirely isolated, reproducible development environments without Docker.
- Building complex software with exactly deterministic outputs.
Related terms
Where this is taught
No learning path uses this term yet. Browse the Learning Atlas for guided sequences through related ideas.