Можно ли добавить лицензионное соглашение в пакет RPM? Когда пользователь устанавливает RPM, он должен предложить принять лицензионное соглашение.
Добавление лицензионного соглашения в пакет RPM
Ответы (2)
Это плохая идея как по техническим причинам, так и по причинам пользовательского интерфейса.
Не только потому, что во время установки может не отображаться отображение, но также потому, что во время установки или даже при первом запуске может отсутствовать пользователь, или механизм извлечения файла rpm может просто не поддерживать какой-либо метод отображения текста. или примите ввод.
По сути, если у вас есть для этого, наименее худший способ - это сделать, предложенный Игнасио, что и делает Sun, и создать файл RPM без таких ограничений, а затем поместить его в самораспаковывающийся двоичный файл, который отображает лицензию, запрашивает пользователя и затем разворачивает RPM. В духе разрушения пользовательского опыта вам также потребуется набор инструкций, подобных этим, созданный Sun: Установка JRE RPM для Linux.
Правильный способ сделать это, конечно же, - использовать поле License
и включить файл как %doc
, который содержит ваши условия лицензирования. Это устраняет необходимость перехода по ссылкам, что может быть неприемлемо для ваших юристов, хотя многие считают, что в любом случае это не имеет исковой силы.
Это раздел руководства по RPM, в котором рассматриваются следующие вопросы:
Пакет не может использовать интерактивные сценарии предварительной установки, после установки, предварительного удаления или после удаления. Пользователь не должен получать никаких запросов во время установки, обновления или удаления - все должно быть полностью автоматизировано. (Рекомендации по RPM, проект Fedora)
Помните, первое впечатление пользователя о вашем продукте может быть следующим:
(источник: virtuatopia.com)
или это:
(источник: flickr.com)
Не делай этого; нет никакой гарантии, что пакет будет установлен, даже если есть даже экран для отображения лицензионного соглашения. Поместите его в самораспаковывающийся архив, в котором указано соглашение о выполнении.
$PAGER
, наличие less
, присутствие more
.
- person Ignacio Vazquez-Abrams; 29.01.2010