Debian: Как использовать «apt-get install» без обновления зависимостей?

9

У меня уже есть пакет B, и я хочу установить новый пакет A. Установка требует изменения B, но я не хочу, чтобы это произошло.

Мне нужно установить пакет А.

Он имеет зависимость от пакета B и должен быть (> 2.0).

Я уже установил B в моей системе с версией 2.1, поэтому моя текущая установка уже выполняет зависимость.

Но в репозитории Debian есть новая версия (2.2) пакета B, и я не хочу этого, поскольку он конфликтует с другими вещами.

Таким образом, когда я устанавливаю пакет A, apt также пытается обновить B.

Как я могу отключить обновление зависимостей или указать явную версию зависимости без необходимости редактировать пакеты?

Я прочитал Как я могу получить apt-get, чтобы игнорировать некоторые зависимости? , но это не помогает мне. В этом вопросе зависимость (B) вообще не должна обрабатываться менеджером хранилища. В моем случае менеджер хранилища уже заботится о зависимости и должен продолжать делать это, но не в этом конкретном действии.

Повторно открыть рецензентов: пожалуйста, посмотрите комментарий victorgp, который должен был быть ответ в первую очередь.

victorgp
источник
3
Не дублируется, поэтому я собираюсь ответить самому, используйте: --no-upgrade
victorgp
1
Попробуйте сформулировать это более наглядно, более убедительно. Покажите легко проверяемые существенные различия между должностью и кандидатом в дураки. Только сказать: «это не обман», достаточно редко.
Петер - Восстановить Монику
1
@peterh Я отредактировал это, чтобы быть более точным. У меня сложилось впечатление, что «Ответы здесь не помогут здесь, и ответы здесь не помогут там» было бы достаточно.
Анджело Фукс

Ответы:

3

В Debian 8 я обнаружил, что опция --no-upgrade может помочь достичь желаемого результата. Например:

apt-get install --no-upgrade php7.0-xmlrpc
Андрей С.
источник
Этот флаг не обновляет только php7.0-xmlrpc. Это не влияет на пакеты зависимостей.
zhaofeng-shu33
2

Вы можете попробовать установить --nodepsфлаг с помощью apt-getили вы можете попробовать утилиту пакета debian, dpkgс опцией --ignore-depends.

Дэвид Джордж
источник
На apt-get нет флага --nodeps.
Анджело Фукс,
1

Вы можете использовать --nodepsфлаг apt-getили загрузить пакет и установить его, используя dpkgопцию--ignore-depends

Джордж Тасиулис
источник