Jump to content

Translations:Nix (package manager)/1/en

From NixOS Wiki
Introduction to Nix

Tools and applications

⤧︎
Disambiguation: This article is about the Nix package manager. Not to be confused with the Nix ecosystem, the Nix language or the Nix command.

Nix is a package manager and build system that parses reproducible build instructions specified in the Nix Expression Language, a pure functional language with lazy evaluation. Nix expressions are pure functions[1]taking dependencies as arguments and producing a derivation specifying a reproducible build environment for the package. Nix stores the results of the build in unique addresses specified by a hash of the complete dependency tree, creating an immutable package store (aka the nix store) that allows for atomic upgrades, rollbacks and concurrent installation of different versions of a package, essentially eliminating dependency hell.

  1. Values cannot change during computation. Functions always produce the same output if their input does not change.