Fedora 39 er indstillet til at flytte til DNF5, fri for Python-komponenter

Ben Cotton, Fedora Program Manager hos Red Hat, annoncerede sin hensigt om at migrere Fedora Linux til DNF5-pakkeadministratoren som standard. Fedora Linux 39 planlægger at erstatte dnf-, libdnf- og dnf-cutomatic-pakkerne med DNF5-værktøjssættet og det nye libdnf5-bibliotek. Forslaget er endnu ikke blevet gennemgået af FESCo (Fedora Engineering Steering Committee), som er ansvarlig for den tekniske del af udviklingen af ​​Fedora-distributionen.

På et tidspunkt erstattede DNF Yum, som udelukkende var skrevet i Python. I DNF blev præstationskrævende lavniveau-funktioner omskrevet og flyttet til separate C-biblioteker hawkey, librepo, libsolv og libcomps, men rammen og komponenterne på højt niveau forblev i Python. DNF5-projektet har til formål at forene de eksisterende biblioteker på lavt niveau, omskrive de resterende Python-pakkehåndteringskomponenter i C++ og flytte den grundlæggende funktionalitet til et separat libdnf5-bibliotek med oprettelsen af ​​en binding omkring dette bibliotek for at bevare Python API.

Brug af C++ i stedet for Python vil slippe af med en masse afhængigheder, reducere størrelsen af ​​værktøjssættet og forbedre ydeevnen. Højere ydeevne opnås ikke kun ved brug af kompilering til maskinkode, men også på grund af forbedret implementering af transaktionstabellen, optimering af indlæsning fra repositories og omstrukturering af databasen (databaser med systemtilstand og operationshistorik er adskilt). DNF5-værktøjssættet er blevet afkoblet fra PackageKit, med en ny baggrundsproces, DNF Daemon, der erstatter PackageKit-funktionalitet og giver en grænseflade til håndtering af pakker og opdateringer i grafiske miljøer.

Omarbejdet vil også gøre det muligt at implementere nogle forbedringer, der øger brugervenligheden af ​​pakkehåndteringen. For eksempel implementerer det nye DNF en mere visuel indikation af driftens fremskridt; tilføjet support til brug af lokale RPM-pakker til transaktioner; tilføjet muligheden for at vise i rapporterne om gennemførte transaktioner oplysninger udstedt af scripts indbygget i pakker (scriptlets); foreslået et mere avanceret indtastningssystem til bash.

Kilde: opennet.ru

Tilføj en kommentar