1

Приветствую.

Вопрос в следующем, под Mageia 4 управление яркостью монитора Fn+ работает из коробки. В Mageia 5, почему-то, не пашет (причём остальные сочетания работают, не работает только подсветка).
Куда копать вообще не представляю. В инете куча способов, но всё заканчивается отсутствием описанных в решениях файлов.
Может кто помочь в поиске отсутствующих привязок клавиш?

2

Обычно в граф. окружениях есть своё "управление питанием", которое прозрачно это реализует. Какое граф. окружение, TDE?

Fedora & GNOME

3 (2015-12-12 15:13:30 отредактировано Берс)

xxblx⇓ пишет:

Обычно в граф. окружениях есть своё "управление питанием", которое прозрачно это реализует. Какое граф. окружение, TDE?

TDE, в нём можно управлять яркостью наведя на иконку tdepoversave и покрутив колёсико мышки. Это не всегда удобно. Особенно когда в игрушку играешь и нужно быстро яркость поднять.

Тут есть другой нюанс. Что в Mageia 4, что в Mageia 5 при запуске системы и вывода окна grub с выбором загрузки осей я уже могу яркость регулировать. Тобишь управление яркостью на уровне железа есть.
Вот только потом Mageia 4 при загрузке TDE (или другой DE) в этот процесс не вмешивается, предлагая ещё одну регулировку яркости через tdepowersave. Это хорошо заметно, т.к. регулировка через кнопки Fn+ и через tdepowersave имеет разный шаг яркости.
А вот Mageia 5, почему-то, управление на уровне железа рубит при загрузке графической оболочки (проверял на разных DE), оставляя только, в моём случае, tdepowersave.

4

У меня нет ноута, по этому я не могу проверь у себя.

Навскидку, есть 2 варианта

Консоль
xrandr --output <устройство_вывода> --brightness 0.8

устройство искать в
Консоль
xrandr --current --verbose

Или, если есть что-то вроде /sys/class/backlight/acpi_video0/brightness, использовать команды вида

Консоль
echo 5 > /sys/class/backlight/acpi_video0/brightness

Если с командами будет работать, можно просто забиндить их на хоткеи по кодам клавиш (коды через xbindkeys узнать можно).

Fedora & GNOME

5 (2015-12-12 19:19:38 отредактировано Берс)

Spoiler

Консоль
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected 1920x1080+0+0 (0x49) normal (normal left inverted right x axis y axis) 382mm x 215mm
        Identifier: 0x43
        Timestamp:  8986
        Subpixel:   unknown
        Gamma:      1.0:1.0:1.0
        Brightness: 1.0
        Clones:
        CRTC:       0
        CRTCs:      0 1 2
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter:
        EDID:
                00ffffffffffff0030e4da0200000000
                00140104902615780af195a35552a126
                0f505400000001010101010101010101
                010101010101b03680b0703821403020
                35007ed710000018b03680b070382140
                302035007ed710000018000000fe004b
                36504a31803137335746310a00000000
                000041319e0000000002010a2020007a
        BACKLIGHT: 7
                range: (0, 100)
        Backlight: 7
                range: (0, 100)
        scaling mode: Full aspect
                supported: None, Full, Center, Full aspect
        Broadcast RGB: Automatic
                supported: Automatic, Full, Limited 16:235
        audio: auto
                supported: force-dvi, off, auto, on
  1920x1080 (0x49)  140.0MHz -HSync -VSync *current +preferred
        h: width  1920 start 1968 end 2000 total 2096 skew    0 clock   66.8KHz
        v: height 1080 start 1083 end 1088 total 1113           clock   60.0Hz
  1400x1050 (0xaf)  122.0MHz +HSync +VSync
        h: width  1400 start 1488 end 1640 total 1880 skew    0 clock   64.9KHz
        v: height 1050 start 1052 end 1064 total 1082           clock   60.0Hz
  1280x1024 (0xb0)  108.0MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock   64.0KHz
        v: height 1024 start 1025 end 1028 total 1066           clock   60.0Hz
  1280x960 (0xb1)  108.0MHz +HSync +VSync
        h: width  1280 start 1376 end 1488 total 1800 skew    0 clock   60.0KHz
        v: height  960 start  961 end  964 total 1000           clock   60.0Hz
  1024x768 (0xb2)   65.0MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock   48.4KHz
        v: height  768 start  771 end  777 total  806           clock   60.0Hz
  800x600 (0xb3)   40.0MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock   37.9KHz
        v: height  600 start  601 end  605 total  628           clock   60.3Hz
  800x600 (0xb4)   36.0MHz +HSync +VSync
        h: width   800 start  824 end  896 total 1024 skew    0 clock   35.2KHz
        v: height  600 start  601 end  603 total  625           clock   56.2Hz
  768x576 (0xb5)   63.1MHz
        h: width   768 start  800 end  960 total 1024 skew    0 clock   61.6KHz
        v: height  576 start  578 end  590 total  616           clock  100.0Hz
  768x576 (0xb6)   50.0MHz
        h: width   768 start  832 end  846 total 1000 skew    0 clock   50.0KHz
        v: height  576 start  590 end  595 total  630           clock   79.4Hz
  640x480 (0xb7)   25.2MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock   31.5KHz
        v: height  480 start  490 end  492 total  525           clock   59.9Hz
