Linux中國

Yum 已死,DNF 代之

也許你會驚奇在新安裝的 Fedroa 22中沒有找到 yum 包,也不明白為何在調用 /usr/bin/yum 或使用各種 Yum 插件時會得到警告。嗯,你看到的沒錯,Yum 已經去了~。直白的說, DNF 現在是 Fedora 上默認是包管理器了。

DNF 由 Yum 中分支出來,採用了基於 SAT 的依賴解決演算法,目標是在 Fedora 22中取代 Yum。隨著 DNF 1.0 的發布,已經到了取而代之的時候了。Yum 無法適應倡導「默認即 Python 3」理念的 Fedora ,而 DNF 則可以同時支持 Python 2 和 Python 3。 DNF 按照相同的語義邏輯保留了命令行介面的一致。幸運的是,DNF 的 Python API 是完全不同於 Yum 的。這兩個項目之間的所有已知的不兼容都已經記錄在案了。在 Fedora Core 22 中只有 DNF,官方不會提供 Yum 了。當然,如果你願意,可以自己下載它。這個包仍然可以如同以往一樣調用, Python API 也沒變化,只是 yum 程序的名稱被改名為 yum-deprecated 了,而且從命令行調用 yum 會被重定向到 DNF。這樣,你就可以在系統上同時維持 Yum 和 DNF 了。

啟動 DNF 項目的原因是由於 Yum 的三大問題:API 缺乏文檔、有問題的依賴解決演算法,及無法重構內部函數。這裡提到的最後一個問題,其實和文檔的缺乏有關。Yum 插件使用的各種方法來源於 Yum 的代碼,一旦改變有可能造成 Yum 的突然崩潰!DNF 致力於解決這些 Yum 的問題,從一開始,所有對外的 API 的要做好完備的文檔。在絕大多數新提交中都包含了測試單元。不允許各種奇怪的、亂七八糟的補丁。該項目是通過敏捷開發進行的:對用戶會有較大影響的需求會得到儘快的實現。

現在,DNF 團隊正在移植各種流行的 Yum 插件到 DNF 上,並改進其用戶體驗。為了更加方便切換到 DNF,我們開發了一個 DNF 移植插件,來將 Yum 中已經安裝的包、分組和事務數據導入到新的 Fedora 包管理器中。趕快轉移到 DNF 吧,希望你喜歡!

Jan Silhan, by DNF team


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國