i3lock, отображать одно и то же изображение в конфигурации с двумя мониторами?

i3lock, отображать одно и то же изображение в конфигурации с двумя мониторами?

Возможно ли иметь одно и то же изображение на двух разных мониторах? Я использую Ubuntu 18.04 с i3wm. У меня есть скрипт для custom i3lockс изображением Морти (Рик и Морти). Но в режиме dualmonitor изображение остается посередине мониторов. Есть предложения?

решение1

Чтобы использовать один монитор вместо центра обоих, вам нужно настроить SDL_VIDEO_FULLSCREEN_HEAD. В зависимости от того, как вы загружаете i3, вы можете сделать это, указав в ~/.xinitrc\ .xsessionrc, или для i3lock, когда он запускается i3:

export SDL_VIDEO_FULLSCREEN_HEAD=0  # First monitor

0номер монитора, начиная с нуля. Для настройки двух мониторов можно выбрать между 0и 1. Обычно, 0это будет монитор, который вы видите в BIOS POST, и начальная консоль Linux.

i3lockтолько

Самый простой способ добиться этого — установить эту переменную для i3lock, то есть, отредактировав ваш ~/.config/i3/config:

...
exec --no-startup-id i3lock ... 
...
exec --no-startup-id SDL_VIDEO_FULLSCREEN_HEAD=0 i3lock ... 

Все программы вi3

Чтобы сделать это для всех приложений вашего пользователя в пределах i3, вам нужно добавить эту строку в ~/.xinitrc\ .xsessionrc.

После определения этой переменной при запуске вашего оконного менеджера все полноэкранные приложения будут отображаться на этом одном экране, а не разделяться на два. Вы можете протестировать это в одном терминале, экспортировав переменную и запустив i3lock, но вы должны внести изменения, как описано ранее, и перезапустить, i3чтобы все работало правильно.

Одна из проблем, с которой вы можете столкнуться, заключается в том, что ~/.xinitrc\ .xsessionrcне вносятся i3. Одинрекомендациявместо этого следует добавить эти конфигурации в ~/.profile:

if [ "$0" = "/usr/sbin/lightdm-session" -a "$DESKTOP_SESSION" = "i3" ]; then
    # Do stuff
fi

Лично я отказался от обоих GDMи LightDMвместо этого вхожу в консоль/tty, и startx, аналогично приведенному выше предложению, использую Xsessionсконфигурированный с i3по умолчанию, что вызывает правильную инициализацию ~/.xinitrc:

#
# ~/.bash_profile
#
[ -e ~/.profile ] && source ~/.profile
[ -e ~/.bashrc ] && source ~/.bashrc

if [ $XDG_VTNR -le 2 ] && [ $TERM != "screen-256color"  ]; then
    startx /etc/X11/Xsession -- :1 -nolisten tcp
fi

Фон рабочего стола/Обои

Чтобы установить обои, которые, скорее всего, будут отличаться от i3lock, вы можете использовать feh. fehЭто настроит оба монитора одинаково (по умолчанию):

feh --bg-center /path/to/desktop.png --image-bg '#f1fa8c'

Или, в вашем ~/.config/i3/config:

exec_always --no-startup-id sleep 5 ; feh --bg-center /path/to/desktop.png --image-bg '#f1fa8c'

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

Связанный контент