Я пытаюсь установить пакет apt без одной из его зависимостей (в частности, git без Perl, чтобы уменьшить размер образа Docker на> 50 МБ).
Я могу думать о двух вариантах:
- установка пакета без этой конкретной зависимости
- установка пакета со всеми зависимостями и удаление зависимости
после
и я исследовал их обоих, и ни один из них не работал. Итак, мой вопрос: есть ли чистый способ сделать это?
Ниже то, что я пробовал до сих пор.
1. Установка пакета без этой конкретной зависимости
Наиболее предложения рекомендовать
метко скачать git
dpkg --ignore-depends=perl -i git*.deb
К сожалению, это не устанавливает другие зависимости, поэтому git клон
терпит неудачу из-за отсутствия libcurl
.
Итак, чтобы исправить это, некоторые другие предложения рекомендуем использовать
apt-получить -f установить
впоследствии, но эта команда пытается установить Perl, чего я пытаюсь избежать.
Итак, я говорю не трогать Perl с помощью:
apt-mark удерживать perl
но потом apt-получить -f установить
пытается удалить git.
Итак, я говорю оставить git в покое:
apt-mark удерживать git
но потом apt-получить -f установить
сдается, так как не может установить Perl и не может удалить git. Конец истории.
2. установка пакета со всеми зависимостями и удаление зависимости
после
Я установил git с Perl:
меткая установка -y git
затем удалил Perl с помощью
dpkg -P --force-зависит от Perl
но это не удаляет другие зависимости, которые были привнесены Perl, например. perl-модули. Так что попытка безуспешна.