In Fedora 41 wurde der Übergang zum Paketmanager DNF5 genehmigt.

Das FESCo-Komitee (Fedora Engineering Steering Committee), das für den technischen Teil der Entwicklung der Fedora Linux-Distribution verantwortlich ist, hat die standardmäßige Verwendung des Paketmanagers DNF5 in der Herbstversion von Fedora 41 genehmigt. Die Pakete dnf, libdnf und dnf-cutomatic werden in Fedora 41 durch das DNF5-Toolset und die neue Bibliothek libdnf5 ersetzt, und der symbolische Link /usr/bin/dnf wird auf die ausführbare Datei dnf5 verweisen.

Obwohl die vollständige Parität in der Funktionalität mit dem alten Toolset noch nicht erreicht ist, sind die Entwickler der Meinung, dass die Distribution für die Migration bereit ist und fehlende Funktionen später implementiert werden können. Beispielsweise ist die Funktion, die mit der Verwaltung der Transaktionshistorie verbunden ist, die der Befehl „dnf history“ nutzt, derzeit nicht verfügbar. Die Integration der Unterstützung für den Hintergrundprozess dnf5daemon in den GNOME Software-Anwendungsmanager ist ebenfalls noch nicht abgeschlossen. Der Mechanismus zum Aktualisieren des gesamten Systems auf die nächste Version (Befehl system-upgrade) erfordert zusätzliche Tests.

Einst kam DNF anstelle des Paketmanagers Yum, der vollständig in Python geschrieben war, in die Distribution. In DNF wurden die leistungsintensiven Low-Level-Funktionen umgeschrieben und in separate C-Bibliotheken wie hawkey, librepo, libsolv und libcomps ausgelagert, während das Gerüst und die High-Level-Komponenten in Python blieben. Das DNF5-Projekt zielt darauf ab, die vorhandenen Low-Level-Bibliotheken zu vereinheitlichen, die in Python verbliebenen Paketverwaltungs-Komponenten in C++ neu zu schreiben und die grundlegende Funktionalität in eine separate Bibliothek libdnf5 auszulagern, um rund um diese Bibliothek ein Bindeglied zur Erhaltung der Python-API zu schaffen.

Die Verwendung der Programmiersprache C++ anstelle von Python ermöglichte es, eine große Anzahl von Abhängigkeiten zu beseitigen, die Größe des Werkzeugs zu reduzieren und die Leistung zu steigern. Die höhere Leistung wird nicht nur durch die Kompilierung in Maschinencode erreicht, sondern auch durch eine verbesserte Implementierung der Transaktionstabelle, die Optimierung des Ladens aus Repositories und die Restrukturierung der Datenbank (Systemzustands- und Operationsverlauf-Datenbanken wurden getrennt). Das DNF5-Werkzeug ist von der Abhängigkeit zu PackageKit befreit, stattdessen wird ein neuer Hintergrundprozess DNF Daemon verwendet, der die Funktionalität von PackageKit ersetzt und eine Schnittstelle für die Verwaltung von Paketen und Updates in grafischen Umgebungen bereitstellt.

Die Überarbeitung ermöglichte auch die Umsetzung einiger Verbesserungen, die den Umgang mit dem Paketmanager erleichtern. So bietet der neue DNF eine anschaulichere Fortschrittsanzeige für die Durchführung von Operationen; die Unterstützung der Verwendung lokaler RPM-Pakete für Transaktionen wurde hinzugefügt; die Möglichkeit, in Berichten über durchgeführte Transaktionen Informationen, die von in die Pakete eingebetteten Skripten (scriplets) ausgegeben werden, anzuzeigen, wurde eingeführt; ein fortschrittlicheres System zur automatischen Vervollständigung bei der Eingabe für bash wurde vorgeschlagen.

Quelle: opennet.ru

60GB SSD 8Gb DDR4