VGA1 disconnected (normal left inverted right x axis y axis)
        Identifier: 0x44
        Timestamp:  8986
        Subpixel:   unknown
        Clones:
        CRTCs:      0 1 2
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter:
HDMI1 disconnected (normal left inverted right x axis y axis)
        Identifier: 0x45
        Timestamp:  8986
        Subpixel:   unknown
        Clones:
        CRTCs:      0 1 2
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter:
        Broadcast RGB: Automatic
                supported: Automatic, Full, Limited 16:235
        audio: auto
                supported: force-dvi, off, auto, on
HDMI2 disconnected (normal left inverted right x axis y axis)
        Identifier: 0x46
        Timestamp:  8986
        Subpixel:   unknown
        Clones:
        CRTCs:      0 1 2
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter:
        Broadcast RGB: Automatic
                supported: Automatic, Full, Limited 16:235
        audio: auto
                supported: force-dvi, off, auto, on
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
        Identifier: 0x47
        Timestamp:  8986
        Subpixel:   no subpixels
        Clones:
        CRTCs:      3
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter:

И какое из них является устройством?

Ещё для информации:
В Mageia4 в папке /sys/class/backlight/ присутствуют следующие папки:
acpi_video0 - через неё идёт управление клавишами Fn+
intel_backlight - через неё идёт управление посредством tdepowersave

В Mageia5 в папке /sys/class/backlight/ присутствует только intel_backlight

6

Попробовать стоит eDP1 или Screen 0 видимо.

Fedora & GNOME

7

Тут всё завязано на ядро от Mageia5.
Я тут, ради эксперимента, поставил в неё последнее ядро от Mageia4 и кнопки управления яркостью заработали. Появилась папка acpi_video0 и всё стало замечательно. Так что нужно ядро компилировать с нужными параметрами. Если б мог, то попробовал бы, но я тут вообще дилетант.

Если не затруднит помогите повесить кнопки  Fn+ на папку intel_backlight.
Я так понимаю, что нужно какие-то скрипты делать и прописывать их куда-то?

8

Берс пишет:

Я тут, ради эксперимента, поставил в неё последнее ядро от Mageia4 и кнопки управления яркостью заработали. Появилась папка acpi_video0 и всё стало замечательно. Так что нужно ядро компилировать с нужными параметрами. Если б мог, то попробовал бы, но я тут вообще дилетант.

Раньше просто для ноутов отдельное ядро было в репозитории, а в магее 5 его дропнули.

Берс пишет:

Если не затруднит помогите повесить кнопки  Fn+ на папку intel_backlight.
Я так понимаю, что нужно какие-то скрипты делать и прописывать их куда-то?

А какие действия-то с intel_backlight проделывать надо? Скрипты я помогу сделать, но мне надо понимать что должно быть в скриптах.

Fedora & GNOME

9

xxblx⇓ пишет:

Раньше просто для ноутов отдельное ядро было в репозитории, а в магее 5 его дропнули.

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

xxblx⇓ пишет:

А какие действия-то с intel_backlight проделывать надо? Скрипты я помогу сделать, но мне надо понимать что должно быть в скриптах.

Начнём с того, что делают эти кнопки.
xrandr выдаёт следующее:

Для уменьшения яркости:
m:0x10 + c:232
Mod2 + XF86MonBrightnessDown

Для увеличения яркости:
m:0x10 + c:233
Mod2 + XF86MonBrightnessUp

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

10

Бинды на кнопки вешают средствами оконного менеджера. В KDE был Kwin, нужны настройки его аналога в TDE. Без этого, скорей всего, никак.
Где-то в настройках TDE наверняка должна быть возможность назначить новые горячие клавиши. Вот на них и нужно будет повесить скрипты.

Берс пишет:

Я думал привязать кнопки управления яркостью к tdepowersave

А как оно происходит-то? Команда tdepowersave с каким-то ключами вызывает? или как?

Fedora & GNOME

11

xxblx⇓ пишет:

В KDE был Kwin, нужны настройки его аналога в TDE. Без этого, скорей всего, никак.

Прошу прощения, вывалился немного из процесса.
В TDE есть trinity-twin. Наверное это тоже самое, что и kwin в KDE

xxblx⇓ пишет:

А как оно происходит-то? Команда tdepowersave с каким-то ключами вызывает? или как?

Понятия не имею. Наводишься на иконку tdepowersave в трее и крутишь колёсико мышки. Как оно при этом работает не понимаю. Все файлы перешерстил от этой программы, ничего даже близко намекающего как это работает.

12

