NixOS 25.11 Xantusia: všechny nové funkce a klíčové změny

  • NixOS 25.11 „Xantusia“ obnovuje tisíce balíčků, modulů a možností se silným zaměřením na čistotu a bezpečnost.
  • Pracovní prostředí se s GNOME 49 a aktualizacemi nástrojů, jako jsou LLVM 21, CMake 4 a nové jazykové verze, posunulo o krok vpřed.
  • Do databází, kontejnerů a služeb se zavádí řada nekompatibilních změn, které vyžadují revizi stávajících konfigurací.
  • Mnoho aplikací je přejmenováváno nebo vyřazováno ve prospěch modernějších alternativ, což posouvá ekosystém směrem k udržovanému a bezpečnému softwaru.

Nix OS 25.11

NixOS je zpět s, Nix OS 25.11, verze, která přináší velmi zásadní změny jak v samotném systému, tak v rozsáhlém ekosystému balíčků, které ho obklopují. S kódovým označením „Xantusia“ je nyní k dispozici a je nabitý zajímavými novými funkcemi pro desktopy, servery, vývoj a cloudové nasazení, ale také s řadou nekompatibilností a zastaralých balíčků, které by měly být před aktualizací pečlivě zkontrolovány.

V tomto článku uvidíme Všechny důležité zprávy Z NixOS 25.11 a balíčkové základny Nixpkgs: klíčové aktualizace jako GNOME 49, LLVM 21 a ROCm 6.3; významné změny v Go, Rustu, Node.js, PostgreSQL a Dockeru; přejmenované služby; nové moduly; a další možnosti konfigurace. Také probereme případovou studii z reálného světa zahrnující problémy s proxy při kompilaci Discordu a jak je v tomto novém prostředí řešit.

NixOS 25.11 „Xantusia“: životní cyklus a údaje o spuštění

Nová stabilní verze, NixOS 25.11 „Xantusia“Nyní jej lze nainstalovat a aktualizovat na jakémkoli systému pomocí stabilních kanálů. Tato edice bude dostávat bezpečnostní záplaty a opravy chyb po dobu sedmi měsíců, do 30. června 2026, takže se jedná o nový doporučený upgrade, pokud používáte předchozí verzi.

Předchozí stáj, NixOS 25.05 „Pěnice“, oficiálně se stává zastaralým a přestane dostávat bezpečnostní aktualizace od 31. prosince 2025. Pokud stále používáte verzi 25.05 nebo ještě starší, je vhodná doba klidně naplánovat migraci na verzi 25.11 a prostudovat si nekompatibilní změny, které podrobně popíšeme v tomto textu.

Toto uvedení na trh je také ukázkou rychlost vývoje projektu. Mezi verzemi NixOS 25.05 a NixOS 25.11 se zapojilo 2 742 přispěvatelů, kteří dohromady podepsali nejméně 59 430 commitů k Nixpackům a konfiguraci systému. Za těmito čísly se skrývá vše od drobných oprav přes okrajové balíčky až po zásadní přepracování kritických distribučních modulů.

Nixpkgs: Balíčky přidané, aktualizované a odebrané z NixOS 25.11

Kolekce balíčků Nixpkgs, což je páteře Nejen NixOS, ale jakýkoli systém, který používá správce balíčků Nix v Linuxu nebo macOS, prošel v tomto cyklu rozsáhlou údržbou.

Na jedné straně došlo k Přidáno 7002 nových balíčkůdalší rozšíření nabídky dostupného softwaru. To zahrnuje vše od špičkových vývojových nástrojů až po desktopové aplikace, nástroje pro správu a vědecký software.

Zároveň má tým Aktualizováno 25 252 existujících balíčkůDíky tomu je zajištěno, že většina populárního softwaru je aktualizována na nejnovější verze, zejména ten s bezpečnostními záplatami a vylepšeními výkonu. To je klíčové v prostředích, kde je nezbytná reprodukovatelnost a zároveň zachování přiměřené aktuálnosti.

