De ontwikkelaars van NixOS hebben een release aangekondigd NixOS 26.05 "Yarara" — een nieuwe stabiele versie van de distributie, gebaseerd op declaratieve systeemconfiguratie en de Nix-pakketbeheerder. De release zal bugfixes en beveiligingsupdates ontvangen tot 31 december 2026, en de vorige tak NixOS 25.11 «Xantusia» is als verouderd verklaard en zal het einde van de ondersteuning bereiken op 30 juni 2026.
Bij de voorbereiding van de release waren 2842 ontwikkelaars betrokken, die 59.703 commits hebben ingediend sinds de vorige release. In Nixpkgs zijn 20.442 nieuwe pakketten toegevoegd, zijn er 20.641 pakketten geüpdatet, en zijn er 17.532 verouderde pakketten verwijderd. In NixOS zijn er 85 nieuwe modules en 1547 nieuwe configuratieparameters.
Belangrijkste wijzigingen
Stage 1/initrd draait nu standaard op systemd.
De vroege opstartfase, verantwoordelijk voor het voorbereiden van het systeem voordat het hoofd-OS wordt opgestart, is overgezet naar systemd. De oude scriptversie is als verouderd verklaard en zal worden verwijderd in NixOS 26.11. Tijdelijk kan met boot.initrd.systemd.enable = false worden teruggekeerd naar het oude gedrag, maar de ontwikkelaars raden deze weg niet aan. Voor systemen met LUKS-schijven zijn er aparte details over de migratie, inclusief het correct opgeven van /dev/mapper/ en het wijzigen van het gedrag van de prompt voor het wachtwoord.system.nix is toegevoegd als alternatieve toegangspunt voor configuratie.
Naast de gebruikelijke configuration.nix en flake.nix kan nu ook system.nix worden gebruikt. Dit maakt configuratie van NixOS zonder nix-channel mogelijk, bijvoorbeeld met een expliciet vastgelegd archief van Nixpkgs. Standaard wordt het bestand gezocht als /etc/nixos/system.nix, maar de pad kan worden gewijzigd via , —file en —attr.De Linux-kernel is standaard geüpdatet van 6.12 naar 6.18.
De andere ondersteunde takken van de kernel blijven beschikbaar zoals voorheen: de gebruiker kan de gewenste versie kiezen via de NixOS-configuratie.D-Bus is standaard vervangen door dbus-broker.
In plaats van de klassieke uitvoering van dbus wordt nu dbus-broker gebruikt, dat wordt gepositioneerd als prestatieverhogend en betrouwbaarder, met behoud van compatibiliteit met de referentie-implementatie van D-Bus. Overschakelen naar de implementatie vereist een herstart, aangezien het veilig herstarten van D-Bus midden in een gebruikerssessie niet mogelijk is. Indien nodig kan de oude implementatie worden behouden via services.dbus.implementation = "dbus";De testdriver van NixOS heeft een backend op systemd-nspawn gekregen.
Integratietests kunnen nu niet alleen worden uitgevoerd in QEMU-VM's, maar ook in systemd-nspawn-containers. Dit zou de tests moeten versnellen en het gebruik van middelen moeten verminderen waar volledige ondersteuning niet nodig is. virtuele machine Daarnaast is het mogelijk om GPU/CUDA-belastingen te testen door hostapparaatknooppunten naar binnen te binden in de containers.Belangrijke componenten van Nixpkgs zijn bijgewerkt.
GCC is bijgewerkt van 14 naar 15, Node.js standaard van 22 LTS naar 24 LTS, Ruby van 3.3 naar 3.4. Voor GCC en Node.js waarschuwen de ontwikkelaars specifiek voor mogelijke achterwaartse incompatibele wijzigingen.GNOME is bijgewerkt naar versie 50 'Tokyo'.
De release bevat GNOME 50, dat verbeteringen in toegankelijkheid, schermondersteuning en andere veranderingen in de desktopomgeving biedt.De laatste release van Nixpkgs met ondersteuning voor x86_64-darwin.
Nixpkgs 26.05 zal de laatste release zijn met ondersteuning voor Intel macOS. Binaire builds en ondersteuning voor het platform blijven behouden tot het einde van de levenscyclus van 26.05, maar in 26.11 zullen de builds voor x86_64-darwin en de ondersteuning voor builds vanuit de bron worden stopgezet.
Nieuwe modules
In NixOS 26.05 zijn veel nieuwe modules toegevoegd voor services en programma's. Onder de opvallende zijn:
- services.openthread-border-router — een module voor OpenThread Border Router, de gateway tussen Thread mesh-netwerken en IP-netwerken.
- programs.atuin — integratie van Atuin voor synchronisatie, zoeken en back-up van de geschiedenis van de commandoregel.
- services.meshtasticd — ondersteuning voor Meshtastic, een gedecentraliseerd mesh-netwerk voor low-power apparaten.
- services.reaction — een daemon die vergelijkbaar is met fail2ban: analyseert de uitvoer van programma's en kan adressen blokkeren bij herhaalde autorisatie-fouten.
- services.vinyl-cache — een nieuwe module na de hernoeming van het project Varnish Cache in Vinyl Cache; de oude services.varnish is voorlopig behouden voor migratie.
- services.rqbit — een BitTorrent-client geschreven in Rust met HTTP API en een webinterface.
- services.tailscale.serve — declaratieve configuratie van Tailscale Serve voor het publiceren van lokale services in tailnet.
Er zijn ook modules toegevoegd voor ImmichFrame, PdfDing, mangowc, papra, kiwix-serve, nohang, Clevis/LUKS askpass, Rustical, Ente Auth, linkding, Tinyauth, Dawarich, Perses, tabbyAPI, Headplane en verschillende andere services.
Veranderingen voor beheerders en werkstations
De NVIDIA-configuratie is declaratiever geworden.
Er is een parameter hardware.nvidia.branch toegevoegd om de tak van de driver te kiezen, de koppeling van de NixOS-module is bijgewerkt met de nieuwe lay-out van het nvidia-x11-pakket, en de parameters van de kernelmodule kunnen nu worden ingesteld via hardware.nvidia.moduleParams, waarna ze in de modprobe-configuratie worden opgeslagen, in plaats van via de globale kernelopdrachtregel te worden doorgegeven.Wine is geüpdatet naar versie 11.0.
Voor gebruikers die Windows-applicaties en games via Wine draaien, betekent dit een overstap naar de nieuwe grote versie van Wine als onderdeel van de stabiele pakketset NixOS 26.05.ACME-certificaten hebben dynamische verlengingstijden gekregen.
Als security.acme.defaults.validMinDays niet is ingesteld, berekent NixOS nu het verlengingsmoment op basis van de looptijd van het certificaat: voor reguliere certificaten vindt verlenging plaats na twee derde van de levensduur, voor kortlevende certificaten na de helft van de looptijd.OpenSSH heeft nieuwe parameters gekregen.
Host keys kunnen nu worden gegenereerd via services.openssh.generateHostKeys = true, zelfs als de SSH-server zelf niet is ingeschakeld. Dit is nuttig voor systemen die SSH-hostkeys nodig hebben voor andere taken, zoals agenix of sops-nix. Daarnaast is er een parameter services.openssh.enableRecommendedAlgorithms toegevoegd, waarmee de aanbevolen algoritmeset van NixOS kan worden afgewezen.Nextcloud wordt standaard bijgewerkt naar v33 voor nieuwe systemen.
Voor configuraties met system.stateVersion >= 26.05 wordt standaard pkgs.nextcloud33 gebruikt. De ontwikkelaars waarschuwen dat een directe update van Nextcloud 31 of oudere versies naar 33 niet mogelijk is: je moet eerst door een tussenliggende versie gaan.Ruisachtige logging van geweigerde firewallverbindingen is uitgeschakeld.
De parameter networking.firewall.logRefusedConnections is nu standaard ingesteld op false, aangezien op servers, beschikbaar vanuit het internet, dergelijke berichten snel de kernel ring buffer kunnen vervuilen en nuttigere diagnostische informatie kunnen verdringen.glibc is geüpdatet naar 2.42.
De nieuwe versie maakt de stack niet meer uitvoerbaar als de shared library dit vereist. De ontwikkelaars beschouwen dergelijke gevallen als fouten en adviseren om de build aan te passen via -z,noexecstack of de vlag via patchelf —clear-execstack te wissen; het wereldwijd inschakelen van het oude gedrag wordt om veiligheidsredenen niet aanbevolen.
NixOS 26.05 is een uitgave met opvallende infrastructuurveranderingen: de overstap van initrd naar systemd, de afschaffing van de oude D-Bus standaard, een nieuwe manier om systemen te beschrijven via system.nix, een grote update van Nixpkgs, en voorbereiding op de verwijdering van verouderde platforms en modules.
Bron: linux.org.ru
