NixOS izstrādātāji ir paziņojuši par izlaišanu NixOS 26.05 «Yarara» — jauno stabilo versiju, kas balstīta uz deklaratīvo sistēmas konfigurāciju un Nix pakotņu pārvaldnieku. Izlaišana saņems kļūdu labojumus un drošības atjauninājumus līdz 2026. gada 31. decembrim, bet iepriekšējā versija NixOS 25.11 «Xantusia» tiek uzskatīta par novecojušu un sasniegs atbalsta beigās 2026. gada 30. jūnijā.
Izlaiduma sagatavošanā piedalījās 2842 izstrādātāji, kuri veica 59 703 saistītos rakstus kopš iepriekšējā laidiena. Nixpkgs pievienoti 20 442 jaunu pakotņu, atjaunots 20 641 pakotne, dzēsti 17 532 novecojušas pakotnes. Pašā NixOS pievienoti 85 jauni moduļi un 1547 jauni konfigurācijas parametri.
Galvenās izmaiņas
Stage 1/initrd tagad pēc noklusējuma darbojas uz systemd.
Lādēšanas agrīnā stadija, kas atbild par sistēmas sagatavošanu pirms galvenās OS palaišanas, ir pārnesta uz systemd. Vecā skriptu versija tiek uzskatīta par novecojušu un plānota dzēšanai NixOS 26.11. Pagaidām var atgriezties pie iepriekšējās uzvedības ar boot.initrd.systemd.enable = false, bet izstrādātāji šādu ceļu nerekomendē. Sistēmām ar LUKS diskdziņiem ir detalizēti aprakstīti migrācijas aspekti, tostarp pareiza /dev/mapper/ norādīšana un paroļu frāžu pieprasījuma uzvedības maiņa.Pievienots system.nix kā alternatīvs konfigurācijas ievades punkts.
Papildus ierastajiem configuration.nix un flake.nix now var izmantot arī system.nix. Tas ļauj konfigurēt NixOS bez nix-channel, piemēram, ar skaidri noteiktu Nixpkgs arhīvu. Noklusējuma fails tiek meklēts kā /etc/nixos/system.nix, bet ceļu var mainīt, izmantojot , —file un —attr.Linux kodols noklusējuma ir atjaunināts no 6.12 uz 6.18.
Tomēr pārējās atbalstītās kodola versijas joprojām ir pieejamas, kā agrāk: lietotājs var izvēlēties nepieciešamo versiju, izmantojot NixOS konfigurāciju.D-Bus noklusējuma vietā aizstāts ar dbus-broker.
Tirgu klasiskā dbus realizācija tagad tiek izmantots dbus-broker, kas tiek pozicionēts kā efektīvāks un uzticamāks, saglabājot saderību ar etalonisko D-Bus realizāciju. Pārslēgšana uz realizāciju prasa restartēt, jo droši restartēt D-Bus pie lietotāja sesijas nav iespējams. Ja nepieciešams, iepriekšējo realizāciju var atstāt, izmantojot services.dbus.implementation = "dbus".NixOS testa vadītājs ieguva backend uz systemd-nspawn.
Integrācijas testi tagad var tikt veikti ne tikai QEMU VM, bet arī systemd-nspawn konteineros. Tas vajadzētu paātrināt testus un samazināt resursu patēriņu tur, kur nav nepieciešama pilnvērtīga virtuālā mašīna . Atsevišķi atzīmēta iespēja testēt GPU/CUDA slodzes, pateicoties host ierīču mezglu bind-mount iekļaušanai konteineros.Atjaunināti galvenie Nixpkgs komponenti.
GCC atjaunināts no 14 uz 15, Node.js pēc noklusējuma — no 22 LTS uz 24 LTS, Ruby — no 3.3 uz 3.4. GCC un Node.js izstrādātāji atsevišķi brīdina par iespējamiem atpakaļ nesavienojamiem mainījumiem.GNOME atjaunināts līdz versijai 50 "Tokyo".
Izlaidumā iekļauts GNOME 50, kuram paziņoti uzlabojumi piekļuvei, darbam ar displejiem un citiem darbvirsmas vides uzlabojumiem.Pēdējais Nixpkgs izlaidums ar atbalstu x86_64-darwin.
Nixpkgs 26.05 kļūs par pēdējo izlaidumu ar atbalstu Intel macOS. Binārie salikumi un atbalsts platformai tiks saglabāti līdz 26.05 dzīves cikla beigām, taču 26.11 salikumi x86_64-darwin un atbalsts salikšanai no avotiem tiks pārtraukti.
Jauni moduļi
NixOS 26.05 pievienots daudz jaunu moduļu pakalpojumiem un programmām. Starp ievērojamajiem:
- services.openthread-border-router — modulis OpenThread Border Router, tilts starp Thread mezglu tīkliem un IP tīkliem.
- programs.atuin — Atuin integrācija, lai sinhronizētu, meklētu un dublētu komandrindas vēsturi.
- services.meshtasticd — atbalsts Meshtastic, decentralizētai mezglu tīklam zemas jaudas ierīcēm.
- services.reaction — deamons, kas līdzīgs fail2ban; analizē programmu izeju un var bloķēt adreses atkārtotu autorizācijas kļūdu gadījumā.
- services.vinyl-cache — jauns modulis pēc Varnish Cache pārdēvēšanas uz Vinyl Cache; vecais services.varnish pagaidām atstāts migrācijai.
- services.rqbit — BitTorrent klients uz Rust ar HTTP API un tīmekļa saskarni.
- services.tailscale.serve — deklaratīvā Tailscale Serve konfigurācija, lai publicētu vietējos pakalpojumus tailnet.
Tāpat pievienoti moduļi ImmichFrame, PdfDing, mangowc, papra, kiwix-serve, nohang, Clevis/LUKS askpass, Rustical, Ente Auth, linkding, Tinyauth, Dawarich, Perses, tabbyAPI, Headplane un vairāku citu pakalpojumu.
Izmaiņas administratoriem un darbvirsmām
NVIDIA konfigurācija kļuvusi deklaratīvāka.
Pievienots params hardware.nvidia.branch, lai izvēlētos draivera versiju, atjaunota NixOS moduļa saite ar jauno nvidia-x11 pakotnes izkārtojumu, un params kernel module tagad var norādīt caur hardware.nvidia.moduleParams, pēc tam tie tiek ierakstīti modprobe konfigurācijā, nevis virzīti caur globālo kodola komandrindu.Wine ir atjaunots uz 11.0 versiju.
Lietotājiem, kas palaidīs Windows lietojumprogrammas un spēles caur Wine, tas nozīmē pāreju uz jaunu lielu Wine versiju stabilajā NixOS 26.05 pakotņu komplektā.ACME sertifikāti ir ieguvuši dinamisku pagarināšanas laiku.
Ja security.acme.defaults.validMinDays nav iestatīts, NixOS tagad aprēķina pagarināšanas brīdi, ņemot vērā sertifikāta derīguma termiņu: parastiem sertifikātiem pagarināšana notiek pēc divu trešdaļu mūža pabeigšanas, bet īso dzīves ilgumu sertifikātiem - pēc puses termiņa.OpenSSH ir ieguvis jaunus parametrus.
Tagad var ģenerēt host atslēgas, izmantojot services.openssh.generateHostKeys = true, pat ja pats SSH serveris nav ieslēgts. Tas ir noderīgi sistēmām, kurām nepieciešamas SSH host atslēgas citām uzdevumiem, piemēram, agenix vai sops-nix. Ir pievienots arī parametrs services.openssh.enableRecommendedAlgorithms, kas ļauj atteikties no NixOS ieteiktā algoritmu kopuma.Nextcloud pēc noklusējuma tiek atjaunināts uz v33 jaunām sistēmām.
Konfigurācijām ar system.stateVersion >= 26.05 tiek izmantots pkgs.nextcloud33 pēc noklusējuma. Izstrādātāji brīdina, ka tieša atjaunināšana no Nextcloud 31 vai vecākām versijām uz 33 nav iespējama: vispirms jāveic pāreja caur starpposma versiju.Lielais logu ieraksts par atteiktajiem savienojumiem ugunsmūrī ir atslēgts.
Parametrs networking.firewall.logRefusedConnections tagad pēc noklusējuma ir false, jo uz serveriem, kas ir pieejami no interneta, šādi ziņojumi var ātri aizpildīt kodola ring buffer un aizstāt noderīgāku diagnostikas informāciju.glibc ir atjaunota uz 2.42.
Jaunajā versijā vairs netiek izpildīts izpildāmais steks, ja to prasa shared library. Izstrādātāji uzskata, ka šādas situācijas ir kļūda un piedāvā labot kompilāciju ar -z,noexecstack vai notīrīt karogu, izmantojot patchelf --clear-execstack; globāli iekļaut veco uzvedību nav ieteicams drošības apsvērumu dēļ.
NixOS 26.05 ir izlaidums ar nozīmīgām infrastruktūras pārmaiņām: pāreja uz systemd initrd, atteikšanās no vecā D-Bus pēc noklusējuma, jauna sistēmas apraksta metode caur system.nix, liels atjauninājums Nixpkgs un sagatavošanās novecojušo platformu un moduļu izņemšanai.
Avots: linux.org.ru
