Менеджер пакетов RPM 6.0 выпущен с новым форматом пакетов

Менеджер пакетов RPM 6.0 выпущен с новым форматом пакетов


Менеджер пакетов RPM 6.0 дебютирует с новым форматом пакета v6, современной криптографией, OpenPGP v6 и прекращает поддержку устаревших установок v3.

RPM, одна из старейших и наиболее широко используемых систем управления пакетами в Linux, основа таких дистрибутивов, как RHEL, Fedora, openSUSE и других, объявила о выпуске RPM 6.0, что знаменует собой первый значительный скачок в нумерации версий со времени серии 4.x.

Самой примечательной особенностью является недавно добавленный формат пакета RPM v6, который переносит все ограничения по размеру на 64-бита, исключает устаревшие криптографические алгоритмы, такие как MD5 и SHA-1, и добавляет SHA-512 и SHA3-256 для полезных данных.

Заголовки пакетов также получают дайджесты SHA3-256, в то время как информация о MIME для каждого файла теперь непосредственно встроена в метаданные. Совместимость обширна: пакеты версии 6 могут быть запрошены с помощью RPM 4.6 и новее, распакованы с помощью 4.12 и проверены или установлены с помощью 4.14 и более новых версий.

Безопасность также была усилена повсеместно. RPM теперь по умолчанию проверяет подписи, поддерживает OpenPGP v6 и даже постквантовые криптографические (PQC) ключи, а также позволяет использовать несколько подписей для одного пакета.

Инструменты, такие как rpmkeys и rpmsign, были расширены для работы с этими изменениями, включая управление ключами на основе отпечатков, автоматическую подпись через макросы и возможность добавления или замены подписей без нарушения существующих.

С точки зрения упаковки, rpmbuild может создавать как пакеты v4, так и v6, причем v6 используется по умолчанию. Добавлена новая утилита rpm-setup-autosign, упрощающая настройку авто-подписания. Также были решены несколько давних проблем в скриптах сборки, обработке зависимостей и макросов.

Документация также была значительно переработана. Руководства (man pages) были переписаны в едином стиле, добавлены новые страницы для компонентов, которые ранее не имели документации, а на версии сайта с документацией теперь размещены справочники, API-документы и обновленные примеры.

Под капотом RPM теперь собирается с компилятором C++20, перемещая большую часть внутренних компонентов на современные структуры данных, при этом продолжая предоставлять привязки для Python (которые теперь требуют Python 3.10 или новее). Проект также делает упор на воспроизводимость с чистыми, проверяемыми архивами релизов.

Наконец, хотя RPM 6.0 по умолчанию использует новый формат, он полностью поддерживает пакеты v4, обеспечивая совместимость с существующей экосистемой. Удаление поддержки установки пакетов v3 закрывает дверь для старых пакетов, хотя их все еще можно просматривать или распаковывать с помощью таких инструментов, как rpm2cpio.

Для получения дополнительной информации см. примечания к выпуску.

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *