В Fedora 41 беше одобрен преходът към пакетния мениджър DNF5

Комитет FESCo (Fedora Engineering Steering Committee), отговорящ за техническата част на разработката на дистрибуцията Fedora Linux, одобри използването по подразбиране на пакетния мениджър DNF5 в есенната версия на Fedora 41. Пакетите dnf, libdnf и dnf-cutomatic ще бъдат заменени във Fedora 41 с инструментите DNF5 и новата библиотека libdnf5, а символичната връзка /usr/bin/dnf ще започне да сочи към изпълнимия файл dnf5.

Въпреки че пълният паритет в функционалността със стария инструмент все още не е постигнат, разработчиците смятат, че дистрибуцията е готова за миграция, а недостигащите функции могат да бъдат реализирани по-късно. Например, за момента не е налична функционалността, свързана с управлението на историята на транзакциите, подлежащ на командата „dnf history“. Също така работата по интегрирането на поддръжката на фоновия процес dnf5daemon в мениджъра на приложения GNOME Software все още не е завършена. Допълнително тестване изисква механизма за обновяване на цялата система до следващото издание (командата system-upgrade).

В своето време DNF дойде в дистрибуцията на мястото на пакетния мениджър Yum, който беше написан изцяло на езика Python. В DNF изискващите производителността нискоуровневни функции бяха пренаписани и изнесени в отделни C-библиотеки hawkey, librepo, libsolv и libcomps, но каркасът и високоуровневите компоненти останаха на езика Python. Проектът DNF5 има за цел унификацията на съществуващите нискоуровневи библиотеки, пренаписване на компонентите за управление на пакетите, останали на Python, на C++, и изнасяне на основната функционалност в отделна библиотека libdnf5 с изграждане около тази библиотека на обвивка за запазване на Python API.

Използването на езика C++ вместо Python позволи да се елиминира голям брой зависимости, да се намали размерът на инструментариума и да се подобри производителността. По-високата производителност се постига не само чрез компилация в машинен код, но и с благодарение на подобрената реализация на таблицата за транзакции, оптимизацията на зареждането от репозитории и преструктурирането на БД (разделени са базите с текущото състояние на системата и историята на операциите). Инструментариумът DNF5 е освободен от обвързаността с PackageKit, като вместо него се използва нов фонов процес DNF Daemon, който заменя функционалността на PackageKit и предоставя интерфейс за управление на пакети и актуализации в графични среди.

Преобработката също предостави възможност за реализиране на някои подобрения, повишаващи удобството при работа с пакетния мениджър. Например, новият DNF реализира по-ясна индикация за напредъка на операциите; добавена е поддръжка за използване на локални RPM пакети за транзакции; добавена е възможност за показване в отчетите за изпълнените транзакции на информация, предоставяна от вградените в пакетите скриптове (scriplets); предложена е по-напреднала система за автоматично допълване на входа за bash.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster