Managerul de pachete GNU Guix 1.0 și distribuția GuixSD bazată pe acesta sunt disponibile

a avut loc lansarea managerului de pachete GNU Guix 1.0 și distribuția GuixSD GNU/Linux construită pe baza acesteia (Guix System Distribution). O schimbare semnificativă a numărului de versiune se datorează finalizării tuturor implementărilor goluri, livrat pentru a forma o lansare de reper. Lansarea a însumat șapte ani de muncă la proiect și a fost declarată gata pentru utilizarea de zi cu zi. Pentru încărcare format imagini pentru instalare pe USB Flash (243 MB) și utilizare în sisteme de virtualizare (474 ​​​​MB). Acceptă operarea pe arhitecturi i686, x86_64, armv7 și aarch64.

Distributia permite instalarea ca sistem de operare independent în sisteme de virtualizare, în containere și pe echipamente convenționale și lansa în distribuțiile GNU/Linux deja instalate, acționând ca o platformă pentru implementarea aplicațiilor. Utilizatorului i se oferă funcții precum luarea în considerare a dependențelor, build-urile repetabile, lucrul fără root, revenirea la versiunile anterioare în caz de probleme, managementul configurației, clonarea mediilor (crearea unei copii exacte a mediului software pe alte computere), etc. .

Principalul inovații:

  • Adăugat nou instalator interactiv, lucrând în modul text;

    Managerul de pachete GNU Guix 1.0 și distribuția GuixSD bazată pe acesta sunt disponibile

  • Pregătit o nouă imagine pentru mașinile virtuale, potrivită atât pentru familiarizarea cu distribuția, cât și pentru crearea de medii de lucru pentru dezvoltare;
  • S-au adăugat noi servicii de sistem cups-pk-helper, imap4d, inputattach, localed, nslcd, zabbix-agent și zabbix-server;
  • Au fost actualizate versiunile de program din 2104 pachete, au fost adăugate 1102 pachete noi. Inclusiv versiunile actualizate de clojure 1.10.0, cups 2.2.11, emacs 26.2, gcc 8.3.0, gdb 8.2.1, ghc 8.4.3,
    gimp 2.10.10, glibc 2.28, gnome 3.28.2, gnupg 2.2.15, go 1.12.1,
    guile 2.2.4, icecat 60.6.1-guix1, icedtea 3.7.0, inkscape 0.92.4,
    libreoffice 6.1.5.2, linux-libre 5.0.10, mate 1.22.0, ocaml 4.07.1,
    octava 5.1.0, openjdk 11.28, python 3.7.0, rugină 1.34.0, r 3.6.0,
    sbcl 1.5.1, shepherd 0.6.0, xfce 4.12.1 și xorg-server 1.20.4;

  • GNU Shepherd Service Manager a fost actualizat la versiunea 0.6, care implementează modul de operare al serviciului one-shot, în care serviciul este marcat oprit imediat după o lansare cu succes, care poate fi necesar pentru a lansa joburi unice înainte de alte servicii, de exemplu, pentru a efectua curățare sau inițializare;
  • Pentru comanda „guix package” au fost adăugate aliasurile „install”, „remove”, „upgrade” și „search” tipice altor manageri de pachete. Pentru a căuta un pachet puteți folosi comanda „guix search”, pentru a instala „guix install” și pentru a actualiza „guix pull” și „guix upgrade”;
  • Un indicator de progres al operațiunii și o evidențiere colorată a mesajelor de diagnosticare au fost adăugate la managerul de pachete. În mod implicit, majoritatea comenzilor rulează acum fără ieșire detaliată a ecranului, care este activată cu o opțiune separată „-v” (--verbosity);
  • Au fost adăugate o nouă comandă „guix system delete-generations” și opțiunile „guix pack —save-provenance”, „guix pull —news”, „guix environment —preserve”, „guix gc —list-roots”, „guix” la managerul de pachete guix gc -delete-generations", "guix weather -coverage";
  • S-au adăugat noi opțiuni conversii de pachete „--with-git-url” și „-with-branch”;
  • Câmpurile de configurare „keyboard-layout” pentru definirea layout-ului tastaturii, „xorg-configuration” pentru configurarea serverului X, „label” pentru eticheta secțiunii și „essential-services” pentru definirea serviciilor principale au fost adăugate la distribuție;
  • S-a adăugat comanda „guix pack -RR” pentru a crea arhive tar de executabile relocabile care pot fi rulate în raport cu căile din spațiul de nume al utilizatorului sau relativ la PRORoot;
  • „guix pull” oferă formarea unui cache de pachet pentru a accelera operațiunile de căutare după nume și oferă încorporarea pachetului „glibc-utf8-locales”;
  • Este asigurată repetabilitatea completă (bit pentru bit) a imaginilor ISO generate de comanda „guix system”;
  • GDM este folosit ca manager de autentificare în loc de SLiM;
  • Suportul pentru construirea Guix folosind Guile 2.0 a fost întrerupt.

