Die Entwickler von Fedora Linux beabsichtigen, die Distribution auf den neuen Paketmanager Microdnf umzusteigen, anstelle des derzeit verwendeten DNF. Der erste Schritt zur Migration wird ein bedeutendes Update von Microdnf sein, das in der bevorstehenden Veröffentlichung von Fedora Linux 38 geplant ist. Microdnf wird in seiner FunktionalitĂ€t DNF Ă€hneln und in einigen Bereichen sogar ĂŒbertreffen. Es wird darauf hingewiesen, dass die neue Version von Microdnf alle wesentlichen Funktionen von DNF unterstĂŒtzen wird, dabei jedoch hohe Leistung und Kompaktheit beibehalten kann.
Ein entscheidender Unterschied zwischen Microdnf und DNF ist die Verwendung der Programmiersprache C fĂŒr die Entwicklung anstelle von Python, was eine Vielzahl von AbhĂ€ngigkeiten eliminiert. UrsprĂŒnglich wurde Microdnf als abgespeckte Version von DNF fĂŒr die Verwendung in Docker-Containern entwickelt, die keine Python-Installation erfordert. Jetzt planen die Entwickler von Fedora, Microdnf auf das Niveau von DNF zu bringen und DNF schrittweise vollstĂ€ndig durch Microdnf zu ersetzen.
Die Grundlage von Microdnf bildet die Bibliothek libdnf5, die im Rahmen des DNF 5-Projekts entwickelt wird. Die Hauptidee von DNF 5 besteht darin, die grundlegenden Paketverwaltungsoperationen in C++ neu zu schreiben und sie in eine separate Bibliothek auszulagern, um rund um diese Bibliothek eine Schnittstelle fĂŒr die Beibehaltung der Python-API zu schaffen.
Die neue Version von Microdnf wird auĂerdem den Hintergrundprozess DNF Daemon verwenden, der die FunktionalitĂ€t von PackageKit ersetzt und eine Schnittstelle zur Verwaltung von Paketen und Updates in grafischen Umgebungen bietet. Im Gegensatz zu PackageKit wird DNF Daemon nur das RPM-Format unterstĂŒtzen.
Microdnf, libdnf5 und DNF Daemon sollen in der ersten Implementierungsphase parallel mit den traditionellen DNF-Tools bereitgestellt werden. Nach der Fertigstellung des Projekts wird das neue Paket bestehende Pakete wie dnf, python3-dnf, python3-hawkey, libdnf, dnfdragora und python3-dnfdaemon ersetzen.
Zu den Bereichen, in denen Microdnf DNF ĂŒbertrifft, gehören: eine anschaulichere Anzeige des Fortschritts bei den BetriebsvorgĂ€ngen; eine verbesserte Implementierung der Transaktionstabelle; die Möglichkeit, Informationen aus Scripten in den Berichten ĂŒber durchgefĂŒhrte Transaktionen auszugeben; die UnterstĂŒtzung der Verwendung lokaler RPM-Pakete fĂŒr Transaktionen; ein fortschrittlicheres AutovervollstĂ€ndigungssystem fĂŒr Bash; die UnterstĂŒtzung der AusfĂŒhrung des Befehls builddep ohne Installation von Python im System.
Unter den Nachteilen des Wechsels des Distributionspakets zu Microdnf wird die Ănderung der Struktur der internen Datenbanken und die separate Verarbeitung der Datenbanken von DNF erwĂ€hnt, was es ermöglicht, Transaktionen mit Paketen, die in DNF durchgefĂŒhrt wurden, nicht in Microdnf zu sehen und umgekehrt. DarĂŒber hinaus wird in Microdnf nicht geplant, eine 100%ige KompatibilitĂ€t zu DNF auf der Ebene der Befehle und Befehlszeilenoptionen zu gewĂ€hrleisten. Auch wird es einige Unterschiede im Verhalten geben. Zum Beispiel wird das Entfernen eines Pakets nicht dazu fĂŒhren, dass die damit verbundenen AbhĂ€ngigkeiten, die in anderen Paketen nicht verwendet werden, entfernt werden.
Quelle: opennet.ru
