Как правило, RPM-пакеты не должны требовать взаимодействия с пользователем. Снова и снова пользователи RPM заявляют, что целью RPM является явная цель - не устанавливать интерактивные установки. Для пакетов, которые требуют какого-либо ввода перед первым использованием, вы обычно запрашиваете эту информацию при первом использовании, мы помещаем все это в конфигурационные файлы с макросами или чем-то еще и говорим своим пользователям, что им придется настроить приложение, прежде чем оно будет пригодно для использования. .
Даже передача какого-либо параметра считается взаимодействием с конечным пользователем. Я думаю, что вам нужно, чтобы ваши предустановленные или установочные скрипты как-то автоматически определяли окружение, возможно, имея файл, который они могли бы изучить. Я также укажу, что с точки зрения пользователя RPM наличие пакета с именем * -qa.rpm намного более интуитивно понятно, чем передача какого-либо случайного параметра.
Для вашей конкретной проблемы, если вы устанавливаете другой контент, вы должны создавать разные пакеты. Если вы попытаетесь сделать что-то по-другому, вы в конечном итоге будете сражаться с системой RPM все больше и больше.
Нетрудно создать систему сборки, которая может выплевывать более 20 пакетов, которые в основном похожи. Я сделал это с помощью спецификационного файла template-ish и некоторых скриптов, запускаемых make, которые будут создавать различные спецификационные файлы и создавать RPM. Не зная специфики, может показаться, что у вас даже есть базовый пакет, от которого зависят все 20+ пакетов среды, а затем пакеты, специфичные для среды, устанавливают все, что соответствует их целевой среде.