De GNU Guix Package Manager 1.3 an d'GNU Verdeelung baséiert drop sinn erauskomm.LinuxErofluedbar Images sinn verfügbar fir Installatioun op engem USB-Stick (610 MB) a fir d'Benotzung a Virtualiséierungssystemer (972 MB). Ënnerstëtzte Architekturen enthalen i686, x86_64, Power9, armv7 an aarch64.
D'Distributioun erlaabt d'Installatioun souwuel als Standalone-Betribssystem a Virtualiséierungssystemer, a Container an op normaler Hardware, wéi och a scho installéierten GNU/Linux-Distributiounen.Linux, déi als Plattform fir d'Deployéiere vun Applikatiounen déngt. De Benotzer kritt Funktiounen wéi Ofhängegkeetsmanagement, widderhuelbar Builds, rootless Operatioun, Rollback op fréier Versiounen am Fall vu Problemer, Konfiguratiounsmanagement, Ëmfeldklonen (Erstelle vun enger exakter Kopie vun der Softwareëmfeld op anere Computeren) a méi zur Verfügung gestallt.
Haaptinnovatiounen:
- Éischt Ënnerstëtzung fir d'POWER9 Architektur (powerpc64le-linux) gouf implementéiert.
- Et ass méiglech en deklarativen Deployment Modus ze benotzen, an deem, amplaz vun enger Serie vu "guix install" an "guix remove" Kommandoen, en eenzege Kommando "guix package -manifest=manifest.scm" leeft, definéiert am Manifest. scm Datei all Uwendungen déi installéiert musse ginn. Fir e Manifest op Basis vun engem existente Installatiounsprofil ze generéieren, bitt de Kommando "Guix Package" d'Optiounen "--export-manifest" an "--export-channels".
- D'Optioun "--mat-läscht" Package Transformatioun bäigefüügt, nëtzlech fir déi déi déi lescht Versioune vu Programmer wëllen hunn, och wann e fäerdege Package fir Guix nach net fir d'Applikatioun generéiert gouf. Och bäigefüügt ass d'Optioun "--mat-Patch" fir eng Serie vu Packagen ze bauen mat engem Patch op een oder méi vun hinnen applizéiert.
- D'"guix" Kommandoen implementéieren d'Ausgab vun Empfehlungen mat Virschléi fir Ersatzstécker am Fall vun Tippfehler oder d'Präsenz vun alternativen Ënnerbefehl. $ guix Package --export-manifests guix package: error: export-manifests: unerkannten Optioun Hiweis: Hutt Dir "Export-Manifest" gemengt?
- "Guix refresh" huet Ënnerstëtzung bäigefüügt fir d'Aktualiséierunge vum SourceForge Hosting erofzelueden, souwéi e generesche HTML Modus fir Updates vun der Startsäit vum Projet ze kréien.
- En neie Kommando "guix import go" bäigefüügt fir rekursiv Paketen an der Go Sprooch z'importéieren, andeems d'Ofhängegkeete berücksichtegt ginn. De Kommando "guix import opam" ënnerstëtzt elo Coq Packagen. De "guix Import Crate" berücksichtegt semantesch Versioun am rekursive Luedemodus. De Kommando "guix import nix" gouf geläscht.
- D'Installatioun vu pre-built binäre Packagen (Ersatz) gouf optimiséiert an d'Aarbecht vum Kommando "guix system init" gouf beschleunegt.
- D'Optioun "--Profil" op de Kommando "Guix Ëmfeld" bäigefüügt.
- D'Optioun "--discover" gouf dem guix-daemon fir d'Entdeckung vu lokalen Netzwierker bäigefüügt. Serveren, déi zesummegesate binär Pakete liwweren (Ersatz) mat Hëllef vun den mDNS/DNS-SD Protokoller. D'Optioun "--advertise" gouf dem Kommando "guix publish" bäigefüügt, fir datt Ukënnegunge vu Server geschéckt kënne ginn.
- D'Kapazitéit fir den Zstd Algorithmus fir Paketkompressioun ze benotzen ass implementéiert ginn.
- Am "--verbosity=1" Modus gëtt d'Ausgab vun den erofgeluede URLen gestoppt.
- Amplaz vun den "Disk-Image" an "vm-image" Ënnerbefehle gëtt den allgemenge Kommando "Guix System Image" proposéiert.
- Am Verdeelungsbild fir virtuell Maschinnen Ënnerstëtzung fir de SPICE-Protokoll bäigefüügt.
- En automateschen Installatiounsmodus gouf zum Installatiounsskript bäigefüügt.
- De lvm-device-mapping Service gouf bäigefüügt fir de LVM Volume Manager z'ënnerstëtzen (Linux Logesche Volume Manager).
- Zousätzlech "guix System Image -t rock64-raw" Modus fir Verdeelungsbilder fir Rock64 Boards ze generéieren.
- Den initrd huet bcachefs Support par défaut aktivéiert.
- De CUPS Dréckserver huet de "brlaser" Service als Standard aktivéiert fir Brother Dréckeren z'ënnerstëtzen.
- Nei Systemservicer bäigefüügt: agate, cuirass-remote-worker, ipfs, keepalived, laminar, radicale, syncthing, transmission-daemon. wireguard, xorg-Server.
- Versioune vu Programmer an 3100 Packagen goufen aktualiséiert, 2009 nei Packagen goufen derbäigesat. Mat abegraff aktualiséiert Versioune vu gcc 10.3.0, glibc 2.31, GNOME 3.34.5, gnupg 2.2.27, go 1.14.15, guile 3.0.5, icecat 78.10.0-guix0-preview1, icedtea 3.7.0 . , julia 1.0.2, libreoffice 1.5.3, linux-libre 6.4.7.2, ocaml 5.11.15, octave 4.11.1, openjdk 6.2.0, python 14.0, racket 3.8.2, rust 8.0, 1.51.0r 4.0.4. 2.1.3, Xfce 4.16.0 an xorg-Server 1.20.10.
- Fixéiert Schwachstelle CVE-2021-27851 am guix-daemon, wat e lokale Benotzer erlaabt hir Privilegien um System ze eskaléieren. De Problem ass datt während der Ausféierung vum Kommando "guix build" de Build-Verzeichnis schrëftlech bliwwen ass an de Benotzer konnt en haarde Link op eng Datei erstellen, déi vu Root gehéiert an ausserhalb vum Build-Verzeichnis läit, zum Beispill "/etc/shadow" . Wann d'Optioun "--keep-failed" wärend dem Bau spezifizéiert gouf, dann am Fall vun engem Echec, huet de guix-Daemon de Besëtzer fir de ganze Versammlungsbam op den aktuelle Benotzer geännert, inklusiv Hard Links.
Loosst eis drun erënneren datt de GNU Guix Package Manager baséiert op den Entwécklungen vum Nix Projet an, zousätzlech zu typesche Package Management Funktiounen, ënnerstëtzt sou Funktiounen wéi Transaktiounsupdates auszeféieren, d'Fäegkeet fir Updates zréckzerollen, ze schaffen ouni Superuser Privilegien ze kréien, Ënnerstëtzung Profiler verbonne mat eenzelne Benotzer, d'Fäegkeet fir gläichzäiteg verschidde Versioune vun engem Programm z'installéieren, Gerempels Sammelinstrumenter (Identifikatioun an Ewechhuele vun onbenotzten Versioune vu Packagen). Fir Applikatioun bauen Szenarie a Package Formatioun Regelen ze definéieren, gëtt proposéiert eng spezialiséiert héich-Niveau Domain-spezifesch Sprooch an Guile Schema API Komponente ze benotzen, déi erlaben Iech all Pak Gestioun Operatiounen am funktionell programméiere Sprooch Schema ze Leeschtunge.
D'Kapazitéit fir Packagen ze benotzen, déi fir den Nix Package Manager preparéiert sinn an am Nixpkgs Repository plazéiert ginn, gëtt ënnerstëtzt. Zousätzlech zu Operatiounen mat Packagen ass et méiglech Scripten ze kreéieren fir Applikatiounskonfiguratiounen ze managen. Wann e Package gebaut gëtt, ginn all Ofhängegkeeten déi domat verbonne sinn automatesch erofgelueden a gebaut. Et ass méiglech entweder fäerdeg binär Packagen aus dem Repository erofzelueden oder aus Quelltexter mat all Ofhängegkeeten ze bauen. Tools goufen implementéiert fir Versioune vun installéierten Programmer um neiste Stand ze halen andeems Dir d'Installatioun vun Updates vun engem externe Repository organiséiert.
D'Build-Ëmfeld fir Packagen gëtt a Form vun engem Container geformt deen all Komponenten enthält déi néideg sinn fir d'Applikatioun ze funktionnéieren, wat Iech erlaabt eng Rei vu Packagen ze kreéieren déi funktionnéiere kënnen ouni d'Zesummesetzung vum Basissystem Ëmfeld vun der Verdeelung, an deem Guix als Add-on benotzt gëtt. Ofhängegkeete kënnen tëscht Guix Packagen festgeluegt ginn andeems Dir Identifizéierer-Hashes am installéierte Package-Verzeichnis scannen fir d'Präsenz vu scho installéierten Ofhängegkeeten ze fannen. Packagen ginn an engem getrennten Verzeichnisbaum oder Ënnerverzeechnes am Verzeechnes vum Benotzer installéiert, wat et erlaabt parallel mat anere Packagemanager ze existéieren an Ënnerstëtzung fir eng breet Palette vun existente Verdeelungen ze bidden. Zum Beispill gëtt de Package als /nix/store/452a5978f3b0b426064a2b64a0c6f41-firefox-88.0.0/ installéiert, wou "452a59..." den eenzegaartege Packageidentifizéierer ass fir Ofhängegkeetsiwwerwaachung.
D'Distributioun enthält nëmme gratis Komponenten a kënnt mam GNU Kernel. Linux-Libre, gebotzt vun net-fräie binäre Firmware-Elementer. GCC 9.3 gëtt fir d'Kompilatioun benotzt. De GNU Shepherd Service Manager (fréier dmd), deen als Alternativ zu SysV-init mat Ofhängegkeetsënnerstëtzung entwéckelt gouf, gëtt als Initialiséierungssystem benotzt. De Shepherd Kontrolldaemon an d'Utilities sinn a Guile geschriwwen (eng Implementatioun vun der Scheme Sprooch), déi och benotzt gëtt fir Service-Startparameter ze definéieren. D'Basisbild ënnerstëtzt de Konsolemodus, awer 17243 installéiert Pakete sinn verfügbar, dorënner Komponenten vum X.Org-baséierte Grafikstack, d'dwm- a ratpoison-Fënstermanager, den Xfce Desktop an eng Auswiel u grafeschen Applikatiounen.
Source: opennet.ru
