Managerul de pachete GNU Guix 1.4 și distribuția bazată pe acesta este disponibilă

Managerul de pachete GNU Guix 1.4 și distribuția GNU/Linux bazată pe acesta au fost lansate. Imagini pentru instalare pe USB Flash (814 MB) și utilizare în sisteme de virtualizare (1.1 GB) au fost generate pentru descărcare. Suportă arhitecturi i686, x86_64, Power9, armv7 și aarch64.

Kit-ul de distribuție poate fi instalat atât ca sistem de operare autonom în sisteme de virtualizare, în containere și pe echipamente convenționale și poate fi rulat în distribuțiile GNU/Linux deja instalate, acționând ca o platformă pentru implementarea aplicațiilor. Utilizatorului i se oferă funcții precum contabilitatea dependențelor, build-uri repetabile, lucru fără root, rollback la versiunile anterioare în caz de probleme, managementul configurației, clonarea mediului (crearea unei copii exacte a mediului software pe alte computere), etc.

Principalele inovații:

  • Management îmbunătățit al mediului software. Comanda „guix environment” a fost înlocuită cu o nouă comandă „guix shell”, care permite nu numai crearea de medii de construcție pentru dezvoltatori, ci și utilizarea mediilor pentru a vă familiariza cu programele fără a fi reflectate în profil și fără a efectua „guix”. instalare". De exemplu, pentru a descărca și rula jocul supertuxkart, puteți rula „guix shell supertuxkart - supertuxkart”. Odată descărcat, pachetul va fi stocat în cache și următoarea rulare nu va necesita re-extragerea lui.

    Pentru a simplifica formarea de medii pentru dezvoltatori în „guix shell”, este furnizat suport pentru fișierele guix.scm și manifest.scm cu o descriere a compoziției mediului (opțiunea „--export-manifest” poate fi folosită pentru a genera dosare). Pentru a crea containere care emulează ierarhia clasică de directoare de sistem, „guix shell” oferă opțiunile „-container --emulate-fhs”.

  • S-a adăugat comanda „guix home” pentru a gestiona mediul de acasă. Guix vă permite să definiți toate componentele mediului de acasă, inclusiv pachetele, serviciile și fișierele care încep cu un punct. Folosind comanda „guix home”, instanțe ale mediului de acasă descris pot fi recreate în directorul $HOME sau într-un container, de exemplu, pentru a-și transfera mediul pe un computer nou.
  • S-a adăugat opțiunea „-f deb” la comanda „guix pack” pentru a crea pachete deb independente care pot fi instalate pe Debian.
  • Pentru a crea diferite tipuri de imagini de sistem (raw, QCOW2, ISO8660 CD / DVD, Docker și WSL2), este propusă o comandă universală „guix system image”, care vă permite să determinați tipul de stocare, partiții și sistemul de operare pentru creat. imagine.
  • Opțiunea „-tune” a fost adăugată la comenzile de asamblare a pachetului, ceea ce vă permite să specificați microarhitectura procesorului pentru care vor fi activate optimizări specifice (de exemplu, instrucțiunile AVX-512 SIMD pot fi folosite pe noile procesoare AMD și Intel).
  • Instalatorul implementează un mecanism pentru salvarea automată a informațiilor importante de depanare în cazul unei instalări anormale.
  • S-a redus timpul de pornire a aplicației prin utilizarea memoriei cache de conectare dinamică pentru a reduce utilizarea apelurilor de sistem deschise și statistice atunci când se caută biblioteci.
  • Este implicată o nouă ediție a sistemului de inițializare GNU Shepherd 0.9, care implementează conceptul de servicii temporare (tranzitorii) și capacitatea de a crea servicii care sunt activate în timpul activității în rețea (în stilul activării socketului systemd).
  • A fost adăugată o nouă interfață pentru a seta dimensiunea partiției de swap în configurația sistemului de operare.
  • Interfața pentru setarea unei configurații statice de rețea a fost reproiectată, care oferă acum un analog declarativ al setărilor în stilul comenzii ip.
  • S-au adăugat 15 noi servicii de sistem, inclusiv Jami, Samba, fail2ban și Gitile.
  • Site-ul Packages.guix.gnu.org a fost lansat pentru navigarea pachetelor.
  • Versiuni de software actualizate în 6573 pachete, adăugate 5311 pachete noi. Printre altele, versiunile actualizate ale GNOME 42, Qt 6, GCC 12.2.0, Glibc 2.33, Xfce 4.16, Linux-libre 6.0.10, LibreOffice 7.4.3.2, Emacs 28.2. S-au eliminat peste 500 de pachete folosind Python 2.

