Новости и события » Hi-Tech » Доступен пакетный менеджер GNU Guix 0.15 и дистрибутив GuixSD на его основе

Доступен пакетный менеджер GNU Guix 0.15 и дистрибутив GuixSD на его основе

Как сообщает opennet.ru проект GNU опубликовал пакетный менеджер GNU Guix 0.15 и построенного на его основе дистрибутива GNU/Linux - GuixSD (Guix System Distribution). Допускается установка как в качестве обособленной ОС в системах виртуализации и на обычном оборудовании, так и запуск в уже установленных типовых окружениях GNU/Linux. Для загрузки сформированы образы для установки на USB Flash и использования в QEMU (190 Мб). Поддерживается работа на архитектурах i686, x86_64, armv7, aarch64 и mips64el.

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

Поддерживается возможность использования пакетов, подготовленных для пакетного менеджера Nix и размещенных в репозитории Nixpkgs. Кроме операций с пакетами возможно создание сценариев для управления конфигурацией приложений. При сборке пакета автоматически загружаются и собираются все связанные с ним зависимости. Возможна как загрузка готовых бинарных пакетов из репозитория, так и сборка из исходных текстов со всеми зависимостями. Реализованы средства для поддержания версий установленных программ в актуальном состоянии через организацию установки обновлений из внешнего репозитория.

Сборочное окружение для пакетов формируется в виде контейнера, содержащего все необходимые для работы приложений компоненты, что позволяет сформировать набор пакетов, способный работать без оглядки на состав базового системного окружения дистрибутива, в котором Guix используется в качестве надстройки. Между пакетами Guix возможно определение зависимостей, при этом для поиска наличия уже установленных зависимостей используется сканирование хэшей-идентификаторов в директории установленных пакетов. Пакеты устанавливаются в отдельное дерево директорий или поддиректорию в каталоге пользователя, что позволяет обеспечить его параллельное сосуществование с другими пакетными менеджерами и обеспечить поддержку широкого спектра существующих дистрибутивов. Например, пакет устанавливается как /nix/store/f42d68df5d3a0b426064a6a54a7c6f02-firefox-61.0.0/, где "f42d68..." является уникальным идентификатором пакета, используемым для контроля зависимостей.

Дистрибутив включает только свободные компоненты и поставляется с ядром GNU Linux-Libre, очищенным от несвободных элементов бинарных прошивок. Для сборки применяется GCC 7. В качестве системы инициализации используется сервисный менеджер GNU Shepherd (бывший dmd), развиваемый как альтернатива SysV-init с поддержкой зависимостей. Управляющий демон и утилиты Shepherd написаны на языке Guile (одна из реализаций языка Scheme), который также используется и для определения параметров запуска сервисов. Базовый образ поддерживает работу в консольном режиме, но для установки подготовлено более 7800 готовых пакетов, среди которых и компоненты графического стека на базе X.Org, оконные менеджеры dwm и ratpoison, а также ряд программ на базе библиотеки GTK+.

Основные новшества:

  • В команде 'guix pack' появилась возможность сборки образов со SquashFS и создания tar-архивов с перемещаемыми исполняемыми файлами;
  • Добавлены новые команды "guix system docker-image" и "guix offload status";
  • Для guix-daemon реализован набор правил SELinux и добавлена поддержка сборок ARMv7 на системах AArch64;
  • В "guix system" обеспечен вывод информации о модулях ядра, которые следует добавить в initrd, а также предупреждений о некорректно сопоставленных устройствах и нехватке дискового пространства
  • В настройку operating-system добавлено новое поле initrd-modules;
  • Пакеты для Python 2.x переименованы с "python" на "python2";
  • Возобновлена поддержка систем RHEL6 с ядром Linux 2.6;
  • Сервисный менеджер GNU Shepherd обновлен до версии 0.4.0 и теперь сохраняет логи через syslogd;
  • Добавлены новые системные сервисы для alsa, cat-avatar-generator, darkstat, dhcpd, dnsmasq, enlightenment, fprintd, hpcguix-web, httpd, mate, modem-manager, openntpd, php-fpm, qemu-binfmt и wesnothd;
  • Обновлены версии программ в 2231 пакете, добавлено 1200 новых пакетов, в том числе android-bionic-uapi, daemontools, git-annex, keepalived, krita,google-brotli, lyx, mate, qtwebview, vsftpd, wpa-supplicant-gui, wine-staging и youtube-viewer, а также большие подборки модулей для Emacs, Go, Java, R, Perl, Python и Haskell.

Android YouTube


Магія східної кухні: особливості та традиції

Магія східної кухні: особливості та традиції

Східна кухня відома різноманіттям ароматів та смаків. Вона заснована на глибоких традиціях, історії та має особливості приготування. Звички формувалися впродовж багатьох століть під впливом різних культур та географічних особливостей. Вони присутні в кожній...

сегодня 15:32

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх