Debian

如何查找在新的 Debian 版本中添加了哪些軟體包

  • July 17, 2021

我正在將我的 Debian 系統更新到一個新的主要版本,並且由於 Debian 以擁有 Linux 發行版中最大的軟體儲存庫之一而聞名,我很想看看自上一個版本以來添加了哪些軟體包。目前我正在從 Debian 10 “Buster” 更新到 Debian 11 “Bullseye”。

這樣的列表是否由 Debian 項目人員維護,或者如何建構它,可能使用 APT 查詢?

顯然,只看到版本更新的包不應該被計算在內。看看哪些軟體包已被刪除也會很有趣。

我不認為apt可以自己告訴你,但aptitude可以。如果您還沒有它,請安裝它,然後在更新*之前執行它。*你會看到這樣的螢幕:

Actions  Undo  Package  Resolver  Search  Options  Views  Help
C-T: Menu  ?: Help  q: Quit  u: Update  g: Preview/Download/Install/Remove Pkgs
aptitude 0.8.11 @ XXX
--- Upgradable Packages (62)                                                                                                        
--- New Packages (2778)
--- Installed Packages (6452)
--- Not Installed Packages (202276)
--- Obsolete and Locally Created Packages (51)
--- Virtual Packages (84017)
--- Tasks (217)

這兩個部分對您來說會很有趣,“新包”(列出所有新的包aptitude)和“過時的和本地創建的包”(列出所有已安裝的包,這些包不再可從儲存庫中獲得)。按fEnter清除新包列表;“新包”部分將消失。

現在將您的儲存庫更新到新的主要版本,然後aptitude再次執行:它將顯示新包,如果您已從配置中完全刪除舊版本的儲存庫,則會顯示過時的包。要查看某個部分的內容,請使用箭頭鍵滾動到該部分並按Enter;您也可以使用[一次來展開所有小節。

如果您已經更新,甚至升級,您仍然可以獲得此資訊:編輯您的源以指向以前的版本,執行apt update,然後aptitude forget-new,再次編輯您的源以指向新版本,然後apt update再次執行。

您可以通過跟踪離開NEW 隊列的包的 RSS 提要來跟踪進入分發版(但不一定是給定版本)的包。還跟踪包刪除(對於整個發行版,同樣不是特定版本)。

有所有包的列表….

“buster”中的所有 Debian 軟體包 https://packages.debian.org/buster/https://packages.debian.org/buster/allpackages?format=txt.gz → 89,969 行(軟體包)

“bullseye”中的所有 Debian 軟體包 https://packages.debian.org/bullseye/https://packages.debian.org/bullseye/allpackages?format=txt.gz → 96,201 行(軟體包)

看起來 Debian 11 中添加了 6,332 個軟體包,但刪除了一些舊軟體包,因此計數不太正確。


保存文本列表。為了便於比較,請刪除括號中顯示的包版本:

sed -e 's/([^()]*)//g' 10-buster > all-10
sed -e 's/([^()]*)//g' 11-bullseye > all-11

            ## run diff, and "grep the news" = +lines
diff -u all-10 all-11 | grep -E "^\+" > news-in-11.txt

            ## remove patterns "....modules-5.10.0-7 ..."
sed -i.bak '/modules-5.10.0-7/d' ./copy.of_news-in-11.txt

整理新包的問題是許多包的描述文本也發生了變化。


引用自:https://unix.stackexchange.com/questions/658779