у меня 3 упаковки корепкг
, corepkg-optB
и corepkg-optC
. corepkg-optC
зависит от corepkg-optB
, corepkg-optB
зависит от корепкг
.
Я создал репо этих 3 пакетов. Когда я запускаю yum install corepkg-optC
, и корепкг
не удалось, yum устанавливает corepkg-optB
и corepkg-optC
. Это не то, что я хотел бы.
я бы хотел corepkg-optB
провал, если корепкг
не удалось и corepkg-optC
провал, если corepkg-optB
не удалось, потому что корепкг
неуспешный.
Мой спецификатор выглядит так:
Название: corepkg
Версия: 1.0.0
%претранс
если ! grep -q foo /etc/hosts
тогда
выход 1
фи
%пакет вариант B
Требуется: corepkg = 1.0.0
%пакет опц
Требуется: codepkg-optB = 1.0.0
Я попробовал Requires, затем Requires(pre), но дал тот же результат:
# yum установить corepkg-optC
ошибка: скриптлет %pretrans(corepkg-1.0.0-1.el7.noarch) не выполнен, статус выхода 1
Ошибка скриптлета PRETRANS в пакете rpm corepkg-1.0.0-1.el7.noarch
Установка: corepkg-optB-1.0.0-1.el7.noarch 1/3
ошибка: corepkg-1.0.0-1.el7.noarch: установка пропущена
Установка: corepkg-optC-1.0.0-1.el7.noarch 2/3
Проверка: corepkg-optC-1.0.0-1.el7.noarch 1/3
Проверка: corepkg-optB-1.0.0-1.el7.noarch 2/3
Проверка: corepkg-1.0.0-1.el7.noarch 3/3
Установлен:
corepkg-optC.noarch 0:1.0.0-1.el7.noarch
Зависимость установлена:
corepkg-optB.noarch 0:1.0.0-1.el7.noarch
Неуспешный:
corepkg.noarch 0:1.0.0-1.el7.noarch
Я попробовал Requires(pretrans), но это было бессмысленно, так как все это одна транзакция yum.
Все corepkg мои, спецфайлы могу модифицировать. Есть идеи? Спасибо!
РЕДАКТИРОВАТЬ: пакеты B и C не являются dep, а больше похожи на дополнительные материалы для corepkg. Это похоже на пакеты php-* или python-*.
Аналогично, потому что мои пакеты corepkg-optB и corepkg-optC являются модулями (текстовыми файлами) и ничего не значат без corepkg.
Я говорю это потому, что некоторые пакеты php-* работают автономно.