4.2 KiB
Release 24.05 (“Uakari”, 2024.05/??)
Support is planned until the end of December 2024, handing over to 24.11.
Highlights
In addition to numerous new and upgraded packages, this release has the following highlights:
screen's module has been cleaned, and will now require you to setprograms.screen.enablein order to populatescreenrcand add the program to the environment.
New Services
-
Guix, a functional package manager inspired by Nix. Available as services.guix.
-
maubot, a plugin-based Matrix bot framework. Available as services.maubot.
-
Anki Sync Server, the official sync server built into recent versions of Anki. Available as services.anki-sync-server. The pre-existing services.ankisyncd has been marked deprecated and will be dropped after 24.05 due to lack of maintenance of the anki-sync-server softwares.
-
Clevis, a pluggable framework for automated decryption, used to unlock encrypted devices in initrd. Available as boot.initrd.clevis.enable.
Backward Incompatibilities
-
The
power.upsmodule now generatesupsd.conf,upsd.usersandupsmon.confautomatically from a set of new configuration options. This breaks compatibility with existingpower.upssetups where these files were created manually. Back up these files before upgrading NixOS. -
mkosiwas updated to v19. Parts of the user interface have changed. Consult the release notes for a list of changes.
Other Notable Changes
-
addDriverRunpathhas been added to facilitate the deprecation of the oldaddOpenGLRunpathsetuphook. This change is motivated by the evolution of the setuphook to include all hardware acceleration. -
Cinnamon has been updated to 6.0. Please beware that the Wayland session is still experimental in this release.
-
Programs written in Nim are built with libraries selected by lockfiles. The
nimPackagesandnim2Packagessets have been removed. See https://nixos.org/manual/nixpkgs/unstable#nim for more information. -
The Yama LSM is now enabled by default in the kernel, which prevents ptracing non-child processes. This means you will not be able to attach gdb to an existing process, but will need to start that process from gdb (so it is a child). Or you can set
boot.kernel.sysctl."kernel.yama.ptrace_scope"to 0. -
Gitea 1.21 upgrade has several breaking changes, including:
- Custom themes and other assets that were previously stored in
custom/public/*now belong incustom/public/assets/* - New instances of Gitea using MySQL now ignore the
[database].CHARSETconfig option and always use theutf8mb4charset, existing instances should migrate via thegitea doctor convertCLI command.
- Custom themes and other assets that were previously stored in
-
The
hardware.pulseaudiomodule now sets permission of pulse user home directory to 755 when running in "systemWide" mode. It fixes issue 114399. -
QtMultimedia has changed its default backend to
QT_MEDIA_BACKEND=ffmpeg(previouslygstreameron Linux ordarwinon MacOS). The previous native backends remain available but are now minimally maintained. Refer to upstream documentation for further details about each platform.