Я не эксперт, но я думаю, что вы могли бы отредактировать /usr/lib/pm-utils/sleep.d/00powersave, чтобы добавить команду xscreensaver-command --lock в начале.
Это, однако, будет выполняться дважды - один раз, когда вы приостанавливаете, тогда
Изменить: это немного больше (не так много), но из этого потока кажется, что вам лучше создать файл в / usr / lib / pm-utils /sleep.d с помощью команды, которую вы хотите запустить. Итак, в полном объеме, вот команды из терминала:
sudo gedit /usr/lib/pm-utils/sleep.d/000LockScreensaver
Затем поместите это в файл и сохраните:
#!/bin/sh
# Lock xscreensaver on resume from a suspend.
case "$1" in resume|thaw)
xscreensaver-command --lock ;
esac
И, наконец,
sudo chmod +x /usr/lib/pm-utils/sleep.d/000LockScreensaver
Затем попробуйте приостановить, чтобы увидеть, работает ли это при возобновлении.
Способ сделать это - запустить команду
killall unity-scope-home
после открытия тире, процесс начнется автоматически снова.
Затем отображаются правильные значки ...
В соответствии с этим ответом (и вы можете найти много других в том же смысле), к сожалению, похоже, нет никакой команды, чтобы позволить единству-приложениям-демону обновить свой кэш приложений. Но я могу подтвердить, что единство автоматически обнаружит любые изменения с .desktop файлами в ~/.local/share/applications. Если эти изменения не будут доступны сразу, попробуйте выполнить регистрацию и снова, чтобы обновить ее.
update-desktop-database - это команда обновления базы данных .desktop.
Некоторые приложения могут перестать нормально работать после этой команды. Например, Chrome стал полностью черным.
unity --replace
У меня была аналогичная проблема, исправленная при перезапуске. Я использую ubuntu 16.04
Обычно я создаю .desktop файлы в /usr/share/applications/, если хочу поделиться файлами рабочего стола с другими пользователями и ~/.local/share/applications, если только для одного пользователя. И я обычно перезагружаюсь.