Aby byl repozitář spravovatelný a bezpečný, Nixpkgs… 6338 starých balíčků odstraněno které již nebyly udržovány, byly nefunkční nebo se staly zastaralými v upstreamu. V mnoha případech existují přímé alternativy přímo v rámci stromu Nixpkgs, ale v jiných případech jsou jednoduše nedostupné, aby se předešlo problémům s bezpečností nebo kompilací.

Moduly a možnosti konfigurace NixOS

Kromě balíčků se NixOS vyznačuje i výkonným deklarativním systémem modulů. Tento cyklus zahrnuje Začleněno 107 nových modulůTyto aktualizace přidávají podporu pro nové služby, démony, aplikace a systémové konfigurace. Přinášejí také 1778 nových konfiguračních možností, což dále zvyšuje granularitu, s jakou lze systém popsat.

Na druhou stranu došlo k odstraněno 41 modulů a konfigurační možnosti 807, které se staly zastaralými, nefunkčními nebo nahrazenými modernějšími alternativami. Pokud znovu používáte starší konfigurace, je vhodné si před upgradem přečíst oznámení o zastarání a upravit soubory.

Pozoruhodné nové funkce na ploše: GNOME 49 „Brescia“

Jednou z velkých nových funkcí pro uživatele stolních počítačů je aktualizace GNOME 49 „Brescia“Tato verze desktopového prostředí činí rozhodující krok směrem k Waylandu a eliminuje relaci založenou na X11, což může být významná změna, pokud jste udržovali starší konfigurace nebo rozšíření, která explicitně závisela na Xorg.

GNOME 49 obsahuje Nové aplikace Patří sem přepracovaný přehrávač videa a aktualizovaný prohlížeč dokumentů, stejně jako přepracovaný kalendář a řada drobných vylepšení uživatelského prostředí. Pokud se spoléháte na nějakou vysoce specifickou funkcionalitu nebo složitá rozšíření, doporučuje se prostudovat si oficiální poznámky k vydání GNOME.

Kompilátory a nástroje pro C: LLVM, GCC a CMake

V sekci kompilace, aktualizace NixOS 25.11 LLVM do verze 21Pro vývojáře používající C, C++ nebo Rust s nástroji Clang je to významný krok vpřed. Tato verze obsahuje vylepšení optimalizace, nové podporované cíle a úpravy varování, která mohou způsobit změny v chování v některých projektech.

kompilátor GCC zůstává ve větvi 14Jedná se o verzi, která je již zavedená a testovaná v produkčním prostředí. Díky tomu je snazší udržovat kompatibilitu s projekty, které stále závisí na této rodině kompilátorů, aniž by se při každé aktualizaci systému vyskytovaly rušivé změny.

Pro jeho část, CMake je aktualizován na verzi 4To může umožnit nové funkce v moderních systémech sestavení, ale může také vyžadovat úpravy v projektech, které používaly zastaralou syntaxi nebo příkazy. Pokud máte starší šablony CMake, je vhodné před dokončením migrace spustit testy sestavení.

GPU, výpočetní technika a změny v ROCm a CUDA

Pro ty, kteří pracují s akcelerací GPU, je tu větev Aktualizace balíčku rocmPackages_6 na ROCm 6.3Zatímco rocmPackages_5 Je odstraněn ze stromu. Některé části jsou restrukturalizovány: rocmPackages.rocm-thunk Zmizí jako samostatný balíček a je integrován do rocmPackages.clrA rocmPackages.clang-ocl Odchází do důchodu poté, co ho v roce 2023 opustila společnost AMD.

Paralelně, Oficiální podpora pro CUDA 10 byla ztracenaJak již bylo zmíněno v poznámkách k vydání NixOS 24.11, uživatelé, kteří stále podporují velmi starý hardware, by měli zvážit upgrade své grafické karty nebo ověřit, zda existují udržované alternativy od jiných výrobců nebo backendů.

Prohlížeč, proxy a problémy s kompilací Discordu

Jeden praktický problém, který se u této verze objevil, je použití proxy serverů během kompilacíUživatel popisuje, jak může soubor úspěšně stáhnout. discord-0.0.116.tar.gz z prohlížeče pomocí firemního proxy serveru, ale při spuštění nixos-rebuild Stahování s curl opakovaně selhává s chybou. curl: (35) Recv failure: Connection reset by peer dokud nebudou vyčerpány všechny pokusy.

