Я хотел бы установить программный пакет в моей системе Fedora , но он имеет много необоснованных зависимостей (которые я точно знаю, что они на самом деле не требуются).
Раньше я работал над Debian , где apt-get позволяет вам систематически исключать рекомендуемые и предлагаемые пакеты, устанавливая только строго необходимые зависимости.
Есть ли способ сделать это с Yum ?
apt
yum
dependencies
Dacav
источник
источник
Ответы:
Нет.
К сожалению, управление пакетами на основе RPM имеет только один тип зависимостей. Это зависимость или нет, не что-то среднее ( читай здесь ). По моему опыту, зависимости в Fedora довольно ограничены, и неосновная функциональность не устанавливается, если вы не выполняете групповую установку.
Множество уровней зависимостей показывают, на мой взгляд, одну из возможностей управления пакетами на основе DEB.
источник
yum install --whithout-recommends
но ничего не нашел.РЕДАКТИРОВАТЬ: Чтобы ответить на первоначальный вопрос, да, это возможно для менеджеров пакетов, которые в настоящее время поддерживают слабые зависимости. Как пример, на Mageia это будет равно
urpmi --no-suggests foo
. Для SuSe это было быzypper in --no-recommends
. Нечто подобное должно быть реализовано и для более новых версий yum, иначе эти программные зависимости были бы довольно бесполезны.На самом деле существуют слабые зависимости в rpm, которые позволяют это сделать, но, к сожалению, они не были добавлены в yum и версию rpm.org, которую Fedora / RHEL использует с недавнего времени (и, вероятно, в настоящее время доступна только через rawhide). Проверьте http://lists.rpm.org/pipermail/rpm-maint/2014-Feb февраля/003666.html для недавнего объявления и деталей реализации. Также см. Http://lists.baseurl.org/pipermail/yum-devel/2009-September/005844.html для предыдущего обсуждения. Также есть вики-страница fedora об изменениях в rpm-4.12, которая описывает эту поддержку: https://fedoraproject.org/wiki/Changes/RPM-4.12
FWIW, мягкие зависимости используются уже несколько лет SuSe см http://en.opensuse.org/Libzypp/Dependencies#Weak_dependencies и ниже раздел, показывающий , что их обороты ветви опор. Также Mandriva / Mageia и связанные с ними вилки уже давно используют мягкие зависимости (только «Предлагает»).
Итак, чтобы ответить на первоначальный вопрос, обновитесь до rawhide / rpm-4.12 и используйте одну из слабых зависимостей, которые он поддерживает сейчас.
Если вам нужна дополнительная информация о внутренних деталях реализации RPM, я буду рад поделиться ими.
источник
Зависимости в дистрибутивах на основе RPM работают иначе, чем метод dpkg требует / рекомендует / предлагает.
Обычно зависимости в дистрибутивах на основе RPM можно рассматривать как эквивалент «этот пакет не будет работать должным образом, если эта зависимость не будет соблюдена». Однако у сопровождающих пакетов есть некоторая творческая свобода включать дополнительные зависимости по своему усмотрению (либо потому, что они не обнаруживаются автоматически, либо потому, что считают это жестким требованием).
Например, веб-приложение в Debian / Ubuntu может иметь различные предполагаемые зависимости от пакетов MySQL Server. Однако, поскольку сервер MySQL не обязательно должен находиться на локальном веб-сервере, это не является жестким требованием, тот же пакет в Fedora не будет зависеть.
Существует проблема с методологией RPM, которую вы определили, иногда слишком много зависимостей. Я слышал общий вопрос: «Почему этот пакет должен включать библиотеки для Bluetooth, когда я не использую Bluetooth?», Такие элементы, как дополнительные плагины, включенные в основной пакет приложения, обычно являются причиной такой ситуации.
источник
Я нашел это в моей истории команд
Я, видимо, читал об этой функции на https://bgstack15.wordpress.com/2017/05/13/dnf-ignore-weak-dependencies/ .
источник