3

Я использую последнюю версию Ubuntu 09.10 (syphyllitic sphinx или что-то еще, чёрт возьми, кодовое имя), и я пытаюсь выяснить, как заблокировать установку пакета в результате зависимости. Для этого примера, допустим, я хотел бы сделать так, чтобы bc никогда не устанавливался, хотя ubuntu-desktop утверждает, что это требуется. Есть ли простой способ сделать это так, что когда я делаю обновление и появляется новая версия ubuntu-desktop он никогда больше не попытается установить bc?

Я думаю, что это возможно сделать с помощью некоторых пользовательских фиктивных пакетов и dpkg-divert или некоторой такой магии, но я просто не могу найти хорошие документы о том, как это сделать.

Я также знаю, что подобное может привести к разрыву в пространстве-времени, но я готов с этим справиться.

5 ответов5

2

Проверьте пакет "эквиваленты". Вы можете подделать пакет, который претендует на то, чтобы предложить любой реальный пакет, который вам нужен.

1

я не знаю, работает ли он для обязательных требований, но он помог мне заблокировать рекомендуемый пакет ttf-mscorefonts-installer при установке / обновлении wine.

я полагал, что этот пакет просто существует, чтобы интернет выглядел дерьмово, чтобы молодые хакеры 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

Эта страница из вики Ubuntu должна исправить вашу проблему. В нем объясняется, как создать новый метапакет без удаленного приложения.

Сказав это, я просто жил без метапакета ubuntu-desktop.

0

Я не знаю ни одного простого способа сделать это, и я сомневаюсь, что есть один. Зависимости существуют по какой-то причине, и инструменты предлагают очень небольшую поддержку для их игнорирования.

На самом деле, даже принудительное удаление зависимости (dpkg -r --force-depends <package>) приведет к тому, что aptitude & friends перестанет работать, пока вы не исправите повреждение. Поэтому я боюсь, что вы спрашиваете, это невозможно, по крайней мере, не с помощью простой команды.

Самый простой способ сделать это, вероятно, создать пустой пакет с большим номером версии, но даже он может сломаться при изменении зависимостей пакета.

Не могли бы вы объяснить, что вы пытаетесь сделать? Тогда, может быть, мы можем помочь.

0

в этом конкретном случае ... не используйте метапакет - вероятно, есть пакет 'core', и вы можете установить поверх него то, что вам нужно - у меня была такая же проблема с xorg, так как я не вижу смысла устанавливать Драйверы nvidia на ноутбуке на базе графики Intel - так что я установил xorg-intel, а не xorg-core.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .