RPM 6.0: Новий формат пакетів та вдосконалення безпеки
RPM 6.0: Новий формат пакетів та вдосконалення безпеки
Компанія Red Hat опублікувала бета-випуск пакетного менеджера RPM 6.0, який буде використовуватися в осінньому випуску дистрибутива Fedora Linux 43. Цей проект широко застосовується в таких дистрибутивах, як RHEL, Fedora, SUSE, openSUSE, ALT Linux, Rosa Linux, OpenMandriva, Mageia, PCLinuxOS і Tizen. Код RPM поширюється під ліцензіями GPLv2 і LGPLv2.
Версія 5 пропущена для уникнення пересічень з проектом RPM5, який не пов’язаний з RPM від Red Hat і розвивався незалежними розробниками.
Ключові зміни в RPM 6.0
Нова версія пакетного менеджера RPM приносить значні покращення в галузі безпеки та функціональності:
- Підтримка нового формату пакетів RPM 6, що дозволяє створювати пакети розміром понад 4 ГБ. У форматі RPM 6 використовуються 64-розрядні поля з розмірами, модернізовані структури, пов’язані з криптографією, та додані MIME-відомості про файли.
- Припинена підтримка формату RPM 3. Підтримка формату RPM 4, що використовує cpio, буде збережена в повному обсязі — дистрибутиви на свій розсуд зможуть залишитися на форматі RPM 4.
- За замовчуванням увімкнені перевірки автентичності пакетів з використанням цифрового підпису.
- В утиліту rpmbuild додана підтримка автоматичного формування локальних підписів під час збирання, а в утиліту rpm додана опція “–nosignature” для примусового встановлення пакета без перевірки підпису.
Покращення безпеки в новому пакетному менеджері
Розробники приділили особливу увагу безпеці в новій версії:
- Надана можливість використання замість GnuPG інструментарію Sequoia-sq, написаного на Rust.
- Реалізована можливість використання кількох підписів OpenPGP для кожного пакета.
- Припинена підтримка хешів MD5, SHA1 і DSA.
- Розширені можливості утиліти rpmkeys для роботи з ключами, наприклад, для оновлення OpenPGP-ключів можна використовувати команду “rpmkeys –import”.
- Задіяні тільки повні ідентифікатори та хеш-відбитки (fingerprint) ключів OpenPGP.
- Додана можливість оновлення вже імпортованих ключів.
Технічні вдосконалення для розробників
RPM 6.0 також приніс значні зміни для розробників:
- У розробці дозволено використання мови C++ (C++20), а не тільки мови С.
- В обгортках для мови Python реалізована підтримка ізоляції стану Python-модулів для їх запуску в кількох субінтерпретаторах.
Нова версія пакетного менеджера RPM є важливим кроком уперед для екосистеми Linux, особливо в галузі безпеки та підтримки великих пакетів. Впровадження цих змін допоможе розробникам створювати більш захищені та гнучкі рішення для пакування програмного забезпечення.
Більше інформації можна знайти на офіційному сайті RPM та у повідомленні про випуск.