Если у вас ноутбук с внешним монитором и вы переключаетесь на GNOME из KDE, то быстро замечаете: экран ноутбука по яркости регулируется, а внешний монитор по HDMI или DisplayPort нет. В KDE в трее есть ползунки и для встроенного, и для внешнего мониторов, тогда как в GNOME о внешних мониторах в интерфейсе никаких упоминаний. Остаются кнопки на самом мониторе и его экранное меню, которые уступают в удобстве и редко используются.
Как пользователь GNOME, я долгое время решал эту проблему программно — расширением, которое рисовало полупрозрачный чёрный слой поверх картинки через xrandr. В сентябре 2025, после полного принудительного перехода GNOME на Wayland, мой способ перестал работать, и почти год я ночью закрывал монитор с YouTube куском полупрозрачной ткани. Вставать с постели, попадать в темноте, с песком в глазах, по неподсвеченным кнопкам на спине монитора мне не хотелось. Вникать в непрозрачную и очень специфическую нишу решений над протоколом DDC/CI — тогда тоже. Тем более, что спецификации в интернете указывали отсутствие поддержки DDC/CI моим монитором (это было неправдой).
Недавно поставил Fedora с KDE на второй диск и внезапно обнаружил, что там мой внешний монитор регулируется из коробки.
Короткий ответ
Если вам нужно просто получить ползунок яркости внешнего монитора в GNOME 46–51:
-
Установите
ddcutil-service(команды для Debian/Ubuntu, Arch, Fedora, openSUSE и сборка из исходников есть в README расширения). -
Установите Multi Display Adjustment с extensions.gnome.org.
Дальше в статье разбираюсь, почему именно так, какие есть альтернативы и чем они отличаются.
Сразу раскрою: я контрибьютор этого расширения. С 3 октября 2026 года в него влиты 14 pull моих request’ов. Но сначала я был обычным пользователем, который искал расширение для себя и сравнивал. Сравнение ниже построено так, чтобы его можно было проверить: одинаковые критерии, скриншоты по одной схеме, ссылки на исходники.
Почему в KDE это есть, а в GNOME нет
В KDE за яркость отвечает системный сервис PowerDevil, который работает с внешними мониторами через библиотеку libddcutil. Отдельный ползунок для каждого дисплея появился в Plasma 6.2 (рассказ разработчика).
В GNOME такой функции нет, и насколько я знаю, в планах её тоже нет. Моя интерпретация: GNOME Shell стремится к минимуму внешних зависимостей, а KDE устроен как набор модулей, где ещё одна зависимость не проблема.
У встроенного решения есть и цена. Внедрение DDC/CI в KDE шло непросто, сбои ddcutil в KDE неоднократно приводили к проблемам: зависание после обновления ddcutil до 3.0.0, мерцание монитора при старте PowerDevil. Для таких случаев в PowerDevil была создана специальная переменная окружения POWERDEVIL_NO_DDCUTIL=1, которая отключает работу с ddcutil (README PowerDevil). С расширением GNOME проще: его можно выключить в приложении «Расширения», а если gnome-shell падает вскоре после загрузки расширений, специальный сервис сам отключает пользовательские расширения (коммит в gnome-shell).
Прочие Linux окружения
-
Cinnamon (Linux Mint): Из коробки ползунок не работает с внешними мониторами. Решается установкой официального апплета DDC/CI Monitor Brightness из настроек. Концептуально это адаптация идей KDE в Cinnamon — трей, меню, ползунки с названиями мониторов, работа через чистый
ddcutil. Технологически — похоже на обкатанные в GNOME-расширениях архитектурные решения 2021-2024 годов. В описании и скриншотах есть признаки того, что тестировалась работа только с одним внешним монитором, и не ясно, как оно ведёт себя с несколькими. Тем не менее, у этого окружения есть своё решение. -
XFCE: Штатный плагин управления питанием не умеет управлять внешними дисплеями. Можно использовать
xrandr(программно) либоddcutil(аппаратно), но оба из терминала либо через внешние скрипты. -
COSMIC (Pop!_OS): Новое окружение на Wayland. Из коробки поддерживает DDC/CI с мая 2026 (1.0.14), что ставит его наравне с KDE в этом вопросе. До этого пользователи выкручились так же, как везде.
Прочие операционные системы
В macOS система «из коробки» не умеет регулировать яркость не-Apple внешних мониторов, нужно использовать физические кнопки. Это официальная позиция Apple, и их бизнес-логика вполне читаема. Энтузиасты решают это утилитами MonitorControl или BetterDisplay — обе работают через тот же протокол DDC/CI.
Windows по умолчанию так же не умеет отправлять управляющие команды монитору по кабелю. Существуют трей-утилиты Twinkle Tray и Monitorian, а также Power Display из состава Microsoft PowerToys (тоже поверх DDC/CI, но отдельной установкой).
Как это работает
Внешние мониторы (поддерживающие это) управляются по протоколу DDC/CI: команды идут по I²C-каналу прямо в кабеле. Яркость это параметр VCP 0x10. На Linux этим занимается утилита ddcutil. Проверить, видит ли она ваши мониторы:
ddcutil detectddcutil getvcp 10 # текущая яркостьddcutil setvcp 10 50 # поставить 50%
Если это работает от обычного пользователя, дальше нужно только расширение. Если работает только с sudo, см. права доступа к I²C.
Расширения общаются с монитором двумя способами:
|
|
Команда |
|
|---|---|---|
|
Как работает |
Новый процесс на каждое изменение |
Фоновый сервис, общение по D-Bus |
|
Опрос шины I²C |
Заново при каждом запуске |
Один раз при старте |
|
Задержка и накладные расходы |
Выше, зависит от монитора и числа шагов |
Ниже архитектурно |
|
Цена |
Нет лишних зависимостей |
Нужно поставить ещё один пакет |
Я не замерял задержки объективно, но разница архитектурная и человеку сразу заметная: для ползунка, который дёргает значение десятки раз в секунду, постоянный сервис подходит лучше, чем “грязный” спавн нового процесса по CLI на каждый шаг.
Что я хотел от расширения
Когда я начал искать, у меня сложился список критериев. Ни одно расширение не закрывало его целиком.
-
Отзывчивость (лёгкий бэкенд). Не запускать тяжёлый процесс на каждый шаг ползунка.
-
Нативный вид. Ползунок там, где его ждёшь, выглядящий как родной, без чужеродных значков и обрезанных названий. Отсутствие ощущения “колхоза”.
-
Живой проект. Поддержка текущих версий GNOME, ответы на issues.
-
Минимум настроек. То, что можно решить за пользователя, должно быть разумным умолчанием, а не переключателем, который нужно гуглить.
-
Отсутствие раздутости. Расширение делает одно дело. Проект понимает свои границы и держит скоуп, успешно обслуживается при небольших ресурсах и вовремя адаптируется под новые версии GNOME. Как можно менее инвазивные и хрупкие архитектурные решения. Поставил и забыл.
-
Понятная документация. Чтобы настроить его, не нужно быть инженером.
-
Мелочи, из-за которых страдаешь на практике: поэкранный индикатор уровня и защита от 0%, при котором некоторые мониторы гасят подсветку и потом тяжело вернуть.
Что есть
Я сравнивал четыре расширения. Скриншоты одинаковые для всех: слева окно настроек (если оно есть), справа панель Quick Settings.
(Quick Settings — что это? См. после сводной таблицы)
Набор кандидатов сформировался естественно — по находимости, актуальности для свежих версий GNOME, хотя бы минимальным признакам жизни у проекта, самобытности (минимальной “форковости”, близости к апстриму).
Сводная таблица
|
|
Brightness control using ddcutil |
Adjust Display Brightness 2 |
Display Adjustment |
Multi Display Adjustment |
|---|---|---|---|---|
|
Бэкенд |
команда |
команда |
|
|
|
Где ползунок |
отдельный значок в верхней панели по умолчанию, либо среди системных ползунков |
внутри плитки, значок в верхней панели всегда |
все ползунки всырую без группировки высыпаются внизу Quick Settings |
мимикрия под системный ползунок сразу под ним либо плитка «Displays» |
|
Название плитки |
нет |
«Display Br…» обрезано |
нет |
«Displays» |
|
Экранный индикатор (OSD) |
опция, выключена по умолчанию, показывает уровень на всех мониторах сразу |
опция «Show On-screen Feedback» |
нет |
есть, на том экране, который регулируют прямо сейчас |
|
Настройки |
много, почти без пояснений, многие предпочтительные по умолчанию выключены |
много, с пояснениями |
нет |
пять, умолчания продуманы |
|
Контраст |
нет |
есть, RGB тоже |
есть, всегда, не скрыть; 2 ползунка на монитор безопционально |
есть в плиточном режиме, можно скрыть |
|
Горячие клавиши |
есть |
есть, колесо мыши тоже |
нет |
нет собственных (отложены); колесо и стрелки работают штатно, как на любом ползунке GNOME |
|
Откуда ставить |
extensions.gnome.org |
extensions.gnome.org, иногда локально через cloned-repo/deploy.sh |
extensions.gnome.org |
extensions.gnome.org |
|
Нужен |
нет |
нет |
да |
да |
|
Активность |
переписан в ноябре 2025, поддержка GNOME 50 с апреля 2026; открыто 14 issues и 8 PR с неопределенным ETA* |
1 открытый issue (с 2023 года), 10 MR за всю историю |
0 открытых issues, 6 MR за всю историю; в 2026 году по истории коммитов только объявление поддержки GNOME 50 и 51 (последняя версия 0.0.9) |
6 релизов с 2 октября, 1.5.0 (17 октября); 38 PR, закрыты, включая 14 моих |
|
Загрузки на EGO |
119к |
35 |
21к |
251 |
(Данные на 22.10.2026)
Остальные (десятки по “ddcutil”) являются в основном клонами описанных. Это я и имел в виду под “близостью к апстриму”.
Интересным из них показалось “Control monitor brightness and volume with ddcutil”. Хоть основанность на “Brightness control using ddcutil” и видна в названии, автор (Nei) проделал заметную собственную работу: мимикрировал под GNOME на уровне иконок и позиционирования, добавил регулировку звука мониторов — не просто форкнул чужой код с минимальными изменениями
и ушёл в закат. Это похвально, но на GNOME 50/51 расширение уже не поддерживается.
Далее идут индивидуальные описания каждого расширения с единообразными скриншотами в ванильном GNOME.
Скриншоты расширений сделаны в их уже настроенном под меня состоянии в результате тестов. Восстанавливать дефолты и всё переснимать было бы слишком накладно. Сами окна настроек с доступными параметрами в любом случае приложены тоже. Но это скорее даже добавляет очков каждому, т.к. лишние или чужеродно выглядящие в GNOME элементы в них уже были выключены там, где они это предусматривают.
Brightness control using ddcutil
Страница на EGO и GitHub. Самое известное. Работает, но вызывает обычный ddcutil на каждое изменение, что приводит к заметным задержкам реакции монитора из-за оверхеда. Из коробки добавляет отдельный значок в верхнюю панель, поэтому стандартный вид нужно сначала перенастраивать: переключить размещение на системное меню, выключить лишние ползунки. Настройки почти без описаний, и понять их без опыта трудно.
|
Настройки |
Quick Settings |
|---|---|
|
|
|
Индикатор уровня есть (Show OSD), но он выключен по умолчанию и, судя по коду, рисуется на всех мониторах сразу, а не на том, который регулируется. Вживую перепроверить не могу, т.к. эта его функция перестала у меня работать по неясным причинам (систему с тех пор не обновлял). Открыл issue, ответ был, но ясности нет и срок неопределён.
Проект в режиме поддержки: в ноябре 2025 был большой рефакторинг, после него только поддержка GNOME 50.
Adjust Display Brightness 2
GitLab, недавно прошёл ревью и вышел на EGO. Сначала удалось установить через EGO, но в дальнейшем (перелогин — делался) он перестал устанавливаться оттуда. Для перетестов и пересъёмов скриншотов мне пришлось ставить его через deploy.sh из папки склонированного репозитория.
Больше всего функций: контраст, RGB, горячие клавиши, колесо мыши, выбор раскладки ползунков, раздел диагностики. Настройки хорошо описаны. В репозитории хорошая, обновляемая документация, совсем недавно актуализировалась и переписывалась.
|
Настройки |
Quick Settings |
|---|---|
|
|
|
Минусы с точки зрения вида, умолчаний и настраиваемости: ползунок спрятан в плитке, название которой обрезается, а значок в верхней панели виден всегда. Тоже вызывает обычный ddcutil, отзывчивость воспринимается ниже, чем у «Brightness control using ddcutil», из-за того, что управляющий сигнал к монитору уходит только при отжиме ЛКМ по ползунку. OSD (наэкранный индикатор) имеет выбивающийся из GNOME (цвет, вёрстка, шрифт) вид. Ползунки в плитке выглядят аляповато.
Display Adjustment
Страница на EGO и GitLab. Использует ddcutil-service, ставится в один клик. Два ползунка, яркость и контраст, добавляются внизу панели. Настроек нет: на скриншоте слева окно с информацией о расширении, и всё. Контраст нельзя скрыть, подписей у ползунков нет. Иконка контраста подобрана неудачная; пусть я и понимаю, как он к этому пришёл.
|
«Настройки» (окно информации) |
Quick Settings |
|---|---|
|
|
|
Multi Display Adjustment
Страница на EGO и GitHub. Основано на Display Adjustment (оригинальный автор указан в README и CHANGELOG), автор развития Samuel Cecilio. Использует ddcutil-service. Название монитора как в системных настройках, значение в процентах, поэкранный индикатор. Плитка называется просто «Displays», без подзаголовка, чтобы длинное название плитки и/или монитора не обрезалось.
Размещение выбирается: ползунки среди системных, рядом с ползунком яркости GNOME (выше или ниже него) либо плитка «Displays». Настроек пять: тип размещения, положение, минимум яркости 1%, контрастные ползунки, общий ползунок для всех внешних мониторов. Окно настроек продумано: все пункты имеют описания и меняют своя значения, доступность и описания в зависимости от значений и доступности пунктов, от которых они зависят, с целью сделать UX самообъясняющимся.
|
Настройки |
Среди системных ползунков |
Плитка |
|---|---|---|
|
|
|
|
Чего в нём нет:
-
Собственных горячих клавиш. Однако, благодаря политике минимальной инвазивности, они не настолько сильно нужны. Нативное поведение GNOME распространяется и на элементы расширения: колесо при наведении крутит значение по 2 единицы, а стрелки клавиатуры меняют его на 10. Это работает и в режиме плитки, и среди системных ползунков.
-
Подробной RGB-регулировки.
-
Контраст только в режиме плитки.
-
Как и у остальных, нужно установить бекэнд-зависимость, тут это
ddcutil-service: для Arch (AUR) и openSUSE есть пакеты, для Fedora есть COPR (его собираю я), для Ubuntu/Debian есть CI-пакеты стороннего автора. -
Цели сделать “швейцарский нож”. Добавки идут по веским причинам, если могут быть протестированы на имеющемся железе и если не нарушают границы проекта.
Не исключаю, что читателя может заинтересовать и другое расширение из представленных, и это тоже okay — мне будет достаточно мысли, что моя поисковая, аналитическая и сравнительная работа кому-то пригодилась.
Как я стал контрибьютором
Когда я сравнивал, меня зацепил не столько набор функций, сколько то, где лежит код — это влияет на сложность донесения своих предложений до автора. Два из четырёх расширений на GitLab (и такой процент по моему опыту редкость), два на GitHub: одно из них в режиме поддержки, а Multi Display Adjustment молодое, с живым репозиторием, прямо открытый к вкладам, с ближайшим к моему видением (конситентный дизайн, минималистичность). Для меня это был сигнал открытости: на GitHub проще написать issue и отправить PR, а активная разработка говорит, что на них ответят.
Почему я не сделал свой форк? Я не хотел создавать «ещё одно» решение. Эта ниша “в кризисе” именно из-за распыления усилий, когда работа не соединяется, а дробится и дублируется. Мне захотелось взять чужое готовое и довести его до нужного мне состояния, чтобы оно в моих глазах превзошло остальных; помочь проекту с брендингом, UX и инструкциями. Плюс это тренировка работы в команде с людьми из разных часовых поясов.
Я написал два issue. #2 просил минимум яркости 1%, чтобы монитор не гас в ноль. Через три дня это вышло в версии 1.2.0. #8 просил экранный индикатор при регулировке, и он вошёл в 1.3.0 в тот же день, 2 октября. После такого я решил не просто пользоваться, а помогать.
Дальше работал слоями, по возможности один PR на одну идею:
-
#16: вынес чтение и запись яркости и контраста из пункта меню в отдельный класс
VcpController, чтобы им мог пользоваться другой виджет. Поведение не менялось. -
#17: ползунки среди системных, без плитки (режим Inline). #18: выше или ниже ползунка GNOME. #19: минимум 1% сделан опцией, настройки приведены в порядок.
-
Всё это вошло в версию 1.4.0 (7 октября).
Потом оформление и документация: новый скриншот в стандартном виде GNOME (#28), короткое описание списком (#30), плитка показывает только заголовок (#31), пошаговая инструкция по установке (#34), уведомление с кнопкой «Open instructions», если не установлен ddcutil-service (#36), пакет для Fedora, чтоб стали покрыты все большие дистрибутивы (#38).
Последний слой инструменты для разработки: разделение на src/ и docs/ (#39), эмулированные мониторы для отладки без железа (#40), планы ручного тестирования для каждой версии GNOME (#44). Поддержку GNOME 51 добавил сам мейнтейнер, результат 1.5.0 от 17 октября.
Итого: 14 влитых PR, возможно, сделаю ещё несколько, стали приходить новые контрибьюторы. Скачиваний на EGO было 45 за 2 месяца к концу сентября, сейчас более 250 (на 22 октября 243), темп выглядит ускорившимся.
Итог
Что я считаю законченным для первого этапа: плитка или родной ползунок на выбор, названия мониторов, экранный индикатор, защита от 0%, документация для основных дистрибутивов, тест-планы. Чего нет, перечислено выше, и это честный список.
Если нужен ползунок яркости внешнего монитора в GNOME 46–51:
Если что-то не работает или хотите рассмотрения новой функции, пишите issue в репозиторий.
ссылка на оригинал статьи https://habr.com/ru/articles/1098654/