1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-25 02:21:16 +02:00
nix/doc/manual/src/release-notes/rl-next.md
Linus Heckemann 8e0946e8df Remove repeat and enforce-determinism options
These only functioned if a very narrow combination of conditions held:

- The result path does not yet exist (--check did not result in
  repeated builds), AND
- The result path is not available from any configured substituters, AND
- No remote builders that can build the path are available.

If any of these do not hold, a derivation would be built 0 or 1 times
regardless of the repeat option. Thus, remove it to avoid confusion.
2022-12-07 11:36:48 +01:00

2 KiB

Release X.Y (202?-??-??)

  • <nix/fetchurl.nix> now accepts an additional argument impure which defaults to false. If it is set to true, the hash and sha256 arguments will be ignored and the resulting derivation will have __impure set to true, making it an impure derivation.

  • If builtins.readFile is called on a file with context, then only the parts of that context that appear in the content of the file are retained. This avoids a lot of spurious errors where some benign strings end-up having a context just because they are read from a store path (#7260).

  • Nix can now automatically pick UIDs for builds, removing the need to create nixbld* user accounts.

    See auto-allocate-uids.

  • On Linux, Nix can now run builds in a user namespace where the build runs as root (UID 0) and has 65,536 UIDs available.

    This is primarily useful for running containers such as systemd-nspawn inside a Nix build. For an example, see tests/systemd-nspawn/nix.

    A build can enable this by by setting the derivation attribute:

    requiredSystemFeatures = [ "uid-range" ];
    

    The uid-range system feature requires the auto-allocate-uids setting to be enabled.

  • On Linux, Nix has experimental support for running builds inside a cgroup.

    See use-cgroups.

  • nix build --json now prints some statistics about top-level derivations, such as CPU statistics when cgroups are enabled.

  • The repeat and enforce-determinism options have been removed since they had been broken under many circumstances for a long time.