Pengurus pakej GNU Guix 1.4 dan pengedaran berdasarkannya tersedia

Pengurus pakej GNU Guix 1.4 dan pengedaran GNU/Linux yang dibina berdasarkannya telah dikeluarkan. Untuk memuat turun, imej telah dijana untuk pemasangan pada USB Flash (814 MB) dan digunakan dalam sistem virtualisasi (1.1 GB). Menyokong operasi pada seni bina i686, x86_64, Power9, armv7 dan aarch64.

Pengedaran membenarkan pemasangan sebagai OS yang berdiri sendiri dalam sistem virtualisasi, dalam bekas dan pada peralatan konvensional, dan boleh dilancarkan dalam pengedaran GNU/Linux yang telah dipasang, bertindak sebagai platform untuk menggunakan aplikasi. Pengguna dibekalkan dengan fungsi seperti mengambil kira kebergantungan, binaan berulang, bekerja tanpa akar, berguling semula ke versi sebelumnya sekiranya berlaku masalah, pengurusan konfigurasi, persekitaran pengklonan (membuat salinan tepat persekitaran perisian pada komputer lain), dsb. .

Inovasi utama:

  • Pengurusan persekitaran perisian yang lebih baik. Perintah "persekitaran guix" telah digantikan dengan arahan "guix shell" baharu, yang membolehkan anda bukan sahaja mencipta persekitaran binaan untuk pembangun, tetapi juga menggunakan persekitaran untuk membiasakan diri anda dengan program tanpa ditunjukkan dalam profil dan tanpa melakukan " pemasangan guix”. Contohnya, untuk memuat turun dan melancarkan permainan supertuxkart, anda boleh menjalankan "guix shell supertuxkart - supertuxkart". Selepas memuat turun, pakej akan disimpan dalam cache dan pelancaran seterusnya tidak memerlukan pengekstrakan semula.

    Untuk memudahkan penciptaan persekitaran untuk pembangun, "guix shell" menyediakan sokongan untuk fail guix.scm dan manifest.scm yang menerangkan komposisi persekitaran (pilihan "--export-manifest" boleh digunakan untuk menjana fail). Untuk mencipta bekas di mana hierarki direktori sistem klasik dicontohi, "guix shell" menawarkan pilihan "β€”container β€”emulate-fhs".

  • Menambah arahan "guix home" untuk mengawal persekitaran rumah. Guix membolehkan anda menentukan semua komponen persekitaran rumah anda, termasuk pakej, perkhidmatan dan fail bermula dengan titik. Menggunakan arahan "guix home", contoh persekitaran rumah yang diterangkan boleh dibuat semula dalam direktori $HOME atau dalam bekas, sebagai contoh, untuk memindahkan persekitaran anda ke komputer baharu.
  • Menambahkan pilihan "-f deb" pada arahan "guix pack" untuk mencipta pakej deb berasingan yang boleh dipasang pada Debian.
  • Untuk mencipta pelbagai jenis imej sistem (mentah, QCOW2, ISO8660 CD/DVD, Docker dan WSL2), arahan "imej sistem guix" universal dicadangkan, yang membolehkan anda menentukan jenis storan, partition dan sistem pengendalian untuk imej yang dicipta .
  • Pilihan β€œβ€”tune” telah ditambahkan pada arahan untuk membina pakej, yang membolehkan anda menentukan mikroarkitek pemproses yang mana pengoptimuman khusus akan didayakan (contohnya, arahan AVX-512 SIMD boleh digunakan pada AMD dan CPU Intel baharu) .
  • Pemasang melaksanakan mekanisme untuk menyimpan maklumat penyahpepijatan penting secara automatik sekiranya berlaku kegagalan pemasangan.
  • Masa permulaan aplikasi telah dikurangkan dengan menggunakan cache semasa pemautan dinamik, yang mengurangkan panggilan ke stat dan membuka panggilan sistem apabila mencari perpustakaan.
  • Keluaran baharu sistem permulaan GNU Shepherd 0.9 telah digunakan, yang melaksanakan konsep perkhidmatan sementara (sementara) dan keupayaan untuk mencipta perkhidmatan yang diaktifkan oleh aktiviti rangkaian (dalam gaya pengaktifan soket systemd).
  • Menambah antara muka baharu untuk menetapkan saiz partition swap dalam konfigurasi sistem pengendalian.
  • Antara muka untuk menetapkan konfigurasi rangkaian statik telah direka bentuk semula, yang kini menawarkan analog deklaratif tetapan dalam gaya arahan ip.
  • Menambahkan 15 perkhidmatan sistem baharu, termasuk Jami, Samba, fail2ban dan Gitile.
  • Melancarkan packages.guix.gnu.org untuk navigasi pakej.
  • Versi program dalam 6573 pakej telah dikemas kini, 5311 pakej baharu telah ditambah. Antara lain, versi terkini 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. Mengalih keluar lebih 500 pakej menggunakan Python 2.