Chybová zpráva Nix naznačuje, že Tarball Discordu se nepodařilo stáhnout. z žádného zrcadla, čímž se naruší odvození discord-0.0.116.tar.gz.drv a následně i konstrukci uživatelského prostředí a celého systému. Přestože protokol zobrazuje varování před automatickými opakovanými pokusy, proměnné, jako například https_proxy o all_proxyTo naznačuje, že běhové prostředí v rámci sandboxu sestavení nevidí konfiguraci sítě uživatele.

V systému NixOS, standardní proměnné prostředí proxy Pokud se používá striktní sandboxing nebo pokud je konfigurace systému neexportuje do sestavení, nemusí se šířit přímo do forků. Typické řešení zahrnuje konfiguraci možností Nixu jako nix.extraOptions zahrnout http_proxy, https_proxy a společnost, nebo dočasně deaktivovat sandbox pro daný počítač (nedoporučuje se dlouhodobě) a zároveň upravovat proxy server tak, aby povolil provoz z IP adresy tvůrce.

Další možností je uchýlit se k binární mezipaměti, které již obsahují Discord nebo jiné problematické balíčky, čímž se Nix vyhne nutnosti stahovat originály přímo. V každém případě se tyto typy síťových chyb stávají relevantnějšími ve verzi jako 25.11, která přesouvá tolik částí najednou a může vést k odlišnému chování při řešení URL adres.

Síť, kontejnery a webové služby

V oblasti sítí a kontejnerů přináší NixOS 25.11 významné změny. Aktualizace HTTP proxy Squid na verzi 7Tato edice obsahuje několik nekompatibilních změn, například odstranění funkce ESI. Pro úpravy vlastních nastavení doporučujeme prostudovat si poznámky k verzi Squid.

Na úrovni orchestrace, containerdu se aktualizuje do své větve 2.xTo s sebou přináší řadu změn v chování. Ať už používáte containerd přímo nebo jako komponentu platformy, je nezbytné si prostudovat dokumentaci ke containerd 2.0, abyste se vyhnuli překvapením v produkčním prostředí.

Ve světě Dockeru, docker_24 je odstraněn ze stromu protože již není podporován a má známé zranitelnosti od června 2024. Cílem je přesunout instalace do novějších a udržovaných verzí Dockeru.

Co se týče serverů a ovládacích panelů, NetBox je aktualizován na větev 4.2s významnými změnami na úrovni schématu a chování. Verze 4.0.x byla ze stromu odstraněna a uživatelům se doporučuje, aby před upgradem sledovali oznámení o aktualizacích 4.1 a 4.2. Další služby, jako například matomo Ve výchozím nastavení přejdou na verzi 5 (verze 4 již není podporována) a balíček je odstraněn. matomo-beta protože nyní je snadné přepsat verzi z overrideAttrs.

Kafka také dělá významný skok: Apache Kafka je aktualizován na větev 4.0který již nepodporuje ZooKeeper. Všechny instalace musí být migrovány do režimu KRaft v souladu s pokyny Apache Foundation. V systému NixOS to zahrnuje kontrolu konfigurací za účelem odstranění odkazů na ZooKeeper a úpravu nasazení brokerů.

Služby, démony a aplikace, které se mění nebo mizí z NixOS 25.11

Seznam Balíčky a služby, které byly přejmenovány, nekompatibilně aktualizovány nebo vyřazeny V tomto cyklu je to velmi dlouhé, což je známkou ochoty vyčistit strom starého nebo problematického softwaru.

Některé pozoruhodné příklady: gkraken Zmizí a doporučuje se používat coolercontrol jako alternativa; opensmtpd-extras Je odstraňován, protože není kompatibilní s OpenSMTPD 7.6.0+ a ustupuje tak specifickým balíčkům. opensmtpd-table-*; Zammad Přestává podporovat MySQL a nutí uživatele migrovat na PostgreSQL podle oficiálního návodu.

