在 Fedora 39 中,他們計劃遷移到 DNF5,將 Python 組件放在一邊

帶有新的 DNF39 打包工具的 Fedora 5

DNF5 應該改善用戶體驗並提供更好的性能

Ben Cotton,Fedora 項目經理 在紅帽, 宣布 最近在郵件列表中, 你打算遷移 Fedora 給包裝經理 地下城5 默認情況下。

提到計劃中的變化 將從 Fedora 39 發布開始生效, 更改計劃用 DNF5 工具包和新的 libdnf5 庫替換 dnf、libdnf 和 dnf-cutomatic 包。

關於變化,值得一提的是 當時 DNF 取代了 Yum,它完全用 Python 編寫。

對於那些不了解 DNF 的人, 他們應該知道這 是一個軟件包管理器 它在 Fedora 中安裝、更新和刪除軟件包,是 YUM(Yellow-Dog Updater Modified)的繼承者。 DNF 便於包裝維護 通過自動檢查依賴關係並確定安裝軟件包所需的操作。 此方法無需使用 rpm 命令手動安裝或更新包及其依賴項。 DNF 現在是 Fedora 中默認的軟件包管理工具。

在 DNF 中,重寫了對性能要求高的低級函數 並轉移到單獨的 C 庫 hawkey、librepo、libsolv 和 libcomps,但框架和高級組件仍保留在 Python 中。

DNF5 將顯著改善用戶體驗和性能。 替換是更新 Fedora 軟件管理堆棧的第二步。 如果不進行更改,將有多個基於不同庫(libdnf、libdnf5)的軟件管理工具(DNF5、舊 Microdnf、PackageKit 和 DNF),提供不同的行為並且不共享歷史記錄。 我們也可以預期 DNF 只能獲得有限的上游支持。

該項目 DNF5 旨在統一現有的低級庫,用 C++ 重寫 包管理組件保留在 Python 中,並將核心功能移動到單獨的 libdnf5 庫,方法是圍繞該庫創建一個鏈接以保留 Python API。

DNF5 仍在開發中,某些功能或選項尚不可用。 我們仍然需要完成模塊化的實現,與系統歷史和狀態相關的內部數據的存儲,以及文檔和手冊頁。 DNF5 可以通過每晚上游構建的存儲庫進行測試:d` 不應該是用戶可寫的,並且它的格式不充分(缺少有關已安裝包和已安裝配置文件的信息)

使用 C++ 代替 Python 將刪除許多依賴項,減少大小 工具集並提高性能。 更高的性能不僅通過使用編譯到機器代碼來實現,而且還歸功於改進的事務表實現、從存儲庫加載的優化以及數據庫重組(將數據庫與系統狀態和操作歷史分開)。

地下城5 已從 PackageKit 中解耦,支持 一個新的後台進程 DNF 守護進程 它取代了 PackageKit 的功能,並提供了一個用於在圖形環境中管理包和更新的界面。

返工也 它將允許對包管理器的可用性進行一些改進。 例如,新的 DNF 對操作進度有更直觀的指示; 添加了對使用本地 RPM 包進行事務的支持; 添加了在報告中顯示打包的小腳本(scriptlet)發布的已完成交易信息的能力; 為 bash 提出了一個更高級的輸入完成系統。

值得一提的是 該提案尚未經過 FESCo 審核 (Fedora 工程指導委員會),它負責開發 Fedora 發行版的技術部分。

終於 如果您有興趣了解更多信息, 您可以在中查看詳細信息 以下鏈接。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責資料:AB Internet Networks 2008 SL
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。