Vývojáři NixOS představili novou verzi NixOS 26.05 «Yarara» — další stabilní verzi distribuce založené na deklarativní konfiguraci systému a správci balíčků Nix. Tento release bude dostávat opravy chyb a bezpečnostní aktualizace do 31. prosince 2026, zatímco předchozí verze NixOS 25.11 „Xantusia“ byla označena za zastaralou a dosáhne konce podpory 30. června 2026.
Na přípravě vydání se podílelo 2842 vývojářů, kteří přispěli 59 703 commitů od předchozí verze. Do Nixpkgs bylo přidáno 20 442 nových balíků, aktualizováno 20 641 balíků, odstraněno 17 532 zastaralých balíků.V samotném NixOS se objevilo 85 nových modulů a 1547 nových konfiguračních parametrů..
Hlavní změny
Stage 1/initrd nyní ve výchozím nastavení funguje na systemd.
Raný startovací proces, který připravuje systém před spuštěním hlavního OS, byl převeden na systemd. Starší skriptová varianta byla označena za zastaralou a je naplánována k odstranění v NixOS 26.11. Dočasně lze vrátit staré chování pomocí boot.initrd.systemd.enable = false, ale vývojáři tento způsob nedoporučují. Pro systémy s disky LUKS jsou zvlášť popsány detaily migrace, včetně správného určení /dev/mapper/ a změny chování dotazu na heslo.Byl přidán system.nix jako alternativní vstupní bod pro konfiguraci.
Kromě známých configuration.nix a flake.nix nyní lze použít i system.nix. To umožňuje konfiguraci NixOS bez nix-channel, například s explicitně zamčeným archívem Nixpkgs. Ve výchozím nastavení se soubor hledá jako /etc/nixos/system.nix, ale cestu lze měnit přes , --file a --attr.Linuxové jádro bylo ve výchozím nastavení aktualizováno z 6.12 na 6.18.
Ostatní podporované větve jádra zůstávají k dispozici jako dříve: uživatel může vybrat požadovanou verzi prostřednictvím konfigurace NixOS.D-Bus byl ve výchozím nastavení nahrazen dbus-brokerem.
Namísto klasické implementace dbus se nyní používá dbus-broker, který se prezentuje jako výkonnější a spolehlivější, a současně zachovává kompatibilitu s referenční implementací D-Bus. Přepnutí implementace vyžaduje restart, protože bezpečně restartovat D-Bus uprostřed uživatelské relace nelze. V případě potřeby lze starou implementaci ponechat pomocí services.dbus.implementation = "dbus";Testovací ovladač NixOS získal backend na systemd-nspawn.
Integrační testy nyní mohou být spouštěny nejen v QEMU-VM, ale také v kontejnerech systemd-nspawn. To by mělo urychlit testy a snížit spotřebu prostředků tam, kde není potřeba plná virtualizace. virtuální stroj Zvlášť je uvedena možnost testovat GPU/CUDA zátěže díky bind-mountování uzlů zařízení hostitele do kontejnerů.Byly aktualizovány klíčové komponenty Nixpkgs.
GCC byl aktualizován z 14 na 15, Node.js jako výchozí verze - z 22 LTS na 24 LTS, Ruby - z 3.3 na 3.4. Pro GCC a Node.js vývojáři zvlášť varují před možnými zpětně nekompatibilními změnami.GNOME byl aktualizován na verzi 50 'Tokyo'.
Do vydání byl zahrnut GNOME 50, pro který jsou uvedena vylepšení přístupnosti, správy displejů a další změny pracovního prostředí.Poslední vydání Nixpkgs s podporou x86_64-darwin.
Nixpkgs 26.05 bude posledním vydáním s podporou Intel macOS. Binární sestavení a podpora platformy budou zachovány až do konce životního cyklu 26.05, ale ve 26.11 bude podpora sestavení pro x86_64-darwin a podpora sestavení ze zdrojových kódů ukončena.
Nové moduly
V NixOS 26.05 bylo přidáno mnoho nových modulů pro služby a programy. Mezi důležitými:
- services.openthread-border-router — modul pro OpenThread Border Router, bránu mezi mesh sítěmi Thread a IP sítěmi.
- programs.atuin — integrace Atuin pro synchronizaci, vyhledávání a zálohování historie příkazového řádku.
- services.meshtasticd — podpora Meshtastic, decentralizované mesh sítě pro nízkopříkonová zařízení.
- services.reaction — démon podobný fail2banu: analyzuje výstupy programů a může blokovat adresy při opakovaných chybách autentizace.
- services.vinyl-cache — nový modul po přejmenování projektu Varnish Cache na Vinyl Cache; starý services.varnish je prozatím zachován pro migraci.
- services.rqbit — BitTorrent klient napsaný v Rustu s HTTP API a webovým rozhraním.
- services.tailscale.serve — deklarativní nastavení Tailscale Serve pro publikaci místních služeb v tailnet.
Byly také přidány moduly pro ImmichFrame, PdfDing, mangowc, papra, kiwix-serve, nohang, Clevis/LUKS askpass, Rustical, Ente Auth, linkding, Tinyauth, Dawarich, Perses, tabbyAPI, Headplane a řadu dalších služeb.
Změny pro administrátory a pracovní stanice
Konfigurace NVIDIA se stala deklarativnější.
Byl přidán parametr hardware.nvidia.branch pro výběr větve ovladače, byla aktualizována vazba modulu NixOS na nový layout balíku nvidia-x11, a parametry kernel module lze nyní určovat přes hardware.nvidia.moduleParams, po čemž se zapisují do konfigurace modprobe, a ne protlačují skrze globální příkazový řádek jádra.Wine byl aktualizován na verzi 11.0.
Pro uživatele, kteří spouštějí aplikace a hry pro Windows prostřednictvím Wine, to znamená přechod na novou hlavní větev Wine jako součást stabilního balíčku NixOS 26.05.ACME certifikáty získaly dynamické prodloužení.
Pokud není nastaveno security.acme.defaults.validMinDays, NixOS nyní vypočítává čas prodloužení s ohledem na dobu platnosti certifikátu: pro běžné certifikáty dochází k prodloužení po uplynutí dvou třetin životnosti, pro krátkodobé certifikáty pak po polovině.OpenSSH získal nové parametry.
Nyní je možné generovat host keys pomocí services.openssh.generateHostKeys = true, i když samotný SSH server není povolen. To je užitečné pro systémy, které potřebují SSH host keys pro jiné úkoly, například agenix nebo sops-nix. Přidán byl také parametr services.openssh.enableRecommendedAlgorithms, který umožňuje zrušit sadu algoritmů doporučenou NixOS.Nextcloud se ve výchozím nastavení aktualizuje na verzi v33 pro nové systémy.
Pro konfigurace se system.stateVersion >= 26.05 se ve výchozím nastavení používá pkgs.nextcloud33. Vývojáři varují, že přímé aktualizace z Nextcloud 31 nebo starších verzí na 33 není možné: nejprve je třeba projít prostřední verzí.Bylo vypnuto hlučné logování zamítnutých připojení firewallu.
Parametr networking.firewall.logRefusedConnections je nyní ve výchozím nastavení nastaven na false, protože na serverech, které jsou přístupné z internetu, taková zpráva může rychle zaplnit kernel ring buffer a vytlačit užitečnější diagnostické informace.glibc byla aktualizována na verzi 2.42.
Nová verze již nedělá zásobník vykonatelným, pokud to vyžaduje sdílená knihovna. Vývojáři tyto případy považují za chybu a doporučují opravit sestavení pomocí -z,noexecstack nebo čistíci flag pomocí patchelf —clear-execstack; globálně zapínat staré chování se z bezpečnostních důvodů nedoporučuje.
NixOS 26.05 je vydání s významnými infrastrukturními změnami: přechod initrd na systemd, opuštění starého D-Bus ve výchozím nastavení, nový způsob popisu systému prostřednictvím system.nix, velká aktualizace Nixpkgs a příprava na odstranění zastaralých platforem a modulů.
Zdroj: linux.org.ru
