Fedora 39 er satt til å flytte til DNF5, fri for Python-komponenter

Ben Cotton, som innehar stillingen som Fedora Program Manager hos Red Hat, kunngjorde sin intensjon om å bytte Fedora Linux til DNF5-pakkebehandleren som standard. Fedora Linux 39 planlegger å erstatte dnf-, libdnf- og dnf-cutomatic-pakkene med DNF5-verktøysettet og det nye libdnf5-biblioteket. Forslaget er ennå ikke behandlet av FESCo (Fedora Engineering Steering Committee), som er ansvarlig for den tekniske delen av utviklingen av Fedora-distribusjonen.

På en gang erstattet DNF Yum, som ble skrevet helt i Python. I DNF ble ytelsesintensive lavnivåfunksjoner skrevet om og flyttet til separate C-biblioteker hawkey, librepo, libsolv og libcomps, men rammeverket og høynivåkomponentene forble i Python. DNF5-prosjektet er rettet mot å forene eksisterende lavnivåbiblioteker, omskrive de gjenværende pakkehåndteringskomponentene i Python i C++ og flytte den grunnleggende funksjonaliteten inn i et eget libdnf5-bibliotek med opprettelsen av en wrapper rundt dette biblioteket for å lagre Python API.

Bruk av C++ i stedet for Python vil eliminere et stort antall avhengigheter, redusere størrelsen på verktøysettet og forbedre ytelsen. Høyere ytelse oppnås ikke bare gjennom bruk av kompilering til maskinkode, men også gjennom forbedret implementering av transaksjonstabellen, optimalisering av lasting fra repositories og databaserestrukturering (databaser med systemstatus og driftshistorikk er atskilt). DNF5-verktøysettet er koblet fra PackageKit til fordel for en ny bakgrunnsprosess kalt DNF Daemon, som erstatter PackageKit-funksjonalitet og gir et grensesnitt for å administrere pakker og oppdateringer i grafiske miljøer.

Omarbeidingen vil også gi mulighet til å implementere noen forbedringer som forbedrer brukervennligheten til pakkebehandleren. For eksempel gir den nye DNF en mer visuell indikasjon på fremdriften av operasjoner; lagt til støtte for bruk av lokale RPM-pakker for transaksjoner; lagt til muligheten til å vise i rapporter om fullførte transaksjoner informasjon produsert av skript innebygd i pakker; Et mer avansert system for fullføring av inndata for bash har blitt foreslått.

Kilde: opennet.ru

Legg til en kommentar