Pengurus pakej GNU Guix 1.4 dan pengedaran berdasarkannya tersedia

Mari kita ingat bahawa pengurus pakej GNU Guix adalah berdasarkan perkembangan projek Nix dan, sebagai tambahan kepada fungsi pengurusan pakej biasa, menyokong ciri seperti melaksanakan kemas kini transaksi, keupayaan untuk melancarkan kemas kini, bekerja tanpa mendapatkan keistimewaan superuser, menyokong profil terikat kepada pengguna individu, keupayaan untuk memasang beberapa versi satu program secara serentak, alat pengumpulan sampah (mengenal pasti dan mengalih keluar versi pakej yang tidak digunakan). Untuk mentakrifkan senario binaan aplikasi dan peraturan pembentukan pakej, adalah dicadangkan untuk menggunakan bahasa khusus domain peringkat tinggi khusus dan komponen API Skim Guile, yang membolehkan anda melaksanakan semua operasi pengurusan pakej dalam Skim bahasa pengaturcaraan berfungsi.

Keupayaan untuk menggunakan pakej yang disediakan untuk pengurus pakej Nix dan diletakkan dalam repositori Nixpkgs disokong. Selain operasi dengan pakej, adalah mungkin untuk mencipta skrip untuk mengurus konfigurasi aplikasi. Apabila pakej dibina, semua kebergantungan yang dikaitkan dengannya dimuat turun dan dibina secara automatik. Anda boleh sama ada memuat turun pakej binari sedia dari repositori atau membina daripada teks sumber dengan semua kebergantungan. Alat telah dilaksanakan untuk memastikan versi program yang dipasang dikemas kini dengan mengatur pemasangan kemas kini daripada repositori luaran.

Persekitaran binaan untuk pakej dibentuk dalam bentuk bekas yang mengandungi semua komponen yang diperlukan untuk aplikasi berfungsi, yang membolehkan anda membuat satu set pakej yang boleh berfungsi tanpa mengambil kira komposisi persekitaran sistem asas pengedaran, di mana Guix digunakan sebagai tambahan. Kebergantungan boleh ditentukan antara pakej Guix dengan mengimbas cincang pengecam dalam direktori pakej yang dipasang untuk mencari kehadiran kebergantungan yang telah dipasang. Pakej dipasang dalam pepohon direktori atau subdirektori yang berasingan dalam direktori pengguna, membolehkan ia wujud bersama selari dengan pengurus pakej lain dan menyediakan sokongan untuk pelbagai pengedaran sedia ada. Sebagai contoh, pakej dipasang sebagai /nix/store/452a5978f3b1b426064a2b64a0c6f41-firefox-108.0.1/, dengan "452a59..." ialah pengecam pakej unik yang digunakan untuk pemantauan kebergantungan.

Pengedaran hanya merangkumi komponen percuma dan disertakan dengan kernel GNU Linux-Libre, dibersihkan daripada elemen bukan bebas perisian tegar binari. GCC 12.2 digunakan untuk pemasangan. Pengurus perkhidmatan GNU Shepherd (dahulunya dmd) digunakan sebagai sistem permulaan, dibangunkan sebagai alternatif kepada SysV-init dengan sokongan pergantungan. Daemon dan utiliti kawalan Shepherd ditulis dalam Guile (salah satu pelaksanaan bahasa Skim), yang juga digunakan untuk menentukan parameter untuk melancarkan perkhidmatan. Imej asas menyokong kerja dalam mod konsol, tetapi 20526 pakej siap sedia disediakan untuk pemasangan, termasuk komponen susunan grafik berasaskan X.Org, pengurus tetingkap dwm dan racun tikus, desktop GNOME dan Xfce, serta pilihan grafik aplikasi.

Sumber: opennet.ru

Tambah komen