U lirua paketa menaxher GNU Guix 1.3 dhe distribucioni GNU/Linux i ndërtuar mbi të. U krijuan imazhe për shkarkim për instalim në USB Flash (610 MB) dhe për përdorim në sistemet e virtualizimit (972 MB). Mbështetet puna në arkitekturën i686, x86_64, Power9, armv7 dhe aarch64.
Distribucioni lejon instalimin si një OS të veçantë në sistemet e virtualizimit, në kontejnerë dhe në pajisje të zakonshme, si dhe fillimin në distribucione të tjera të instaluara të GNU/Linux, duke shërbyer si një platformë për shpërndarjen e aplikacioneve. Përdoruesit ofrohen funksione si mbajtja e shënimeve të varësive, ndërtimet e ripërsëritura, puna pa root, rikthimi në versionet e mëparshme në rast problemesh, menaxhimi i konfigurimit, klonimi i mjediseve (krijimi i një kopjeje të saktë të mjedisit të aplikacioneve në kompjuterë të tjerë) dhe të tjera.
TĂ« rejat kryesore:
- ĂshtĂ« realizuar mbĂ«shtetje fillestare pĂ«r arkitekturĂ«n POWER9 (powerpc64le-linux).
- Ofrohet mundĂ«sia e pĂ«rdorimit tĂ« modit deklerativ tĂ« shpĂ«rndarjes, ku nĂ« vend tĂ« njĂ« sĂ«rĂ« komandash "guix install" dhe "guix remove", ekzekutohet njĂ« komandĂ« "guix package âmanifest=manifest.scm" me pĂ«rkufizimin nĂ« skedarin manifest.scm tĂ« tĂ« gjitha aplikacioneve qĂ« kĂ«rkohet tĂ« instalohen. PĂ«r tĂ« gjeneruar manifestin bazuar nĂ« profilin ekzistues tĂ« instalimit nĂ« komandĂ«n "guix package" ofrohen opsionet "âexport-manifest" dhe "âexport-channels".
- Shtuar opsioni pĂ«r transformimin e pakove "âwith-latest", e dobishme pĂ«r ata qĂ« dĂ«shirojnĂ« tĂ« kenĂ« versionet mĂ« tĂ« freskĂ«ta tĂ« programeve, edhe nĂ«se pĂ«r aplikacionin ende nuk Ă«shtĂ« krijuar njĂ« paketĂ« e gatshme pĂ«r Guix. Po ashtu, Ă«shtĂ« shtuar opsioni "âwith-patch" pĂ«r ndĂ«rtimin e njĂ« serie paketash me aplikimin e njĂ« patch-i nĂ« njĂ« ose mĂ« shumĂ« prej tyre.
- NĂ« komandat "guix" Ă«shtĂ« realizuar shfaqja e rekomandimeve me sugjerime pĂ«r zĂ«vendĂ«sim nĂ« rast tĂ« gabimeve tĂ« shkrimit ose pranisĂ« sĂ« nĂ«nkomandave alternative. $ guix package âexport-manifests guix package: gabim: export-manifests: opsion i panjohur sugjerim: A do tĂ« thoshit `export-manifestâ?
- Në "guix refresh" është shtuar mbështetje për shkarkimin e përditësimeve nga hostingu SourceForge, si dhe moda generic-html për marrjen e përditësimit nga faqja kryesore e projektit.
- Shtuar komandën e re "guix import go" për importin rekursiv të paketave në gjuhën Go duke marrë parasysh varësitë. Në komandën "guix import opam" është realizuar mbështetje për paketat Coq. Në "guix import crate" është siguruar marrja parasysh e versionimit semantik në modalitetin e shkarkimit rekursiv. Komanda "guix import nix" është fshirë.
- Optimizuar instalimi i pakove binare të paratreguara (substitute) dhe është përshpejtuar puna e komandës "guix system init".
- NĂ« komandĂ«n "guix environment" Ă«shtĂ« shtuar opsioni "âprofile".
- NĂ« guix-daemon Ă«shtĂ« shtuar opsioni "âdiscover" pĂ«r zbulimin nĂ« rrjetin lokal servera, duke ofruar paketat binare tĂ« pĂ«rpunuara (substitute), duke pĂ«rdorur protokollet mDNS/DNS-SD. PĂ«r dĂ«rgimin e njoftimeve nga serverĂ«t, nĂ« komandĂ«n "guix publish" Ă«shtĂ« shtuar opsioni "âadvertise".
- ĂshtĂ« realizuar mundĂ«sia e pĂ«rdorimit tĂ« algoritmit Zstd pĂ«r komprimimin e pakove.
- NĂ« modin "âverbosity=1" Ă«shtĂ« ndaluar shfaqja e URL-ve tĂ« shkarkuara.
- Në vend të nënkomandave "disk-image" dhe "vm-image" u ofrua komanda e përgjithshme "guix system image".
- Në imazhin e distribucionit për makinave virtuale u shtua mbështetja për protokollin SPICE.
- Në skriptin e instalimit është shtuar moda e instalimit automatik.
- Shtuar shërbimin lvm-device-mapping për mbështetje të menaxherit të volumeve LVM (Linux Logical Volume Manager).
- Shtuar moda "guix system image -t rock64-raw" për gjenerimin e imazheve të distribucionit për plakat Rock64.
- Në initrd për default është përfshirë mbështetje për bcachefs.
- Në serverin e printimit CUPS për default është aktivizuar shërbimi "brlaser" për mbështetje të printerëve Brother.
- Shtuar shërbime të reja sistemike agate, cuirass-remote-worker, ipfs, keepalived, laminar, radicale, syncthing, transmission-daemon, wireguard, xorg-server.
- Përditësuar versionet e programeve në 3100 paketa, shtuar 2009 paketa të reja. Përfshirë versionet e azhurnuara të 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, inkscape 1.0.2, julia 1.5.3, libreoffice 6.4.7.2, linux-libre 5.11.15, ocaml 4.11.1, octave 6.2.0, openjdk 14.0, python 3.8.2, racket 8.0, rust 1.51.0, r 4.0.4, sbcl 2.1.3, Xfce 4.16.0 dhe xorg-server 1.20.10.
- Korrigjimi i dobĂ«sisĂ« CVE-2021-27851 nĂ« guix-daemon, e cila lejonte njĂ« pĂ«rdorues lokal tĂ« ngriste privilegjet e tij nĂ« sistem. Problemi ishte se gjatĂ« ekzekutimit tĂ« komandĂ«s "guix build" katalogu i ndĂ«rtimit mbetej i aksesueshĂ«m pĂ«r tĂ« gjithĂ« pĂ«r shkrim dhe pĂ«rdoruesi mund tĂ« krijonte njĂ« lidhje tĂ« ngurtĂ« me njĂ« skedar, qĂ« i pĂ«rkiste pĂ«rdoruesit root dhe ndodhej jashtĂ« katalogut tĂ« ndĂ«rtimit, si p.sh. "/etc/shadow". NĂ«se gjatĂ« ndĂ«rtimit ishte e specifikuar opsioni "âkeep-failed", atĂ«herĂ« nĂ« rast tĂ« dĂ«shtimit guix-daemon ndryshonte pronĂ«sinĂ« pĂ«r tĂ« gjithĂ« pemĂ«n e ndĂ«rtimit nĂ« pĂ«rdoruesin aktual, duke pĂ«rfshirĂ« lidhjet e ngurta.
Të kujtojmë se menaxheri i paketave GNU Guix bazohet në punën e projektit Nix dhe, përveç funksioneve tipike të menaxhimit të paketave, mbështet mundësi të tilla si përditësime transaksionale, mundësia e rikthimit të përditësimeve, funksionimi pa nevojën për privilegje superuser, mbështetje për profile të lidhura me përdorues të veçantë, mundësinë për të instaluar njëkohësisht disa versione të një programi, si dhe mjetet për pastrimin e plehrave (identifikimin dhe heqjen e versioneve të pa përdorura të paketave). Për të përcaktuar skenarët e ndërtimit të aplikacioneve dhe rregullat e formimit të paketave, rekomandohet përdorimi i një gjuhe të specializuar të orientuar kah temat dhe komponentët Guile Scheme API, të cilat lejojnë kryerjen e të gjitha operacioneve të menaxhimit të paketave në gjuhën funksionale të programimit Scheme.
MbĂ«shtetet pĂ«rdorimi i paketave tĂ« pĂ«rgatitura pĂ«r menaxherin e paketave Nix dhe qĂ« janĂ« vendosur nĂ« depot Nixpkgs. PĂ«rveç operacioneve me paketa, Ă«shtĂ« e mundur tĂ« krijoni skenarĂ« pĂ«r menaxhimin e konfiguracionit tĂ« aplikacioneve. GjatĂ« ndĂ«rtimit tĂ« paketĂ«s, tĂ« gjitha varĂ«sitĂ« e lidhura ngarkohen dhe ndodhen automatikisht. ĂshtĂ« e mundur si shkarkimi i paketave tĂ« gatshme binare nga depoja, ashtu edhe ndĂ«rtimi nga kodet burimore me tĂ« gjitha varĂ«sitĂ«. JanĂ« implementuar mjete pĂ«r tĂ« mbajtur versionet e programeve tĂ« instaluara nĂ« gjendje tĂ« pĂ«rditĂ«suar pĂ«rmes organizimit tĂ« instalimit tĂ« pĂ«rditĂ«simeve nga njĂ« depo e jashtme.
Mjedisi i mbledhjes pĂ«r paketat formohet si njĂ« kontejner qĂ« pĂ«rmban tĂ« gjitha komponentet e nevojshme pĂ«r funksionimin e aplikacioneve, duke mundĂ«suar formimin e njĂ« grumbulli paketash qĂ« mund tĂ« funksionojnĂ« pa rekuptuar nĂ« pĂ«rbĂ«rjen e mjedisit bazĂ« sistemor tĂ« distribuimit, nĂ« tĂ« cilin Guix pĂ«rdoret si njĂ« shtresĂ«. Midis paketave Guix Ă«shtĂ« e mundur tĂ« pĂ«rcaktohen varĂ«sitĂ«, duke e pĂ«rdorur skanimin e hash-identifikuesve nĂ« direktorinĂ« e paketave tĂ« instaluara pĂ«r tĂ« verifikuar praninĂ« e varĂ«sive tashmĂ« tĂ« instaluara. Paketat instalohen nĂ« njĂ« pemĂ« tĂ« veçantĂ« direktorish ose nĂ« njĂ« nĂ«n-direktor nĂ« katalogun e pĂ«rdoruesit, duke mundĂ«suar bashkĂ«ekzistencĂ«n paralele me menaxherĂ«t e tjerĂ« tĂ« paketave dhe duke mbĂ«shtetur njĂ« gamĂ« tĂ« gjerĂ« distribuimesh ekzistuese. PĂ«r shembull, paketa instaloooohet si /nix/store/452a5978f3b0b426064a2b64a0c6f41-firefox-88.0.0/, ku «452a59âŠÂ» Ă«shtĂ« identifikuesi unik i paketĂ«s, i pĂ«rdorur pĂ«r kontrollin e varĂ«sive.
Distribucioni përfshin vetëm komponente të lira dhe shoqërohet me kernelin GNU Linux-Libre, të pastruar nga elemente të huaja të binarëve. Për ndërtimin e përdorur GCC 9.3. Si sistem iniciative përdoret menaxheri i shërbimeve GNU Shepherd (dikur dmd), i zhvilluar si një alternativë ndaj SysV-init me mbështetje për varësi. Demon menaxhues dhe mjetet e Shepherd janë të shkruara në gjuhën Guile (një nga realizimet e gjuhës Scheme), e cila gjithashtu përdoret për të përcaktuar parametrat e nisjes së shërbimeve. Imazhi bazë mbështet punën në mënyrë konsolë, por janë përgatitur 17243 paketa të gatshme për instalimin, përfshirë komponentet e grumbullit grafik të bazuar në X.Org, menaxherët e dritareve dwm dhe ratpoison, ndërfaqen grafike Xfce, si dhe një koleksion aplikacionesh grafike.
Burimi: opennet.ru
