После установки пользовательского пакета я должен вызвать перезагрузку системы.
Я посмотрел на несколько решений этого
использовать notify-send
отобразить пользовательское уведомление, сопровождаемое командой перезагрузки, которая действительно работала как запланировано. Но пользовательское уведомление только показывают, когда я устанавливаю пакет из командной строки и не, когда я установил через Центр программного обеспечения.
Я столкнулся с некоторыми сообщениями, где они предложили добавить следующее к postinst сценарию
[ -x /usr/share/update-notifier/notify-reboot-required ] && \
/usr/share/update-notifier/notify-reboot-required || true
Испытанный включая вышеупомянутое в postinst сценарии, но все, что это делает, обновляет эти два файла /var/run/reboot-required.pkgs
и /var/run/reboot-required
с информацией о перезапуске.
Это ни уведомление отображаемого пользователя, ни перезагруженный система после пакета не установлено.
Существует ли способ отобразиться, перезагрузка потребовала пользовательского уведомления в Ubuntu/Fedora/Открытой SUSE?
Я выяснил ответ для этого. Может отобразиться сообщение устанавливают пользовательское уведомление с помощью следующего postinst
сценарий.
Создают файл с именем postinst
и копируют следующий сценарий в него. Этот сценарий должен быть скопирован в правильный каталог прежде, чем создать пакет Debian.
Примечание: Это для среды Debian.
#!/bin/sh -e
if [ -d /var/lib/update-notifier/user.d/ ]; then
rm -rf /var/lib/update-notifier/user.d/PackageName
cat << EOF >> /var/lib/update-notifier/user.d/PackageName
Name: PackageName Post Install Notification
Priority: High
Terminal: False
#Command: /usr/bin/PackageName
Description: Reboot is required to complete the installation.
EOF
touch /var/lib/update-notifier/dpkg-run-stamp
fi