Редагування моєї відповіді, щоб спростити налаштування.
Встановіть autorandr для автоматизації розміщення екрана в xrandr, перейдіть останнє .deb з https://github.com/nalipaz/autorandr/release та запустіть:
dpkg -i [file]
Налаштування autorandr із збереженими макетами екрана
autorandr --save [docked|mobile|home|etc]
Наприклад, на своєму ноутбуці без будь-яких підключених моніторів я встановив арандр так, як мені хочеться, а потім побіг:
autorandr --save mobile
Потім підключив мій hdmi і переналаштував арандр, потім побіг:
autorandr --save docked
Після налаштування кожного з ваших макетів ви можете запустити (замінивши "мобільний" попереднім прізвищем, я використовував мобільний):
autorandr --default mobile
Тепер, коли авторndr все налаштований, ви можете автоматизувати процес, встановивши пакет, який опитатиме підключені дисплеї та працюватиме autorandr --change
при виявленні. Так, я знаю про udev, і ви можете встановити це, якщо він працює для вас, але в моєму тестуванні udev не працював для мого hdmi послідовно. Він працював лише 1 з кожні 20 штепсельних вилок / роз'єднань, а іноді й зовсім зупинявся.
Завантажте останню версію .deb тут: https://github.com/nalipaz/poll-xrandr/releases/, а потім встановіть за допомогою
dpkg -i [file]
Найімовірніше, що після завершення роботи запускається більше завдань autorandr --change
, autorandr дозволяє вставити ці команди у файл під назвою ~ / .autorandr / postswitch. Виконайте наступне:
cd ~/.autorandr/ && touch postswitch && chmod +x postswitch
Тепер відредагуйте файл postswitch, щоб мати щось подібне до наступного:
#!/bin/bash
if pidof conky > /dev/null 2>&1; then
killall conky
fi
(sleep 2s && xrandr-adjust-brightness restore -q) &
(sleep 2s && nitrogen --restore) &
(sleep 3s && conky -q) &
Крім того, ви, ймовірно, захочете додати авторів і опитувальник-xrandr до своїх стартапів, як-от такі дві команди:
autorandr --change &
poll-xrandr &
Відключіть чи підключіть до монітора та спостерігайте за чарами!
udevadm monitor --property
з терміналу і підключити монітор. На моїй картці я бачу подію, коли вона підключена. Можливо, ви зможете скористатися правилом + RUN в udev і деяким сценарієм bash, щоб отримати те, що ви хочете. Однак я не впевнений, як ви могли б реалізувати це на основі кожного користувача, використовуючи udev.