Managerul de pachete GNU Guix 1.4 și distribuția bazată pe acesta este disponibilă

Amintiți-vă că managerul de pachete GNU Guix se bazează pe dezvoltările proiectului Nix și, pe lângă funcțiile tipice de gestionare a pachetelor, acceptă funcții precum actualizări tranzacționale, capacitatea de a derula înapoi actualizările, lucrul fără a obține privilegii de superutilizator, suport pentru profiluri. asociat cu utilizatorii individuali, posibilitatea de a instala simultan mai multe versiuni ale unui program, instrumente de colectare a gunoiului (identificarea și eliminarea versiunilor neutilizate ale pachetelor). Pentru a defini scripturile de construire a aplicației și regulile de ambalare, se propune utilizarea unui limbaj specializat de nivel înalt specific domeniului și componente Guile Scheme API care vă permit să efectuați toate operațiunile de gestionare a pachetelor în limbajul de programare funcțional Scheme.

Este acceptată capacitatea de a utiliza pachete pregătite pentru managerul de pachete Nix și găzduite în depozitul Nixpkgs. Pe lângă operațiunile de pachet, puteți crea scripturi pentru a gestiona configurația aplicației. Când un pachet este construit, toate dependențele asociate sunt descărcate și construite automat. Este posibil atât să descărcați pachete binare gata făcute din depozit, cât și să construiți din sursă cu toate dependențele. Instrumente implementate pentru a menține la zi versiunile de programe instalate prin organizarea instalării actualizărilor dintr-un depozit extern.

Mediul de compilare pentru pachete este format ca un container care conține toate componentele necesare funcționării aplicațiilor, ceea ce vă permite să creați un set de pachete care pot funcționa fără a ține cont de compoziția mediului de bază al distribuției, în care Guix este folosit ca supliment. Dependențe pot fi determinate între pachetele Guix prin scanarea identificatorilor hash din directorul pachetelor instalate pentru a găsi prezența dependențelor deja instalate. Pachetele sunt instalate într-un arbore de directoare sau subdirector separat în directorul utilizatorului, ceea ce îi permite să coexiste cu alți manageri de pachete și să ofere suport pentru o gamă largă de distribuții existente. De exemplu, un pachet este instalat ca /nix/store/452a5978f3b1b426064a2b64a0c6f41-firefox-108.0.1/ unde „452a59...” este ID-ul unic de pachet folosit pentru a controla dependențele.

Distribuția include doar componente gratuite și vine cu un nucleu GNU Linux-Libre lipsit de elemente de firmware binare non-libere. GCC 12.2 este folosit pentru a construi. Managerul de servicii GNU Shepherd (fost dmd) este folosit ca sistem de inițializare, dezvoltat ca alternativă la SysV-init cu suport pentru dependențe. Daemonul de control și utilitatile Shepherd sunt scrise în limbajul Guile (una dintre implementările limbajului Scheme), care este, de asemenea, folosit pentru a defini parametrii de pornire a serviciului. Imaginea de bază acceptă modul consolă, dar au fost pregătite pentru instalare 20526 pachete gata făcute, inclusiv componente de stivă grafică bazate pe X.Org, manageri de ferestre dwm și ratpoison, desktop-uri GNOME și Xfce și o selecție de aplicații grafice.

Sursa: opennet.ru

Adauga un comentariu