Проект GNU начал развитие нового пакетного менеджера Guix

23 ноября 2012 года

Разработчики сообщества GNU представили проект GNU Guix, в рамках которого началось развитие нового пакетного менеджера и основанного на нём свободного дистрибутива приложений GNU. Для тестирования доступен первый альфа-выпуск проекта, который поставляется с небольшим набором пакетов, составляющих дистрибутив Guix. В настоящее время дистрибутив не поддерживает формирование отдельной загружаемой системы и поставляется как набор пакетов с приложениями для установки в уже установленных GNU/Linux системах.

Анонсированный пакетный менеджер основан на наработках проекта Nix и кроме стандартных функций управления пакетами поддерживает такие возможности, как выполнение транзакционных обновлений, возможность отката обновлений, работа без получения привилегий суперпользователя, поддержка привязанных к отдельным пользователям профилей, возможность одновременной установки нескольких версий одной программы и средства уборки мусора (выявление и удаление неиспользуемых версий пакетов).

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

Между пакетами Guix возможно определение зависимостей, при этом для поиска наличия уже установленных зависимостей используется сканирование хэшей-идентификаторов (в примере выше "r8vvq9k...") в директории установленных пакетов. Поддерживается как загрузка готовых бинарных пакетов из репозитория, так и сборка из исходных текстов со всеми зависимостями. При сборке пакета автоматически загружаются и собираются все связанные с ним зависимости.

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

Из

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Проект GNU начал развитие нового пакетного менеджера Guix», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.