Даступны пакетны мэнэджар GNU Guix 1.1 і дыстрыбутыў на яго аснове

Адбыўся рэліз пакетнага мэнэджэра GNU Guix 1.1 і пабудаванага на яго аснове дыстрыбутыва GNU/Linux. Для загрузкі сфарміраваны вобразы для ўстаноўкі на USB Flash (241 Мб) і выкарыстання ў сістэмах віртуалізацыі (479 ​​Мб). Падтрымліваецца праца на архітэктурах i686, x86_64, armv7 і aarch64.

Дыстрыбутыў дапускае ўстаноўку як у якасці адасобленай АС у сістэмах віртуалізацыі, у кантэйнерах і на звычайным абсталяванні, так і запуск ва ўжо ўсталяваных дыстрыбутывах GNU/Linux, выступаючы ў ролі платформы для разгортвання прыкладанняў. Карыстальніку прадастаўляюцца такія функцыі, як улік залежнасцяў, паўтаральныя зборкі, праца без root, адкат на мінулыя версіі ў выпадку праблем, кіраванне канфігурацыяй, кланаванне акружэнняў (стварэнне дакладнай копіі праграмнага асяроддзя на іншых кампутарах) і да т.п.

Асноўныя навіны:

  • Дададзена новая каманда «guix deploy», прызначаная для разгортвання зараз начыння некалькіх кампутараў, напрыклад, новых асяродкаў у VPS або выдаленых сістэм, даступных па SSH.
  • Аўтарам іншых рэпазітараў пакетаў (каналаў) прадастаўлены сродкі для напісання навінавых паведамленняў, якія карыстальнік можа прачытаць пры выкананні каманды "guix pull -news".
  • Дададзена каманда "guix system describe", якая дае магчымасць пры разгортванні ацаніць змены паміж двума рознымі асобнікамі сістэмы.
  • У каманду "guix pack" дададзена падтрымка генерацыі выяў для Singularity і Docker.
  • Дададзена каманда "guix time-machine", якая дазваляе адкаціцца да любога выпуску пакета, захаванага ў архіве. Праграму спадчыны.
  • У "guix system" дададзена опцыя "-target", якая прадстаўляе частковую падтрымку крос-кампіляцыі;
  • Забяспечана выкананне Guix з выкарыстаннем Хітрасць 3, Што станоўча адбіваецца на прадукцыйнасці.
  • Граф залежнасцяў пакетаў абмежаваны скарочаным наборам бінарных зыходных кампанентаў зборкі (seed), што з'яўляецца вялікім крокам да рэалізацыі поўнасцю правяранага бутстрэпінгу (bootstrap).
  • Рэалізаваны фрэймворк для аўтаматызаванага тэсціравання графічнага ўсталёўніка. Усталёўнік зараз збіраецца ў сістэме бесперапыннай інтэграцыі і тэстуецца ў розных канфігурацыях (шыфраваны і звычайны каранёвы падзел, усталёўка з працоўнымі сталамі і да т.п.).
  • Дададзеныя зборачныя сістэмы для Node.js, Julia і Qt, якія спрашчаюць напісанне пакетаў для злучаных з дадзенымі праектамі прыкладанняў.
  • Дададзены новыя сістэмныя сэрвісы auditd, fontconfig-file-system, getmail, gnome-keyring, kernel-module-loader,
    knot-resolver, mumi, nfs, nftables, nix, pagekite, pam-mount, patchwork,
    polkit-wheel, provenance, pulseaudio, sane, singularity, usb-modeswitch

  • Абноўлены версіі праграм у 3368 пакетах, дададзена 3514 новых пакетаў. У тым ліку абноўлены версіі xfce 4.14.0, gnome 3.32.2, mate 1.24.0, xorg-server 1.20.7, bash 5.0.7, binutils 2.32, cups 2.3.1, emacs 26.3, enlightenment.
    gcc 9.3.0, gimp 2.10.18, glibc 2.29,
    gnupg 2.2.20, go 1.13.9, guile 2.2.7,
    icecat 68.7.0-guix0-preview1, icedtea 3.7.0,
    libreoffice 6.4.2.2, linux-libre 5.4.31, , openjdk 12.33, perl 5.30.0, python 3.7.4,
    rust 1.39.0.

Нагадаем, што пакетны мэнэджар GNU Guix заснаваны на напрацоўках праекту Nix і акрамя тыповых функцый кіравання пакетамі падтрымлівае такія магчымасці, як выкананне транзакцыйных абнаўленняў, магчымасць адкату абнаўленняў, праца без атрымання прывілеяў суперкарыстальніка, падтрымка прывязаных да асобных карыстачоў профіляў, магчымасць адначасовай усталёўкі некалькіх версій адной праграмы, сродкі ўборкі смецця (выяўленне і выдаленне невыкарыстоўваных версій пакетаў ). Для вызначэння сцэнарыяў зборкі прыкладанняў і правілаў фарміравання пакетаў прапануецца выкарыстоўваць спецыялізаваную высокаўзроўневую прадметна-арыентаваную мову і кампаненты Guile Scheme API, якія дазваляюць выконваць усе аперацыі па кіраванні пакетамі на функцыянальнай мове праграмавання Scheme.

Падтрымліваецца магчымасць выкарыстання пакетаў, падрыхтаваных для пакетнага мэнэджара Nix і размешчаных у рэпазітары.
Nixpkgs. Акрамя аперацый з пакетамі магчыма стварэнне сцэнарыяў для кіравання канфігурацыяй дадаткаў. Пры зборцы пакета аўтаматычна загружаюцца і збіраюцца ўсе злучаныя з ім залежнасці. Магчыма як загрузка гатовых бінарных пакетаў з рэпазітара, так і зборка з зыходных тэкстаў з усімі залежнасцямі. Рэалізаваны сродкі для падтрымання версій устаноўленых праграм у актуальным стане праз арганізацыю ўстаноўкі абнаўленняў са знешняга рэпазітара.

Зборачнае асяроддзе для пакетаў фармуецца ў выглядзе кантэйнера, які змяшчае ўсе неабходныя для працы прыкладанняў кампаненты, што дазваляе сфармаваць набор пакетаў, здольны працаваць без аглядкі на склад базавага сістэмнага асяроддзя дыстрыбутыва, у якім Guix выкарыстоўваецца ў якасці надбудовы. Паміж пакетамі Guix магчыма вызначэнне залежнасцяў, пры гэтым для пошуку наяўнасці ўжо ўсталяваных залежнасцяў выкарыстоўваецца сканаванне хэшаў-ідэнтыфікатараў у дырэкторыі ўсталяваных пакетаў. Пакеты ўстанаўліваюцца ў асобнае дрэва дырэкторый або паддырэкторыю ў каталогу карыстальніка, што дазваляе забяспечыць яго паралельнае суіснаванне з іншымі пакетнымі мэнэджэрамі і забяспечыць падтрымку шырокага спектра існуючых дыстрыбутываў. Напрыклад, пакет усталёўваецца як /nix/store/f42a5878f3a0b426064a2b64a0c6f92-firefox-75.0.0/, дзе «f42a58…» з'яўляецца ўнікальным ідэнтыфікатарам пакета, выкарыстоўваным для кантролю залежнасцяў.

Дыстрыбутыў уключае толькі вольныя кампаненты і пастаўляецца з ядром GNU Linux-Libre, вычышчаным ад нявольных элементаў бінарных прашывак. Для зборкі прымяняецца GCC 9.3. У якасці сістэмы ініцыялізацыі выкарыстоўваецца сэрвісны мэнэджар GNU Shepherd (былы dmd), які развіваецца як альтэрнатыва SysV-init з падтрымкай залежнасцяў. Кіраўнік дэман і ўтыліты Shepherd напісаны на мове Guile (адна з рэалізацый мовы Scheme), які таксама выкарыстоўваецца і для вызначэння параметраў запуску сэрвісаў. Базавая выява падтрымлівае працу ў кансольным рэжыме, але для ўсталёўкі падрыхтавана 13162 гатовых пакета, сярод якіх і кампаненты графічнага стэка на базе X.Org, аконныя мэнэджары dwm і ratpoison, працоўны стол Xfce, а таксама падборка графічных прыкладанняў.

Крыніца: opennet.ru

Дадаць каментар