Fedora 41 plănuiește să treacă la managerul de pachete DNF5

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

Folosirea C++ în loc de Python ne-a permis să scăpăm de un număr mare de dependențe, să reducem dimensiunea setului de instrumente și să îmbunătățim productivitatea. Performanțe mai mari sunt obținute nu numai prin utilizarea compilației în codul mașinii, ci și prin implementarea îmbunătățită a tabelului de tranzacții, optimizarea încărcării din depozite și restructurarea bazei de date (bazele de date cu starea sistemului și istoricul operațiunilor sunt separate). Setul de instrumente DNF5 este decuplat de PackageKit în favoarea unui nou proces de fundal numit DNF Daemon, care înlocuiește funcționalitatea PackageKit și oferă o interfață pentru gestionarea pachetelor și actualizărilor în medii grafice.

Reelaborarea a făcut posibilă și implementarea unor îmbunătățiri care îmbunătățesc utilizarea managerului de pachete. De exemplu, noul DNF oferă o indicație mai vizuală a progresului operațiunilor; a adăugat suport pentru utilizarea pachetelor RPM locale pentru tranzacții; a adăugat capacitatea de a afișa în rapoarte despre tranzacțiile finalizate informații produse de scripturi încorporate în pachete; A fost propus un sistem mai avansat de completare a intrărilor pentru bash.

Sursa: opennet.ru

Adauga un comentariu