NixOS is een Linux-distributie met een packagemanager die het mogelijk maakt om de configuratie declaratief te maken, in plaats van die op te bouwen uit een sequentie van commando's en configuratiebestanden. Onder de motorkap gebruikt Nix een functionele programmeertaal waarmee het systeem of de configuratie kan worden gedefinieerd. Nix is bedacht door Eelco Dolstra, een Nederlandse informaticus die aan de Universiteit van Utrecht op NixOS is gepromoveerd. Meer informatie over NixOS kan op ons eigen forum worden gevonden. Kort geleden is versie 24.05 van NixOS uitgekomen en de belangrijkste veranderingen die daarin zijn aangebracht zijn hieronder voor je op een rijtje gezet.
Release 24.05 (“Uakari”) HighlightsIn addition to numerous new and upgraded packages, this release has the following highlights:
- The default kernel package has been updated from 6.1 to 6.6. All supported kernels remain available.
- For each supporting version of the Linux kernel, firmware blobs are compressed with zstd. For firmware blobs this means an increase of 4.4% in size, however a significantly higher decompression speed.
- NixOS now installs a stub ELF loader that prints an informative error message when users attempt to run binaries not made for NixOS.
- This can be disabled through the
environment.stub-ld.enable
option.- If you use
programs.nix-ld.enable
, no changes are needed. The stub will be disabled automatically.- On flake-based NixOS configurations using
nixpkgs.lib.nixosSystem
, NixOS will automatically setNIX_PATH
and the system-wide flake registry (/etc/nix/registry.json
) to point<nixpkgs>
and the unqualified flake pathnixpkgs
to the version of nixpkgs used to build the system.
This makesnix run nixpkgs#hello
andnix-build '<nixpkgs>' -A hello
work out of the box with no added configuration, reusing dependencies already on the system. This may be undesirable if Nix commands are not going to be run on the built system since it adds nixpkgs to the system closure. For such closure-size-constrained non-interactive systems, this setting should be disabled. To disable it, set nixpkgs.flake.setNixPath and nixpkgs.flake.setFlakeRegistry to false.- NixOS AMIs are now uploaded regularly to a new AWS Account. Instructions on how to use them can be found on https://nixos.github.io/amis. We are working on integrating the data into the NixOS homepage. The list in
nixos/modules/virtualisation/amazon-ec2-amis.nix
will stop being updated and will be removed in the future.- It is now possible to have a completely perlless system (i.e. a system without perl). Previously, the NixOS activation depended on two perl scripts which can now be replaced via an opt-in mechanism. To make your system perlless, you can use the new perlless profile:
{ modulesPath, ... }: { imports = [ "${modulesPath}/profiles/perlless.nix" ]; }
- Cinnamon has been updated to 6.0. Please be aware that the Wayland session is still experimental in this release and could potentially affect Xorg sessions. We suggest a reboot when switching between sessions.
- GNOME has been updated to 46 “Kathmandu”. Refer to the release notes for more details. Notably this release brings experimental VRR support, default GTK renderer changes and WebDAV support in Online Accounts. This release we have also stopped including the legacy and unsupported Adwaita-Dark theme by default.
- Lomiri (formerly known as Unity8) desktop mode, using Mir 2.x to function as a Wayland compositor, is now available and can be installed with
services.desktopManager.lomiri.enable = true
. Note that some core applications, services and indicators have yet to be packaged, and some functions may remain incomplete, but the base experience should be there.- LXQt has been updated to 2.0, which is based on Qt 6 and features Wayland support for many applications.
- MATE has been updated to 1.28.
- To properly support panel plugins built with Wayland (in-process) support, we are introducing the
services.xserver.desktopManager.mate.extraPanelApplets
option, please use that for installing panel applets.- Similarly, please use the
services.xserver.desktopManager.mate.extraCajaExtensions
option for installing Caja extensions.- To use the Wayland session, enable
services.xserver.desktopManager.mate.enableWaylandSession
. This is opt-in for now as it is in early an stage and introduces a new set of Wayfire closures. Due to known issues with LightDM, we suggest using SDDM as the display manager.- Plasma 6 is now available and can be installed with
services.xserver.desktopManager.plasma6.enable = true;
. Plasma 5 will likely be deprecated in the next release (24.11). Note that Plasma 6 runs as Wayland by default, and the X11 session needs to be explicitly selected if necessary.