скрипт запуска xrandr

Я использую сервер Ubuntu с xmonad. Я настраиваю настройку двойного монитора с помощью xrandr, но не могу запустить его при запуске. Мой .xinitrc выглядит следующим образом:

# WM
xmonad

# dual monitor
xrandr --output HDMI1 --auto
xrandr --output VGA1 --auto --left-of HDMI1

Настройки не применяются. Как мне поступить об этом?

3
задан 23 October 2013 в 17:31

2 ответа

Попробуйте использовать амперсанд (&) за xmonad. Так будет выполняться в фоновом режиме. И две xrandr команды могут быть выполнены.

# dual monitor
xrandr --output HDMI1 --auto
xrandr --output VGA1 --auto --left-of HDMI1

# WM
xmonad
0
ответ дан 23 October 2013 в 17:31

блузка с короткими рукавами Илии, Посмотрите, работает ли это решение лучше на Вас: Как вызвать корректные разрешения Нескольких Мониторов для LightDM?

Это включает редактирование/etc/lightdm/lightdm.conf для создания экрана входа в систему (протестированный на Ubuntu 12.04), называют сценарий. Файл первоначально похож на это:

[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu

Добавление ниже строки заставляет его назвать данный сценарий все еще перед входом в систему:

display-setup-script=/usr/share/lightdmxrandr.sh

И эта другая строка заставляет его назвать данный сценарий после входа в систему:

session-setup-script=/usr/share/lightdmxrandr.sh

В этом примере lightdmxrandr.sh сценарий служит для автоматического распознавания разрешения экрана и внешнего монитора, если существует тот. Вот содержание сценария в моем случае (я адаптировался просто немного от того на ссылке):

#!/bin/bash

# connected external output
XCOM0=`xrandr -q | egrep '(HDMI1|VGA1|DP1) connected' | egrep -o '(HDMI1|VGA1|DP1)'`
# command to set external desktop
XCOM1=`xrandr --output LVDS1 --primary --auto --output $XCOM0 --auto --right-of LVDS1`
# command to set normal desktop
XCOM2=`xrandr --output LVDS1 --primary --auto`
# if the external monitor is connected, then we tell XRANDR to set up an extended desktop
if [ -n "$XCOM0" ] || [ ! "$XCOM0" = "" ]; then echo $XCOM1
# if the external monitor is disconnected, then we tell XRANDR to output only to the laptop screen
else echo $XCOM2
fi

exit 0;

Сохраните этот файл как lightdmxrand.sh Набор как исполняемый файл как это:

$ sudo chmod +x lightdmxrand.sh

Переместите его в/usr/share/каталог как это:

$ sudo mv lightdmxrand.sh /usr/share/lightdmxrandr.sh

Отредактируйте/etc/lightdm/lightdm.conf добавление данной строки к нему:

display-setup-script=/usr/share/lightdmxrandr.sh

Если Вы хотите, чтобы этот сценарий также бежал за входом в систему, добавьте:

session-setup-script=/usr/share/lightdmxrandr.sh

Надеюсь, что это работает на Вас!

4
ответ дан 23 October 2013 в 17:31

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

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