Crontab работает некорректно на двух экранах в i3 (для переменной отображения установлено значение :0)

То, является ли файл символической ссылкой на другой файл, не влияет на то, как он работает. telinit, как и systemctl, работает как «обычный» процесс.

1
19.10.2020, 05:45
1 ответ

Хорошо, прочитав исходный код feh , я решил, что проблема связана с xinerama. Несмотря на то, что это невозможно решить красивым способом, вот сценарий, который служит обходным путем:

#!/bin/bash
# Compute screen size
size=$(xrandr | grep *+ -m 1 \
        | sed -r 's/^[^0-9]*([0-9]+x[0-9]+).*$/\1/')
# then manually collate a combined picture for two screens and
# launch feh without xinerama functionality  
convert [path/to/picture] \
  -trim \
  -resize $size \
  -background black -compose Copy \
  -gravity center -extent $size \
  -quality 92 +duplicate +append JPG:- \
  | feh --bg-max --no-xinerama -

Как написано в комментариях к скрипту, скрипт вычисляет размер экрана, а затем вручную сопоставляет комбинированное изображение для двух экранов (с помощью инструмента imagemagick )и запускает feh вообще без функциональности xinerama.

Это работает как в cron, так и в интерактивном режиме. Однако это, вероятно, не будет работать очень хорошо, если экраны разных размеров.

0
18.03.2021, 22:56

Теги

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