題 如何阻止deb文件作為依賴項被安裝?


我正在運行最新版本的Ubuntu 09.10(syphyllitic sphinx或其他代號),我正在試圖找出如何阻止程序包安裝作為依賴的結果。對於這個例子,讓我們說我想這樣做 bc 永遠不會安裝,即使 ubuntu-desktop 聲稱需要它。當我進行更新並且有新版本時,是否有一種簡單的方法可以實現 ubuntu-desktop 它永遠不會再次嘗試安裝 bc

我認為這可以使用一些自定義虛擬包和 dpkg-divert 或者一些這樣的魔術,但我找不到一些關於如何做的好文檔。

我也知道做這樣的事情會導致時空結構的撕裂,但我願意處理。


3
2018-01-05 02:08


起源


我想回答,但我不能對時空面料的眼淚負責。我很抱歉,但我必須想到孩子們。 - Chris_K


答案:


查看“equivs”包。你可以偽造一個假裝提供你正在安裝的真實包所需的包。


2
2018-01-05 04:52





這個 來自Ubuntu wiki的頁面 應該解決你的問題。它解釋瞭如何在沒有卸載的應用程序的情況下創建新的元數據包。

話雖如此,我只是沒有ubuntu-desktop元數據包。


1
2018-01-05 09:45





我不知道它是否適用於強制性要求,但它對我阻止推薦的包裝做得很好 ttf-mscorefonts-installer 安裝/升級葡萄酒時。

我認為這個軟件包只是存在使互聯網看起來很糟糕,以防止年輕的Linux黑客對MS構成威脅。


把以下內容放入你的 /etc/apt/preferences

Package: i-am-a-package-containing-junk
Pin: version *
Pin-Priority: -1

Pin-Priority: -1 表示匹配軟件包的匹配版本永遠不應該安裝,而其餘版本匹配軟件包的每個版本 i-am-a-package-containing-junk,有效地防止其安裝。


1
2018-02-07 11:38





我不知道有任何簡單的方法,我懷疑有一個。畢竟,依賴性是有原因的,而且這些工具幾乎不支持忽略它們。

事實上,甚至強行卸載依賴(dpkg -r --force-depends <package>) 會引發 aptitude 和朋友停止工作,直到你修復損壞。所以我擔心你所要求的是不可能的,至少不是簡單的命令。

實現此目的的最簡單方法可能是創建一個具有高版本號的空包,但即使這可能會在包依賴性發生變化時中斷。

你能解釋一下你想做什麼嗎?那麼也許我們可以幫忙。


0
2018-01-05 04:29





在這個特定的情況下...不要使用元數據包 - 可能是一個'核心'軟件包,你可以安裝你需要的東西 - 我有與xorg相同的問題,因為我沒有看到安裝的問題在基於英特爾圖形的筆記本電腦上的nvidia驅動程序 - 所以我安裝了xorg-intel,而不是xorg-core。


0
2018-01-05 05:33



不幸的是,這是一套用於檢查以確保安裝元數據包的工作軟件。如果沒有安裝元軟件包,就會發生不好的事情並且它會回家等等。 - Pridkett