Să vă reamintim că managerul de pachete GNU Guix se bazează pe dezvoltările proiectului Nix și, în plus față de funcțiile tipice de gestionare a pachetelor, acceptă caracteristici precum efectuarea de actualizări tranzacționale, capacitatea de a retrage actualizările, lucrul fără a obține privilegii de superutilizator, suport pentru profiluri legate de utilizatori individuali, capacitatea 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 scenariile de construire a aplicațiilor și regulile de formare a pachetelor, se propune utilizarea unui limbaj specializat de nivel înalt specific domeniului și a componentelor API Guile Scheme, care vă permit să efectuați toate operațiunile de gestionare a pachetelor în limbajul de programare funcțional Scheme.

Acceptă capacitatea de a utiliza pachete pregătite pentru managerul de pachete Nix și plasate în depozit
Nixpkgs. Pe lângă operațiunile cu pachete, este posibil să se creeze scripturi pentru a gestiona configurațiile aplicațiilor. Când un pachet este construit, toate dependențele asociate cu acesta sunt descărcate și construite automat. Este posibil fie să descărcați pachete binare gata făcute din depozit, fie să construiți din texte sursă cu toate dependențele. Au fost implementate instrumente pentru a menține la zi versiunile programelor instalate prin organizarea instalării actualizărilor dintr-un depozit extern.

Mediul de construire pentru pachete este format sub forma unui container care conține toate componentele necesare pentru ca aplicația să funcționeze, 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 hash-urilor de identificare în 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, permițându-i acestuia să coexiste în paralel cu alți manageri de pachete și să ofere suport pentru o gamă largă de distribuții existente. De exemplu, pachetul este instalat ca /nix/store/f42d5878f3a0b426064a2b64a0c6f92-firefox-66.0.0/, unde „f42d58...” este identificatorul unic de pachet utilizat pentru monitorizarea dependenței.

Distribuția include doar componente gratuite și vine cu nucleul GNU Linux-Libre, curățat de elementele non-libere ale firmware-ului binar. GCC 8.3 este folosit pentru asamblare. Managerul de servicii este utilizat ca sistem de inițializare GNU Shepherd (ex dmd), dezvoltat ca o alternativă la SysV-init cu suport pentru dependențe. Daemonul de control Shepherd și utilitățile sunt scrise în Guile (una dintre implementările limbajului Scheme), care este, de asemenea, folosit pentru a defini parametrii pentru lansarea serviciilor. Imaginea de bază acceptă modul consolă, dar pentru instalare pregătit 9714 pachete gata făcute, inclusiv componente ale stivei grafice bazate pe X.Org, managerii de ferestre dwm și ratpoison, desktop-ul Xfce, precum și o selecție de aplicații grafice.

Sursa: opennet.ru

Adauga un comentariu