„Fedora 41“ planuoja pereiti prie DNF5 paketų tvarkyklės

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

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

Naudodami C++ vietoj Python leidome atsikratyti daugybės priklausomybių, sumažinti įrankių rinkinio dydį ir pagerinti našumą. Didesnis našumas pasiekiamas ne tik naudojant kompiliavimą į mašininį kodą, bet ir patobulinus transakcijų lentelės įgyvendinimą, optimizuojant įkėlimą iš saugyklų ir pertvarkant duomenų bazes (atskiriamos duomenų bazės su sistemos būsena ir veikimo istorija). DNF5 įrankių rinkinys atsietas nuo „PackageKit“ ir sukuriamas naujas foninis procesas, vadinamas „DNF Daemon“, kuris pakeičia „PackageKit“ funkcijas ir suteikia sąsają paketams ir naujinimams grafinėje aplinkoje valdyti.

Pertvarkymas taip pat leido įgyvendinti kai kuriuos patobulinimus, kurie pagerina paketų tvarkyklės naudojimą. Pavyzdžiui, naujasis DNF suteikia daugiau vaizdų apie operacijų eigą; papildomas vietinių RPM paketų naudojimo operacijoms palaikymas; pridėta galimybė ataskaitose apie užbaigtas operacijas rodyti informaciją, sukurtą naudojant į paketus įmontuotus scenarijus; Buvo pasiūlyta pažangesnė bash įvesties užbaigimo sistema.

Šaltinis: opennet.ru

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