Release 2.13 (2023-01-17)
-
The
repeat
andenforce-determinism
options have been removed since they had been broken under many circumstances for a long time. -
You can now use flake references in the old command line interface, e.g.
# nix-build flake:nixpkgs -A hello # nix-build -I nixpkgs=flake:github:NixOS/nixpkgs/nixos-22.05 \ '<nixpkgs>' -A hello # NIX_PATH=nixpkgs=flake:nixpkgs nix-build '<nixpkgs>' -A hello
-
Instead of "antiquotation", the more common term string interpolation is now used consistently. Historical release notes were not changed.
-
Allow explicitly selecting outputs in a store derivation installable, just like we can do with other sorts of installables. For example,
# nix build /nix/store/gzaflydcr6sb3567hap9q6srzx8ggdgg-glibc-2.33-78.drv^dev
now works just as
# nix build nixpkgs#glibc^dev
does already.
-
On Linux,
nix develop
now sets the personality for the development shell in the same way as the actual build of the derivation. This makes shells fori686-linux
derivations work correctly onx86_64-linux
. -
You can now disable the global flake registry by setting the
flake-registry
configuration option to an empty string. The same can be achieved at runtime with--flake-registry ""
. -
Since 2.13.5, a new function
builtins.readFileType
is available. It is similar tobuiltins.readDir
but acts on a single file or directory. -
Since 2.13.5, the
builtins.readDir
function has been optimized when encountering not-yet-known file types from POSIX'sreaddir
. In such cases the type of each file was discovered by making multiple syscalls. This change makes these operations lazy such that these lookups will only be performed if the attribute is used. This optimization affects a minority of filesystems and operating systems.