nix-build 1 Nix nix-build build a Nix expression nix-build name value name value attrPath drvlink outlink paths Description The nix-build command builds the derivations described by the Nix expressions in paths. If the build succeeds, it places a symlink to the result in the current directory. The symlink is called result. If there are multiple Nix expressions, or the Nix expressions evaluate to multiple derivations, multiple sequentially numbered symlinks are created (result, result-2, and so on). If no paths are specified, then nix-build will use default.nix in the current directory, if it exists. nix-build is essentially a wrapper around nix-instantiate (to translate a high-level Nix expression to a low-level store derivation) and nix-store --realise (to build the store derivation). The result of the build is automatically registered as a root of the Nix garbage collector. This root disappears automatically when the result symlink is deleted or renamed. So don’t rename the symlink. Options See also . All options not listed here are passed to nix-store --realise, except for and / which are passed to nix-instantiate. drvlink Add a symlink named drvlink to the store derivation produced by nix-instantiate. The derivation is a root of the garbage collector until the symlink is deleted or renamed. If there are multiple derivations, numbers are suffixed to drvlink to distinguish between them. Shorthand for ./derivation. Do not create a symlink to the output path. Note that as a result the output does not become a root of the garbage collector, and so might be deleted by nix-store --gc. / outlink Change the name of the symlink to the output path created from result to outlink. Examples $ nix-build pkgs/top-level/all-packages.nix -A firefox store derivation is /nix/store/qybprl8sz2lc...-firefox-1.5.0.7.drv /nix/store/d18hyl92g30l...-firefox-1.5.0.7 $ ls -l result lrwxrwxrwx ... result -> /nix/store/d18hyl92g30l...-firefox-1.5.0.7 $ ls ./result/bin/ firefox firefox-config