Пакет Debian с проверкой системных требований?

Можно ли создать с помощью debconf пакет, который проверяет минимальные системные требования для запуска программного обеспечения? Является ли предварительно настроенный скрипт config debconf способом сделать это?

Спасибо

1 ответ

Вы можете отображать предупреждения во время установки пакета. Однако прерывать установку - плохая идея - вы оставите систему пакетов в нерабочем состоянии, и пока пользователь не удалит ваш пакет, установка каждого пакета будет завершена попыткой завершить установку вашего пакета. Это будет ужасно для пользователя.

Вы можете использовать postinst скрипт для этого - предлагаю postinst поскольку вам может потребоваться установить пакеты в качестве зависимостей для обнаружения оборудования и т. д., а политика пакетов определяет, что запрос должен выполняться в postinst:

Если в пакете есть жизненно важная часть информации, которую нужно передать пользователю (например, "не запускайте меня таким, какой я есть, вы должны сначала отредактировать следующие файлы конфигурации, или вы рискуете, что ваша система испускает плохо отформатированные сообщения"), должен отобразить это в скрипте config или postinst и предложить пользователю нажать кнопку возврата, чтобы подтвердить сообщение. Сообщения об авторских правах не считаются жизненно важными (они принадлежат /usr/share/doc/package/copyright); также нет инструкций по использованию программы (они должны быть в онлайновой документации, где их могут видеть все пользователи).

Любые необходимые подсказки почти всегда должны быть ограничены скриптом config или postinst. Если это делается в postinst, его следует защищать условно, чтобы не возникало ненужного запроса в случае сбоя установки пакета и вызова postinst с помощью abort-upgrade, abort-remove или abort-deconfigure.

С debconf, db_input команда с приоритетом high или же critical может отображать предупреждение.

Возможно, было бы лучше написать скрипт-обертку для вашего исполняемого файла программного обеспечения, который проверяет требования и показывает более заметное сообщение с возможностью удаления пакета.

Другие вопросы по тегам