FESCo-kommittén (Fedora Engineering Steering Committee), som ansvarar för den tekniska delen av utvecklingen av Fedora Linux-distributionen, har godkÀnt anvÀndningen av paketförvaltaren DNF5 som standard i höstutgÄvan av Fedora 41. Paketen dnf, libdnf och dnf-cutomatic kommer att ersÀttas i Fedora 41 av DNF5-verktyg och det nya biblioteket libdnf5, och den symboliska lÀnken /usr/bin/dnf kommer att börja peka pÄ körfilen dnf5.
Trots att fullstÀndig paritet med det gamla verktyget fortfarande inte har uppnÄtts, anser utvecklarna att distributionen Àr redo för migrering, och de saknade funktionerna kan implementeras senare. Till exempel Àr funktionaliteten relaterad till hantering av transaktionshistorik, som ligger till grund för kommandot "dnf history", fortfarande inte tillgÀnglig. Arbetet med att integrera stöd för bakgrundsprocessen dnf5daemon i GNOME Software har ocksÄ inte slutförts. Systemuppgraderingskommandot (system-upgrade) krÀver ytterligare testning.
Vid en tidpunkt kom DNF in i distributionen som en ersÀttning för paketförvaltaren Yum, som var helt skriven i Python. I DNF har de prestandakrÀvande lÄgnivÄfunktionerna skrivits om och flyttats till separata C-bibliotek: hawkey, librepo, libsolv och libcomps, men ramverket och de högre komponenterna har kvarblivit i Python. DNF5-projektet syftar till att enhetliggöra de befintliga lÄgnivÄbiblioteken, skriva om de kvarvarande Python-komponenterna för paketförvaltning till C++ och extrahera den grundlÀggande funktionaliteten till ett separat bibliotek libdnf5 med skapandet av ett grÀnssnitt runt detta bibliotek för att bevara Python API.
AnvÀndningen av C++ istÀllet för Python har möjliggjort att man blir av med ett stort antal beroenden, minska storleken pÄ verktygen och öka prestandan. Högre prestanda uppnÄs inte bara genom kompilering till maskinkod, utan ocksÄ genom en förbÀttrad implementering av transaktionstabellen, optimering av nedladdning frÄn repository och omstrukturering av databasen (systemstatus och operationens historia separeras). DNF5-verktygen Àr inte lÀngre knutna till PackageKit, utan anvÀnder istÀllet en ny bakgrundsprocess DNF Daemon, som ersÀtter PackageKits funktionalitet och tillhandahÄller ett grÀnssnitt för paket- och uppdateringshantering i grafiska miljöer.
Omstruktureringen har ocksÄ gett möjlighet att genomföra vissa förbÀttringar som höjer anvÀndarvÀnligheten med pakethanteraren. Till exempel implementeras i den nya DNF en mer tydlig indikator för progress i genomförandet av operationer; stöd för anvÀndning av lokala RPM-paket vid transaktioner har lagts till; möjligheten att visa information som ges av script inbyggda i paketen (scriplets) i rapporterna över genomförda transaktioner har lagts till; och ett mer avancerat system för autocompletion av inmatning för bash har föreslagits.
KĂ€lla: opennet.ru
