LINUX.ORG.RU

Автоопределение второго монитора при всовывании кабеля

 ,


0

1

Как это работает сейчас:

Всовываю HDMI-кабель в ноутбук, захожу в настройки бубунты, выбираю Displays - подключенный монитор определяется и оживает.

Как хотелось бы:

Всовываю HDMI-кабель в ноутбук - подключенный монитор определяется и оживает.

Почему нет автоплага из коробки? Можно это решить каким-нибудь понятным скриптом из двух строчек?

у меня в 12.10/12.04 - работает. Только вот звук сам не переключается на hdmi, приходится лезть в настройки. А у вас?

emissar ★★
()
Ответ на: комментарий от emissar

У меня в мониторе динамиков нет. И как это у вас получается? Может дело в том, что у меня кабель HDMI->DVI? Но винда сама узнает, что кабель воткнут, значит сигнал какой-то приходит.

Dirty_Diana
() автор топика
Ответ на: комментарий от Dirty_Diana

Спросонья не вник в текст. Я к телевизору иногда подключаю, а не к монитору.

Может дело в том, что у меня кабель HDMI->DVI?

Вот этого уже сказать не могу.

emissar ★★
()

Создаете правило:

/etc/udev/rules.d/10-local.rules

KERNEL=="card0", ACTION=="change", ENV{XAUTHORITY}="/home/<user>/.Xauthority", ENV{DISPLAY}=":0.0", RUN+="/path/to/hdmi-script.sh"

и скрипт hdmi-script.sh с нужной настройкой xrandr

#!/bin/bash

if [[ $(< /sys/class/drm/card0-HDMI-A-1/status) = "connected" ]]; then
    xrandr --output HDMI1 --mode "1680x1050" --above LVDS1
else
    xrandr --auto
fi

после подключении hdmi кабеля xrandr автоматически настраивает нужную конфигурацию и при отключении соотв.

science ★★☆
()
Последнее исправление: science (всего исправлений: 2)
Ответ на: комментарий от science

Спасибо, отчасти заработало. Однако срабатывает не при каждом втыке. Иногда просто циклически мигают оба экрана, второй не подключается, хотя в /sys/class/drm/card0-HDMI-A-1/status содержится «connected».

Что бы это значило?

Dirty_Diana
() автор топика
Ответ на: комментарий от Dirty_Diana

И если после неудачной попытки вручную запустить скрипт, то все нормально. Но хочется же автоматизации.

Dirty_Diana
() автор топика
Ответ на: комментарий от Dirty_Diana

Возможно какой-то убунтовский костыль борется с включаемыми настройками, хотя если срабатывает вообще - то странно.

У меня на всех машинах, где используется эта настройка - работает без проблем.

Попробуйте при отключении кабеля добавить явное отключение hdmi дисплея и паузу:

#!/bin/bash

if [[ $(< /sys/class/drm/card0-HDMI-A-1/status) = "connected" ]]; then
    xrandr --output HDMI1 --mode "1680x1050" --above LVDS1
else
    xrandr --output HDMI1 --off
    sleep 2
    xrandr --auto
fi
science ★★☆
()
Ответ на: комментарий от science

Я тут проверила, скрипт-то автоматически не выполняется. Добавила mkdir в разные места - директории не появляются. Значит, скрипт не того. Но один раз точно сработало. Совсем странно.

Может как-то по-другому проверять подключение?

Dirty_Diana
() автор топика
Ответ на: комментарий от Dirty_Diana

В смысле не того? Скрипт исполняемый?

chmod +x hdmi-script.sh

Может как-то по-другому проверять подключение?

это самый универсальный и надежный способ, лично я других не знаю.

science ★★☆
()
Ответ на: комментарий от science

Да исполняемый он. Просто не исполняется при втыкивании кабеля. И при вытыкивании, по всей видимости. Хотя первый раз получилось. Я совсем запуталась.

Dirty_Diana
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.