Debian
如何修補 debian 軟體包?
我有 Debian stable 並且我發現了一些已經修復的奇怪錯誤。
修復程序已合併到穩定分支中,
gnome-settings-daemon 3.32.1
但我有 那個版本gnome-settings-daemon 3.30.2-3
所以,我怎樣才能在不破壞系統的情況下使用更新檔?我必須從哪里安裝?反向移植?我用 apt 檢查版本,但在這裡看不到任何有用的東西:
/home/user-> apt-cache policy gnome-settings-daemon gnome-settings-daemon: Installed: 3.30.2-3 Candidate: 3.30.2-3 Version table: *** 3.30.2-3 500 500 http://deb.debian.org/debian buster/main amd64 Packages 100 /var/lib/dpkg/status
提前致謝!
根據gnome-settings-daemon 的 Debian 軟體包頁面,
stable
(buster)的最新版本是3.30.2-3
(您已經安裝了)。但是,對於
testing
(bullseye) 和unstable
(sid),版本3.38.1-2
是可用的。因此,您可以只安裝那些較新版本中缺少的軟體包,如下所述:如何在執行“穩定”Debian 的電腦上安裝來自“不穩定”Debian 的一些軟體包?反向移植和從原始碼編譯是進一步的選擇(也在上面連結的答案中描述)。
backports.debian.org
似乎不gnome-settings-daemon
包括buster
.該
testing
分支目前的版本為 3.38.1-2,比您需要的要新得多。推薦的方法是自己向後移植更新檔。
你必須:
- 安裝建構所需的任何開發包
gnome-settings-daemon
:sudo apt-get build-dep gnome-settings-daemon
- 獲取gnome-settings-daemon的原始碼
apt-get source gnome-settings-daemon
- 應用更新檔
cd gnome-settings-daemon-3.30.2/ curl 'https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cea632bf682760e80654df19cfef6206efca868a.diff' | patch -p1
- 記錄將更新檔添加到包更改日誌中(從技術上講,如果您只是自己使用該包,則可以省略它,但如果您打算成為包維護者,那麼養成這個習慣會很好)
dpkg-source --commit # this will ask you to write a changelog entry
- 建構二進制包:
dpkg-buildpackage -rfakeroot
- 最後安裝生成的二進制包:
cd .. sudo dpkg -i gnome-settings-daemon_3.30.2-3_amd64.deb gnome-settings-daemon-common_3.30.2-3_all.deb
- 如果您希望在不註銷的情況下使更改生效,則需要終止任何現有
gsd-media-keys
程序,以便 gnome-settings-daemon 使用新的二進製文件重新啟動它:killall gsd-media-keys