Как правильно заблокировать рабочий стол при спящем режиме?

Если я заблокирую экран , спящий режим, закрыв крышку ноутбука, откройте крышку ноутбука и нажмите кнопку питания, на экране появится только черная поверхность, и я сразу же начну вводить пароль. Если я не заблокирую экран до спячки, подождите около 30 секунд, откройте крышку ноутбука и нажмите кнопку питания, на экране появится рабочий стол, а затем исчезнет до черного цвета, как если бы xscreensaver был активирован после выхода из спящего режима. Только после исчезновения я могу отключить заставку. Как я могу убедиться, что xscreensaver всегда корректно активируется при спящем режиме, так что мне не нужно ждать разложения?

Я недавно решил эту проблему самостоятельно на Arch Linux . Я использовал программу xss-lock из найденного здесь AUR .

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

  1. Установите xss-lock из AUR .
  2. Добавьте одну из приведенных ниже команд в ваш .xprofile или соответствующий сценарий запуска для вашего WM / DM.

Мой .xprofile :

 xss-lock -- /usr/bin/slock & 

Для xscreensaver :

 xss-lock -- /usr/bin/xscreensaver-command -lock & 

Я решил эту проблему для себя, переключившись на выделенный экранный шкаф вместо xscreensaver.

Я использую xtrlock на Debian , но он, кажется, недоступен на Arch. Вот сообщение в блоге, описывающее некоторые альтернативы Arch.

Почти исправлено использование xautolock со slock и простой slock блокировки экрана . Служба в настоящее время работает только на системном уровне , но, надеюсь, кто-то сможет с этим справиться.

Изменить: Несмотря на то, что служба явно говорит Before=sleep.target я все еще иногда вижу мерцание рабочего стола при возобновлении.