Release 2.3 (2019-09-04)
This is primarily a bug fix release. However, it makes some incompatible changes:
- Nix now uses BSD file locks instead of POSIX file locks. Because of this, you should not use Nix 2.3 and previous releases at the same time on a Nix store.
It also has the following changes:
-
builtins.fetchGit
'sref
argument now allows specifying an absolute remote ref. Nix will automatically prefixref
withrefs/heads
only ifref
doesn't already begin withrefs/
. -
The installer now enables sandboxing by default on Linux when the system has the necessary kernel support.
-
The
max-jobs
setting now defaults to 1. -
New builtin functions:
builtins.isPath
,builtins.hashFile
. -
The
nix
command has a new--print-build-logs
(-L
) flag to print build log output to stderr, rather than showing the last log line in the progress bar. To distinguish between concurrent builds, log lines are prefixed by the name of the package. -
Builds are now executed in a pseudo-terminal, and the
TERM
environment variable is set toxterm-256color
. This allows many programs (e.g.gcc
,clang
,cmake
) to print colorized log output. -
Add
--no-net
convenience flag. This flag disables substituters; sets thetarball-ttl
setting to infinity (ensuring that any previously downloaded files are considered current); and disables retrying downloads and sets the connection timeout to the minimum. This flag is enabled automatically if there are no configured non-loopback network interfaces. -
Add a
post-build-hook
setting to run a program after a build has succeeded. -
Add a
trace-function-calls
setting to log the duration of Nix function calls to stderr.