Эмуляция дополнительных дисплеев

14

У меня есть система с одним монитором, я хотел бы протестировать конфигурацию xmonad, предназначенную для нескольких мониторов. Есть ли способ эмулировать систему с 3 мониторами, используя что-то вроде Xephyr для проверки моей конфигурации?

lab_notes
источник

Ответы:

7

Я нашел решение, используя Xephyr и Xdmx

Сначала создайте дисплеи Xephyr

Xephyr -screen 1920x1080 -ac :1
Xephyr -screen 1920x1080 -ac :2
Xephyr -screen 1920x1080 -ac :3

Это создает 3 окна 1920x1080, каждое из которых будет выступать в качестве монитора

Затем добавьте слой xinerama на эти виртуальные дисплеи

Xdmx +xinerama -xinput local -display :1 -display :2 -display :3 -ac :4

Затем создайте новый терминал и запустите ваш оконный менеджер или приложение, например, так

DISPLAY=:4.0
xmonad

или если вы просто хотите протестировать поддержку приложения xinerama вместо того, xmonadчтобы запустить xtermили thunar.

lab_notes
источник
5

Вам нужен только один экземпляр Xephyr.

Xephyr +xinerama -screen 1920x1080 -screen 1920x1080 -screen 1920x1080 -ac :1

Если вам нужно расширение RANDR, добавьте +extension RANDRаргументы.

Xephyr +extension RANDR +xinerama -screen 1920x1080 -screen 1920x1080 -screen 1920x1080 -ac :1

EFernandes
источник
1
Если я хочу, чтобы оконный менеджер сказал Xfwm4, чтобы использовать все виртуальные дисплеи?
user877329
1
Это на самом деле не работает (хотя и не дает сбоя.) Вы можете проверить, запустив xrandrего и увидев, что он показывает только один монитор. bugs.debian.org/cgi-bin/bugreport.cgi?bug=918457, кажется, содержит некоторые детали
Фрю Шмидт
1

Хотя это и отвечает на вопрос, это не полномасштабное решение. Эти решения размещают три экрана в горизонтальном ряду (ну, по крайней мере, в соответствии с xinerama ( xdpyinfo -ext XINERAMA -display :1), фактическое размещение окна будет позаботиться о диспетчере окон). Если вы хотите иметь другое размещение экранов, это не поможет.

uli42
источник