Возрождение системы управления пакетами GNU Stow
6 декабря 2011 года
Спустя девять лет с момента прошлого выпуска анонсирован релиз системы управления пакетами GNU Stow 2.1.0. Код Stow написан на языке Perl и распространяется в рамках лицензии GPLv2. Ключевым отличием новой версии является полное обновление кодовой базы и реализация более жестких механизмов для предотвращения конфликтов.
В Stow используется простой и не похожий на обычные пакетные менеджеры подход к размещению пакетов: все связанные с программой компоненты устанавливаются штатными средствами в отдельной поддиректории в каталоге /usr/local/stow (например, /usr/local/stow/emacs). Задача Stow при этом сводится к расстановке символических ссылок в иерархии системных каталогов /usr/local и выполнению контроля за их целостностью. При удалении пакета производится удаление всех связанных символических ссылок. Внутри директории /usr/local/stow файлы установленных программ всегда остаются неизменными, Stow оперирует только символическими ссылками.
Ключевыми недостатком Stow, который мешал использованию Stow в современных дистрибутивах, является отсутствие каких-либо средств для контроля зависимостей и оценки конфликтов между пакетами. В версии Stow 2.1.0 этот недостаток частично преодолён за счёт добавления улучшенных средств для разрешения конфликтов. В новой версии выполнение операций откладывается до завершения оценки всех потенциальных конфликтов. Вначале производится анализ установочных образов и создание плана действий, которые необходимо выполнить для установки. Если в процессе анализа выявлены конфликты с уже установленными программами, то процесс инсталляции блокируется до устранения проблем (ранее анализ конфликтов производился по мере установки и если конфликт обнаруживался, то пользователь сталкивался с частично установленным пакетом). Разделение фаз анализа и установки также позволило минимизировать время модификации системных каталогов во время обновления пакета (меняются только изменившиеся символические ссылки, без их пересоздания).
Другим интересным новшеством стало добавление механизма для управления программами и файлами конфигурации (~/.bashrc, ~/.zshrc и т.п.) в домашней директории пользователя. Для обеспечения данной возможности создан специальный плагин для утилиты mr, предназначенной для осуществления операций с набором репозиториев (subversion, git, mercurial, bzr и т.п.).
Из других
Источники
править- Главная ссылка к новости (http://lists.gnu.org/archive/h...)
- Управление программными пакетами при помощи Stow
- Официальная документация Stow
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.