У меня есть kde настольная среда, и кнопки Fn + F3 / F4 не могут изменить яркость клавиатуры.
Я также присваиваю другие ключи к яркости клавиатуры увеличения или уменьшения в глобальном меню ярлыков, но не работают снова.
Таким образом, я пытаюсь изменить уровень яркости этой командой:
echo 3 | sudo tee /sys/class/leds/asus::kbd_backlight/brightness
И изменение яркости клавиатуры успешно.
Но kde использует dbus для изменения яркости клавиатуры, Таким образом, я пытаюсь использовать эту команду (который может быть найден в Arch Wiki):
dbus-send --type=method_call --print-reply=literal --system --dest='org.freedesktop.UPower' '/org/freedesktop/UPower/KbdBacklight' 'org.freedesktop.UPower.KbdBacklight.SetBrightness' int32:2
Но яркость не изменяется вообще, и я получил эту ошибку:
Error org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.UPower.KbdBacklight” on object at path /org/freedesktop/UPower/KbdBacklight
Таким образом, я пробую разрешение изменения того файла:
sudo chmod 666 /sys/class/leds/asus::kbd_backlight/brightness
But я не могу изменить яркость клавиатуры Fn + F3 / F4 или dbus снова.
Дополнительная информация:
Fn + F3 или комбинации ключей F4 работают хорошо, и я вижу, что сигнал отправляет хорошо:
$ xev | sed -n 's/^.*state \([0-9].*\), keycode *\([0-9]\+\) *\(.*\), .*$/keycode \2 = \3, state = \1/p'
keycode 237 = (keysym 0x1008ff06, XF86KbdBrightnessDown), state = 0x10
keycode 237 = (keysym 0x1008ff06, XF86KbdBrightnessDown), state = 0x10
keycode 238 = (keysym 0x1008ff05, XF86KbdBrightnessUp), state = 0x10
keycode 238 = (keysym 0x1008ff05, XF86KbdBrightnessUp), state = 0x10
Таким образом, как я могу изменить яркость клавиатуры с dbus?
Как Вы сказали, Вы используете 0.99.8-2
версия upower
пакет.
В последнем обновлении upower
многие пользователи распределения, как нестабильный Debian, Arch Linux, космическая Ubuntu, встретились с этой проблемой.
Например, эта проблема связана Ваш, открылся в upower
Страница GitLab.
Согласно той ссылке, этот метод должен быть, решают Вашу проблему (который решил мою проблему на debian sid):
1. Сделайте конфигурацию переопределения для upower
сервис:
sudo systemctl edit upower.service
2. Запишите эти строки в нем:
[Service]
ProtectKernelTunables=false
3. Проверьте изменения этой командой:
systemctl show upower.service | grep ProtectKernelTunables
Если Вы видите этот вывод, Вы сделали его правильно:
ProtectKernelTunables=no
Для получения дополнительной информации о ProtectKernelTunables=
параметр, Вы видите эту ссылку.
4. Перезагрузите свою систему (также можно перезапустить upower
и dbus
сервисы, но его лучшая система перезагрузки для перезапуска всех сервисов полностью).
5. Проверьте свою подсветку клавиатуры. Теперь Вы не должны видеть somethigs как это в выводе journalctl | grep -i upowerd
команда:
upowerd[2907]: up_kbd_backlight_brightness_read: assertion 'fd >= 0' failed
И Ваша подсветка клавиатуры должна быть изменением с сочетаниями клавиш Fn + F3 и Fn + F4 или командой dbus:
dbus-send --type=method_call --print-reply=literal --system --dest='org.freedesktop.UPower' '/org/freedesktop/UPower/KbdBacklight' 'org.freedesktop.UPower.KbdBacklight.SetBrightness' int32:3