Ve světě jmen, Minetest se nyní jmenuje Luanti aby odrážely změnu v upstreamu, ale aliasy jsou zachovány, aby se zabránilo okamžitému narušení. Podobně Změny POAC v cabinpkg, xdragon se stává dragon-drop (s xdragon (jako alias) a siduck76-st je přejmenován na st-snazzyExistují také malá písmena: písmo seriózní-sans Stahuje se, protože upstream změnil název na Serious Shanns, stále nebalený.

Ostatní projekty jsou jednoduše archivovány: gkraken, prchavý, vokální, fluxus, sm64ex-coop, nexusmods-app, nodePackages.ganache a mnoho dalších je označeno jako poškozené, neudržované nebo nebezpečné a odstraněno z Nixpacků. V několika případech je navržena alternativa (například sm64coopdx nahradit sm64ex-coop, nebo gnome-podcasts y kasts nahradit samohlásku).

V prostředí zasílání zpráv a ochrany soukromí pakety signalizováno, signaldctl a fialový signál Jejich podpora bude ukončena kvůli dlouhodobé nekompatibilitě s oficiálními servery Signalu a serverem Matrix. potrubí Je označen jako zranitelný poté, co jej vývojáři ukončili.

Nové verze a změny chování v populárních aplikacích

Kromě zmizení je mnoho aplikací aktualizováno změny chování, které narušují kompatibilitu, Například Grafana Agent a jeho modul Opouští scénu ve prospěch Grafana Alloy, která už má svou vlastní službu. services.alloyGrafana doporučuje migraci na grafana-alloy a poskytne dokumentaci k dokončení převodu.

Ekosystém monitorů a panelů se také vyvíjí: Prometheus přechází na větev 3.xs oficiálními migračními poznámkami, zatímco kanata, authelia, helmfile, agent otevřené politiky a mnoho dalších balíčků je aktualizováno na hlavní verze se změnami v syntaxi, konfiguračních formátech a výchozích hodnotách. Zejména OPA umožňuje rego.v1 je nyní výchozí styl, čímž se syntaxe v0 označuje jako zděděná, ačkoliv režim kompatibility stále existuje.

Svět stolních počítačů nezůstává pozadu: GIMP 3.0 se zobrazuje jako gimp3, Jahoda je aktualizována na sérii 1.2 a opustí backend VLC a Qt5 (balíček zmizí) strawberry-qt5 a některé možnosti s GStreamerem/VLC), rofi Přechází z verze 1.7.5 na 1.7.6 se změnami ABI v binárních pluginech a tauon 7.9.0+ Vaše databáze je migrována do zpětně nekompatibilního schématu, proto je vhodné vytvořit zálohu ~/.local/share/TauonMusicBox před otevřením nové verze.

V oblasti vývoje webových stránek a JavaScriptu, nodejs_latest se vyvíjí do série 24.x, jsou eliminovány nodejs_23 y nodejs_18a vyčistí balíčky Node, které nikdy neměly být globální (například webpack-dev-server, copy-webpack-plugin, expo-cli o create-react-native-app), s doporučením je instalovat na úrovni projektu. Nástroje jako například pnpm přechází na verzi 10 se sekundárním balíčkem pnpm_9 pro ty, kteří potřebují kompatibilitu.

