команда xrandr для конфигурирования мониторов только работает, когда-то вошел в систему

У меня есть команда xrandr, которая настраивает мои мониторы точно как требуется (различные масштабы для контакта с чрезвычайно ограниченной поддержкой HDPI Ubuntu в токе):

xrandr --fb 7040x2160 --output DP1 --mode 1920x1080 --pos 0x0 --scale 2x2 --output eDP1 --mode 3200x1800 --pos 3840x180 --scale 1x1

Если я выполняю это в терминале после входа в систему, он работает отлично. Это также работает с помощью Приложений Запуска, как замечено в этих ответах: 1, 2, и 3 (работает безо сна). Я получаю конфигурацию, которая похожа на это:

Screen 0: minimum 8 x 8, current 7040 x 2160, maximum 32767 x 32767
eDP1 connected primary 3200x1800+3840+180 (normal left inverted right x axis y axis) 294mm x 165mm
   3200x1800     59.98*+  47.99  
   2880x1620     60.00  
   2560x1440     60.00  
   2048x1536     60.00  
   1920x1440     60.00  
   1856x1392     60.01  
   1792x1344     60.01  
   2048x1152     60.00  
   1920x1200     59.95  
   1920x1080     60.00    59.93  
   1600x1200     60.00  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1440x900      59.89  
   1280x960      60.00  
   1368x768      60.00  
   1360x768      59.80    59.96  
   1152x864      60.00  
   1280x720      60.00  
   1024x768      60.00  
   1024x576      60.00  
   960x540       60.00  
   800x600       60.32    56.25  
   864x486       60.00  
   640x480       59.94  
   720x405       60.00  
   640x360       60.00  
DP1 connected 3840x2160+0+0 (normal left inverted right x axis y axis) 531mm x 299mm
   1920x1080     60.00*+  50.00    59.94  
   1920x1080i    60.00    50.00    59.94  
   1600x1200     60.00  
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1440x900      74.98    59.90  
   1280x960      60.00  
   1280x800      59.91  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08  
DP2 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
HDMI2 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

Если я выполняю точно ту же команду куда-нибудь в процессе запуска, я любой получает искаженную конфигурацию, в которой мой размер кадрового буфера является неправильным (с экранами, помещенными друг поверх друга) или никакой эффект вообще. Места, которые я попробовал, .xprofile, lightdm конфигурация (названный с display-setup-script, greeter-setup-script, и session-setup-script).

Я зарегистрировал подробный вывод от команды, и все время это говорит, что установило правильные значения, но вывод на моих экранах и запросах xrandr впоследствии, очевидно, говорит иначе. Как я могу настроить свои экраны далее цепочка (по крайней мере так, чтобы зазывала была отображена правильно)? Учитывая X-сервер инициализируется задолго до того затем, есть ли способ добраться xrandr конфигурация управляет, чтобы придерживаться?

Примечание редактирования: вопрос теперь фокусирует на корне проблемы "настраивающие мониторы до, когда-то вошел в систему"

0
задан 13 April 2017 в 15:24

1 ответ

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

то, Что я также рекомендовал бы, должно использовать измененную версию Вашей команды:

bash -c 'sleep 3 && xrandr --fb 7040x2160 --output DP1 --mode 1920x1080 --pos 0x0 --scale 2x2 --output eDP1 --mode 3200x1800 --pos 3840x180 --scale 1x1'

Тем путем там является достаточная задержка Единицы для применения ее изменений, и затем Вы выполняете свое собственное

1
ответ дан 28 September 2019 в 05:59

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

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