Блокировка сценария пропускает некоторые команды

Я использую i3wm с XFCE как моя настольная среда. Я имею, отключают XFCE по умолчанию Lockscreen (легкий блокировщик, я верю) в пользу моего собственного сценария блокировки, который использует i3lock-цвет, и я использую xss-блокировку для инициирования сценария блокировки на крышке близко. Сам сценарий (полный сценарий здесь) в основном делает снимок экрана, ImageMagick использования, чтобы пикселизировать изображение и добавить темный прямоугольник в левом нижнем угле изображения (прямоугольник обеспечивает дополнительный контраст для текста, который наложен i3lock-цветом). Затем это использует i3lock-цвет, чтобы заблокировать экран и отобразить часы, некоторый текст, и т.д.

Когда я запускаю скрипт от терминала, результат как ожидалось. Экран заблокирован с правильным образом (включая темный прямоугольник). Correct lockscreen

Однако после активирования xss-блокировки с xss-lock -l /path/to/script/lock.sh и затем закрытие крышки, выполнений сценария, но прямоугольника не оттянуто, ведя к иногда нечитабельному тексту Lockscreen. Incorrect lockscreen

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

Я очень смущен относительно того, как это могло произойти. Ни один journalctl ни /var/log отобразите что-либо, что выглядит связанным с этим. Любая справка на том, где начать отлаживать, ценилась бы.

1
задан 21 March 2019 в 23:51

1 ответ

Прямоугольные пропорции вычисляются относительно в настоящее время связанного использования разрешения (разрешений) экрана (экранов) xrandr на строке 31, но xrandr потребности DISPLAY переменный набор, который не может иметь место здесь. У Вас есть две опции:

  • явно установите переменную, например, для первого дисплея:

    SR=$(DISPLAY=:0 xrandr --query | …
    
  • hardcode значение $rectangles в строке 29, это делает строки 30 - 37 устаревшими (прокомментируйте или удалите их), например, для одного 1680x1050 экран:

    rectangles="rectangle 80,970 380,870"
    

Дальнейшее чтение:

0
ответ дан 7 December 2019 в 20:58

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

Похожие вопросы: