Fedora 39 este setat să treacă la DNF5, fără componente Python

Ben Cotton, care deține funcția de manager de program Fedora la Red Hat, și-a anunțat intenția de a trece implicit Fedora Linux la managerul de pachete DNF5. Fedora Linux 39 plănuiește să înlocuiască pachetele dnf, libdnf și dnf-cutomatic cu setul de instrumente DNF5 și noua bibliotecă libdnf5. Propunerea nu a fost încă luată în considerare de FESCo (Fedora Engineering Steering Committee), care este responsabil pentru partea tehnică a dezvoltării distribuției Fedora.

La un moment dat, DNF l-a înlocuit pe Yum, care a fost scris în întregime în Python. În DNF, funcțiile de nivel scăzut cu performanță intensivă au fost rescrise și mutate în biblioteci C separate hawkey, librepo, libsolv și libcomps, dar cadrul și componentele de nivel înalt au rămas în Python. Proiectul DNF5 are ca scop unificarea bibliotecilor de nivel scăzut existente, rescrierea componentelor rămase de gestionare a pachetelor în Python în C++ și mutarea funcționalității de bază într-o bibliotecă libdnf5 separată cu crearea unui wrapper în jurul acestei biblioteci pentru a salva API-ul Python.

Utilizarea C++ în loc de Python va elimina un număr mare de dependențe, va reduce dimensiunea setului de instrumente și va îmbunătăți performanța. 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 va oferi, de asemenea, oportunitatea de a implementa unele î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