K dispozici jsou také úpravy fontů: nerdfonts je rozdělen do jednotlivých balíčků pod jmenným prostorem nerd-fonts a instalační cesty pro fonty se změní, nyní mají adresáře podle typu fontu (<fontDirName>To nás nutí upravit konfigurace, které ukazovaly na staré trasy.

Změny v jádře, hardwaru a systémovém prostředí

Na systémové úrovni je to opuštěno plná podpora 32bitového Darwinuudržování pouze moderních platforem. Navíc trojitá konfigurace aarch64-darwin odpovídá arm64-apple-darwin, což je v souladu s očekáváními společností Apple a LLVM.

El paquete tinycc Poté rozděluje výstupy na dev, doc y lib, tvorba tinycc.out Obsahuje pouze binární soubory tcc a křížové kompilátory. V TPM, tpm2-pkcs11 Kompiluje se bez podpory pro abrmd Ve výchozím nastavení upřednostňuje správce zdrojů jádra; pokud potřebujete variantu s abrmd, existuje. tpm2-pkcs11.abrmda modul NixOS automaticky vybírá podle security.tpm2.abrmd.

V udevu platí pravidla libjaylink Nyní požadují, aby byli součástí skupiny. jlink místo plugdevToto bylo v NixOS velmi neobvyklé. Přístup je povolen i prostřednictvím relací uživatelského prostředí, takže dopad je omezený, pokud používáte standardní plochu.

rekvizity mkBinaryCache Je modernizován a začíná se používat zstd jako výchozí komprese

Pro generované binární mezipamětiMožnost pokračovat zůstává otevřená. xz skrz compression = "xz";To ve většině případů zlepšuje výkon při generování a spotřebě binárních souborů.

V možnostech sítě, networking.nat.externalIP a externalIPv6 mění své chovánípravidla networking.nat.forwardPorts Tato pravidla se nyní vztahují pouze na pakety určené pro explicitně specifikované IP adresy. Tím se zabrání neočekávaným přesměrováním, ale může to vyžadovat úpravu stávajících definic NAT.

Ve správě souborových systémů, definice Souborové systémy (například fileSystems."/") se nastavují pomocí lib.mkDefault z modulů NixOS, což umožňuje jejich nahrazení všech najednou, ale způsobuje chyby, pokud jsou přepsány pouze jednotlivé atributy bez specifikace deviceJinak se můžete setkat se zprávami jako No device specified for mount point '/'.

Úprava textu, vývojová prostředí a různé utility NixOS 25.11

Ve světě Emacsu, NixOS 25.11 Odstraňte Emacs 28 a 29Součástí je standardní verze i verze pro Macport pro Emacs 28. Edice Emacs 29 pro Macport je udržována, ale obsahuje záplaty pro známé zranitelnosti. Racket také prochází prořezáváním: racket_7_9 je stažen z důvodu nebezpečnostitlačí na použití Racket 8, a tím eliminuje tok, který se na tuto neudržovanou verzi spoléhal po celá léta.

Vyhledávač textu binwalk 3.1.0 Je přepsán v Rustu a související modul Pythonu se stane nedostupným; nástroj pro osobní účty python3Packages.beancount Zvyšuje se na 3.1, přičemž předchozí série zůstala beancount_2V e-mailu a CLI, tldr Přepne se na používání klienta Python místo C a Himaláje Aktualizuje se na verzi 1.1.0 s převratnými změnami, které vyžadují kontrolu konfigurace.

V různých nástrojích, nq 1.0 přejmenuje fq a tq na nqtail a nqterm., zf 0.10.2 Mění způsob, jakým zpracovává Unicode a escape sekvence, a ast-grep odebrat příkaz sg aby se předešlo konfliktům se shadow-utils a zároveň se umožnila kompatibilita starší verze enableLegacySg = true;.

Zároveň rodina standardních logovacích funkcí nixLog* Je přepsán tak, aby předpona byla před úrovní ladění a názvem volající funkce, čímž se znovu zavádí nixLog jako bezpodmínečný logger, který také přidává kontext funkce. To usnadňuje ladění složitých derivací a hooků.

Nakonec některé testovací nástroje, jako například testeři.shellcheck Nyní vás varují, pokud atribut není poskytnut. namecož se v budoucích verzích stane povinným. A v Haskellu, testTarget je označen jako zastaralý ve prospěch testTargets, který přijímá explicitní seznam cílů místo řetězce odděleného mezerami.

Verze NixOS 25.11 tak konsoliduje obrovské množství změn, od desktopového prostředí GNOME 49 a rozsáhlých aktualizací balíčků až po hluboké úpravy v nástrojích, síťových službách a zásadách kompatibility, což z ní činí klíčové vydání pro každého, kdo chce udržovat své prostředí Nix aktuální, aniž by ztratil ze zřetele... stabilita a reprodukovatelnost které charakterizují projekt.

Nix OS 24.11
Související článek:
Vše, co potřebujete vědět o dlouho očekávaném vydání NixOS 24.11

Přidat jako preferovaný zdroj v Googlu