Релиз Aura 4.0.0, пакетного менеджера для Arch Linux

Представлен выпуск проекта Aura 4.0.0, развивающего пакетный менеджер для дистрибутива Arch Linux, расширяющий возможности штатного пакетного менеджера Pacman. Проект создан в 2012 году и изначально был нацелен на предоставление средств для сборки пакетов для репозитория AUR (Arch User Repository), применяемого для распространения сторонними разработчиками своих пакетов, не входящих в основные репозитории дистрибутива Arch Linux. Код проекта распространяется под лицензией GPLv3.

Кроме специфичных для AUR функций в Aura также предоставляются и другие возможности, расширяющие функциональность Pacman (в настоящее время только 1/3 расширенных возможностей Aura связаны с AUR). Например, доступны средства для наглядного анализа зависимостей, работы со снапшотами наборов пакетов (для сохранения и восстановления состояния), управления остаточными зависимостями и отката отдельных пакетов или всей системы на прошлые версии.

Пакетный менеджер Aura полностью обратно совместим с Pacman и поддерживает все его команды и опции (Aura можно использовать как замену Pacman с расширенными функциями). Связанные с AUR дополнительные возможности вызываются через указание опции командной строки «-A», а средства работы со снапшотами и версиями через опции «-B» и «-С», не пересекающиеся с опциями Pacman. Также предлагаются такие дополнительные команды, как «check», «conf», «free», «stats» и «deps» для проверки целостности системы, работы с конфигурацией, анализа лицензий, просмотра статистики и разбора зависимостей.

Функциональность Pacman воссоздаётся благодаря использованию библиотеки libalpm, предлагающей базовые возможности управления пакетами, применяемые в пакетном менеджере Pacman. Проектом также поддерживается собственный сервер с метаданными пакетов, позволяющий существенно ускорить поиск пакетов и разрешение зависимостей.

Новая версия примечательна полным переписыванием кодовой базы, которая переведена с использования языка Haskell на язык Rust. Смена языка позволила значительно повысить производительность, упростить установку, задействовать готовые Rust-биндинги к libalpm, сделать проект более привлекательным для новых разработчиков, улучшить интерфейс командной строки и в 4 раза сократить размер исполняемого файла.

Добавлена команда «aura deps», позволяющая генерировать изображения с наглядным представлением зависимостей. Например, для просмотра пакетов, зависящих от gcc, можно выполнить «aura deps gcc —reverse —optional —open», а для просмотра пакетов, от которых зависит gcc — «aura deps gcc —limit=3 —open»:

Источник: http://www.opennet.ru/opennews/art.shtml?num=61664