Fedora 41 kavatseb kolida DNF5 paketihaldurile

В выпуске 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.

C++ kasutamine Pythoni asemel võimaldas meil vabaneda suurest hulgast sõltuvustest, vähendada tööriistakomplekti suurust ja parandada tootlikkust. Suurem jõudlus saavutatakse mitte ainult masinkoodiks kompileerimise kasutamisega, vaid ka tehingutabeli täiustatud juurutamise, hoidlatest laadimise optimeerimise ja andmebaaside ümberstruktureerimisega (süsteemi oleku ja tööajalooga andmebaasid on eraldatud). DNF5 tööriistakomplekt on PackageKitist lahti ühendatud uue taustprotsessi nimega DNF Daemon kasuks, mis asendab PackageKiti funktsionaalsust ja pakub liidest pakettide ja värskenduste haldamiseks graafilistes keskkondades.

Samuti võimaldas ümbertöötamine rakendada mõningaid parandusi, mis parandavad paketihalduri kasutatavust. Näiteks annab uus DNF visuaalsema ülevaate operatsioonide edenemisest; lisatud tugi kohalike RPM-pakettide kasutamiseks tehingute jaoks; lisatud võimalus kuvada aruannetes lõpetatud tehingute kohta teavet, mis on toodetud pakettidesse ehitatud skriptide abil; Bashi jaoks on välja pakutud täiustatud sisendi lõpetamise süsteem.

Allikas: opennet.ru

Lisa kommentaar