Fedora Linux-udviklerne har til hensigt at overføre distributionen til den nye Microdnf-pakkehåndtering i stedet for den aktuelt brugte DNF. Det første skridt mod migrering vil være en større opdatering til Microdnf, der er planlagt til udgivelsen af Fedora Linux 38, som vil være tæt på DNF i funktionalitet og i nogle områder endda overgå den. Det bemærkes, at den nye version af Microdnf vil understøtte alle de grundlæggende funktioner i DNF, men samtidig bevare høj ydeevne og kompakthed.
Den vigtigste forskel mellem Microdnf og DNF er brugen af C-sprog til udvikling i stedet for Python, som giver dig mulighed for at slippe af med et stort antal afhængigheder. Microdnf blev oprindeligt udviklet som en strippet version af DNF til brug i Docker-containere, som ikke kræver Python-installation. Nu planlægger Fedora-udviklerne at bringe Microdnf til DNF-niveau og til sidst fuldstændigt erstatte DNF med Microdnf.
Grundlaget for Microdnf er libdnf5-biblioteket, udviklet som en del af DNF 5-projektet. Hovedideen med DNF 5 er at omskrive grundlæggende pakkehåndteringsoperationer i C++ og flytte dem ind i et separat bibliotek med oprettelse af en wrapper omkring dette bibliotek for at gemme Python API.
Den nye version af Microdnf vil også bruge en baggrunds-DNF Daemon-proces, der erstatter PackageKit-funktionalitet og giver en grænseflade til håndtering af pakker og opdateringer i grafiske miljøer. I modsætning til PackageKit vil DNF Daemon kun yde support til RPM-formatet.
Microdnf, libdnf5 og DNF Daemon i første fase af implementering er planlagt til at blive leveret parallelt med det traditionelle DNF-værktøjssæt. Når projektet er færdigt, vil den nye bundle erstatte pakker som dnf, python3-dnf, python3-hawkey, libdnf, dnfdragora og python3-dnfdaemon.
Blandt de områder, hvor Microdnf er DNF overlegen, er: mere visuel indikation af operationernes fremskridt; forbedret implementering af transaktionstabel; evnen til at vise i rapporter om gennemførte transaktioner information produceret af scripts indbygget i pakker; understøttelse af brug af lokale RPM-pakker til transaktioner; mere avanceret input-afslutningssystem til bash; understøttelse af at køre builddep-kommandoen uden at installere Python på systemet.
Blandt ulemperne ved at skifte distributionen til Microdnf er der en ændring i strukturen af interne databaser og separat databasebehandling fra DNF, som ikke vil tillade Microdnf at se transaktioner med pakker udført i DNF og omvendt. Derudover planlægger Microdnf ikke at opretholde 100 % kompatibilitet i DNF på niveauet for kommandoer og kommandolinjeindstillinger. Der vil også være nogle uoverensstemmelser i adfærd. For eksempel vil sletning af en pakke ikke fjerne dens tilknyttede afhængigheder, som ikke bruges af andre pakker.
Kilde: opennet.ru