Home Explore Blog CI



nixpkgs

18th chunk of `nixos/doc/manual/release-notes/rl-2405.section.md`
da83fb434b01a0d854c6e409c7bb2520d7fba4b3c5312dc20000000100001073
- `xfsprogs` was updated to version 6.6.0, which enables reverse mapping (rmapbt) and large extent counts (nrext64) by default.
   Support for these features was added in kernel 4.9 and 5.19 and nrext64 was deemed stable in kernel 6.5.
   Format your filesystems with `mkfs.xfs -i nrext64=0`, if they need to be readable by GRUB2 before 2.12 or kernels older than 5.19.

- `xxd` has been moved from `vim` default output to its own output to reduce closure size. The canonical way to reference it across all platforms is `unixtools.xxd`.

- `youtrack` was bumped to 2023.3. The update is not performed automatically, it requires manual interaction. See the YouTrack section in the manual for details.

- Ada packages (libraries and tools) have been moved into the `gnatPackages` scope. `gnatPackages` uses the default GNAT compiler, `gnat12Packages` and `gnat13Packages` use the respective matching compiler version.

- Paths provided as `restartTriggers` and `reloadTriggers` for systemd units will now be copied into the Nix store to make the behavior consistent.
  Previously, `restartTriggers = [ ./config.txt ]`, if defined in a flake, would trigger a restart when any part of the flake changed; and if not defined in a flake, would never trigger a restart even if the contents of `config.txt` changed.

- A warning has been added for services that are
  `after = [ "network-online.target" ]` but do not depend on it (e.g. using
  `wants`), because the dependency that `multi-user.target` has on
  `network-online.target` is planned for removal.

- switch-to-configuration does not directly call systemd-tmpfiles anymore.
  Instead, the new artificial sysinit-reactivation.target is introduced which
  allows to restart multiple services that are ordered before sysinit.target
  and respect the ordering between the services.

- `services.prometheus.exporters.snmp`'s configuration format changed with release 0.23.0.
  The module now includes an optional config check, that is enabled by default, to make the change obvious before any deployment.
  More information about the configuration syntax change is available in the [upstream repository](https://github.com/prometheus/snmp_exporter/blob/b75fc6b839ee3f3ccbee68bee55f1ae99555084a/auth-split-migration.md).

## Other Notable Changes {#sec-release-24.05-notable-changes}

<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

- `addDriverRunpath` has been added to facilitate the deprecation of the old `addOpenGLRunpath` setuphook. This change is motivated by the evolution of the setuphook to include all hardware acceleration.

- `appimage`, `appimageTools.wrapAppImage` and `buildFHSEnvBubblewrap` now properly accept `pname` and `version`.

- `bacula` now allows to configure `TLS` for encrypted communication.

- `boot.initrd.network.ssh.authorizedKeyFiles` is a new option in the initrd ssh daemon module, for adding authorized keys via list of files.

- `boot.kernel.sysctl."net.core.wmem_max"` changed from a string to an integer because of the addition of a custom merge option (taking the highest value defined to avoid conflicts between 2 services trying to set that value), just as `boot.kernel.sysctl."net.core.rmem_max"` since 22.11.

- `boot.loader.systemd-boot.xbootldrMountPoint` is a new option for setting up a separate [XBOOTLDR partition](https://uapi-group.org/specifications/specs/boot_loader_specification/) to store boot files. Useful on systems with a small EFI System partition that cannot be easily repartitioned.

- `boot.loader.systemd-boot` will now verify that `efiSysMountPoint` (and `xbootldrMountPoint` if configured) are mounted partitions.

- `buildDubPackage` can now be used to build Programs written in [D](https://dlang.org/) using the `dub` build system and package manager.
  See the [D section](https://nixos.org/manual/nixpkgs/unstable#dlang) in the manual for more information.

- `castopod` has some migration actions to be taken in case of a S3 setup. Some new features may also need some manual migration actions. See [https://code.castopod.org/adaures/castopod/-/releases](https://code.castopod.org/adaures/castopod/-/releases) for more information.

Title: NixOS 24.05: Notable Changes (Packages, Systemd, and Build)
Summary
This section details notable changes in NixOS 24.05, including updates to `xfsprogs`, `xxd`, `youtrack`, and Ada packages. It covers changes to systemd unit paths, warnings for `network-online.target` dependencies, and the introduction of `sysinit-reactivation.target`. Additionally, it mentions configuration format changes for `services.prometheus.exporters.snmp`, the addition of `addDriverRunpath`, improved `appimage` handling, `bacula` TLS configuration, `boot.initrd.network.ssh.authorizedKeyFiles`, integer type change for `boot.kernel.sysctl."net.core.wmem_max"`, `boot.loader.systemd-boot.xbootldrMountPoint`, `systemd-boot` verification, `buildDubPackage` support, and migration actions for `castopod`.