Есть какой-нибудь у tdepowersave исполняемый файл вроде /usr/bin/tdepowersave? Выдает что-нибудь --help? Или может man tdepowersave что-то выдаст.

на

Консоль
xrandr --output eDP1 --brightness 0.8

реакция есть?

и что есть в /sys/class/backlight/intel_backlight ?

Fedora & GNOME

13

xxblx⇓ пишет:

Есть какой-нибудь у tdepowersave исполняемый файл вроде /usr/bin/tdepowersave?

есть, только в другом месте /opt/trinity/bin/tdepowersave
man и help не дают никакой информации

xxblx⇓ пишет:

xrandr --output eDP1 --brightness 0.8

У монитора понижается яркость и цвет немного в серый оттенок смещается. На белой поверхности очень заметно.

xxblx⇓ пишет:

и что есть в /sys/class/backlight/intel_backlight ?

папка device
папка power
папка subsystem
файл actual_brightness
файл bl_power
файл brightness
файл max_brightness
файл type
файл uevent


Я тут параллельно пытаюсь через acpi заставить регулировку заработать. Нашёл параметр для загрузки ядра acpi_osi=
После загрузки с таким параметром, появилась папка /sys/class/backlight/acpi_video0 и кнопки управления яркостью заработали, но перестала работать кнопка включения wi-fi. Ноут у меня на шнурке подключён, но иногда приходится уходить в другую комнату, так что без wi-fi кнопки совсем никак.

14

Берс пишет:

У монитора понижается яркость и цвет немного в серый оттенок смещается. На белой поверхности очень заметно.

xrandr можно забиндить на горячие клавиши.

Берс пишет:

файл brightness

Консоль
echo 5 > /sys/class/backlight/intel_backlight/brightness

работает?

Берс пишет:

Нашёл параметр для загрузки ядра acpi_osi=

Без значения? Кто-то acpi_osi=Linux, кто-то acpi_osi=!Linux.

Fedora & GNOME

15

xxblx⇓ пишет:

Без значения? Кто-то acpi_osi=Linux, кто-то acpi_osi=!Linux.

Почему-то acpi_video0 появляется только при значении acpi_osi=
acpi_osi=Linux, acpi_osi=!Linux, acpi_osi="!Windows 2012" не работают. Вообще ничего не происходит.

xxblx⇓ пишет:

echo 5 > /sys/class/backlight/intel_backlight/brightness

Работает, только я другое значение задал, а то 5 это слишком мало. Там максимальное значение 5273.
Плюс срабатывает только от рута, что не удивительно.

16

Берс пишет:

Работает, только я другое значение задал, а то 5 это слишком мало. Там максимальное значение 5273.
Плюс срабатывает только от рута, что не удивительно.

Сделать чтобы отрабатывало от пользователя несложно. В целом этот вариант устраивает?

Fedora & GNOME

17

xxblx⇓ пишет:

Сделать чтобы отрабатывало от пользователя несложно. В целом этот вариант устраивает?

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

18

Создать скрипт /usr/local/bin/brightness_control
[console=root]touch /usr/local/bin/brightness_control[/console]

#!/bin/bash

brightness_file="/sys/class/backlight/intel_backlight/brightness"
step=100

function set_brightness() {

    brightness=`cat "${brightness_file}"`
    let "brightness ${action} ${step}"
    echo "${brightness}" > "${brightness_file}"

}

action="+="

while getopts "s" opt
do
    case $opt in
        s) action="-="
            ;;
        *) usage
            exit 1
            ;;
        esac
done

set_brightness

[console=root]chmod +x /usr/local/bin/brightness_control[/console]

Установить sudo и в конец /etc/sudoers добавить

твой_пользователь ALL=NOPASSWD:/usr/local/bin/brightness_control

Дальше проверить от пользователя

Консоль
sudo brightness_control
sudo brightness_control -s

Первая должна увеличивать яркость, вторая снижать.

Если всё будет работать, можно назначать горячие клавиши. Все оконные менеджеры это, как правило, умеют. И TDE'шный не должен бы быть исключением.

Fedora & GNOME
Спасибо сказали: Берс1

19 (2015-12-19 22:28:01 отредактировано Берс)

xxblx⇓ пишет:

Создать скрипт /usr/local/bin/brightness_control

Попробую прописать.

Вопрос из разряда мыслей вслух. А нельзя ли, в качестве упрощения задачи, создать некий скрипт, который при загрузке системы создавал папку /sys/class/backlight/acpi_video0 которая бы имела символьную ссылку на папку /sys/class/backlight/intel_backlight?
Мне кажется, что кнопки бы сразу автоматом подхватываться начали, т.к.им для работы папка acpi_video0 нужна.

20

Удалось решить проблему без скрипта.
Оказалось всё намного проще, нужно было в параметры загрузки ядра прописать video.use_native_backlight=0 (везде рекомендовали video.use_native_backlight=1 прописывать).
Кнопки яркости заработали, кнопка wi-fi тоже работает.

xxblx
Спасибо за помощь.