Автор Тема: Сохранение яркости экрана ноутбука  (Прочитано 2612 раз)

Оффлайн DmX

  • Начинающий
  • *
  • Сообщений: 14
    • Email
Кратко о себе:
OS: ALT Workstation 10.1 (Autolycus) x86_64
Host: 82K0 Legion 5 17ACH6
Kernel: 5.10.145-std-def-alt1
Uptime: 12 mins
Packages: 1993 (rpm)
Shell: bash 4.4.23
Resolution: 1920x1080
DE: GNOME 40.10
WM: Mutter
WM Theme: Adwaita
Theme: Adwaita [GTK2/3]
Icons: Adwaita [GTK2/3]
Terminal: gnome-terminal
CPU: AMD Ryzen 7 5800H with Radeon Graphics (16) @ 3.200GHz
GPU: NVIDIA GeForce RTX 3050 Mobile
Memory: 1461MiB / 15921MiB

После чистой установки системы на ноутбук, полного обновления системы и установки проприетарного драйвера nvidia (по Вики) не работала регулировка яркости экрана (и кнопками, и из-под настроек Gnome).
Было так:
inxi -Gx
Graphics:  Device-1: NVIDIA GA107BM [GeForce RTX 3050 Mobile] vendor: Lenovo driver: nvidia v: 515.65.01 bus-ID: 01:00.0
           Device-2: IMC Networks Integrated Camera type: USB driver: uvcvideo bus-ID: 1-3:3
           Display: server: X.Org 1.20.14 driver: loaded: nvidia note: n/a (using device driver) unloaded: fbdev
           resolution: 1920x1080
           OpenGL: renderer: llvmpipe (LLVM 11.0.1 256 bits) v: 4.5 Mesa 22.0.4 direct render: Yes

ls /sys/class/backlight
acpi_video0

Помог совет в соседней теме:
rm /etc/X11/xorg.conf
Стало так:
inxi -Gx
Graphics:  Device-1: NVIDIA GA107BM [GeForce RTX 3050 Mobile] vendor: Lenovo driver: nvidia v: 515.65.01 bus-ID: 01:00.0
           Device-2: IMC Networks Integrated Camera type: USB driver: uvcvideo bus-ID: 1-3:3
           Display: x11 server: X.Org 1.20.14 driver: loaded: nvidia unloaded: fbdev,modesetting,nouveau,vesa
           resolution: 1920x1080~144Hz
           OpenGL: renderer: NVIDIA GeForce RTX 3050 Laptop GPU/PCIe/SSE2 v: 4.6.0 NVIDIA 515.65.01 direct render: Yes

ls /sys/class/backlight/
nvidia_0

Теперь яркость регулируется, но не сохраняется (слетает при перезагрузке).
На этом же ноутбуке установлена Ubuntu — все работает как надо, значит что-то в настройках системы.
Состояние яркости сервис должен запоминать в /var/lib/systemd/backlight/pci-0000:01:00.0:backlight:nvidia_0
В Ubuntu так и происходит, а в AltLinux — нет.
Очевидно, сервис продолжает сохранять значение яркости для acpi_video0:
ls /var/lib/systemd/backlight
pci-0000:01:00.0:backlight:acpi_video0

Хотя само устройство /sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/backlight/nvidia_0 в наличии.
Подскажите, как решить проблему сохранения регулировки?

Да, всякие acpi_backlight= и т.п. я попробовал, конечно, это не работает.

— — —

Рабочее решение — создать:
touch /var/lib/systemd/backlight/pci-0000:01:00.0:backlight:nvidia_0И прописать нужную яркость.
И все же это неправильная ситуация.
« Последнее редактирование: 28.10.2022 15:55:04 от DmX »

Оффлайн DmX

  • Начинающий
  • *
  • Сообщений: 14
    • Email
Попробовал https://mirror.yandex.ru/altlinux-starterkits/x86_64/release/alt-p10-gnome-20230910-x86_64.iso

cat /etc/os-release
...
PRETTY_NAME="ALT Starterkit 10 (Hypericum)"

После обновления и установки драйвера:

uname -r
6.1.54-un-def-alt1
inxi -Gx
Graphics:
  Device-1: NVIDIA GA107BM [GeForce RTX 3050 Mobile] vendor: Lenovo
  driver: nvidia v: 535.86.05 bus-ID: 01:00.0
  Device-2: IMC Networks Integrated Camera type: USB driver: uvcvideo
  bus-ID: 1-3:3
  Display: x11 server: X.Org 1.20.14 driver: loaded: nvidia
  unloaded: fbdev,modesetting,nouveau,vesa resolution: 1920x1080~144Hz
  OpenGL: renderer: NVIDIA GeForce RTX 3050 Laptop GPU/PCIe/SSE2
  v: 4.6.0 NVIDIA 535.86.05 direct render: Yes

Ничего не изменилось, уровень яркости не запоминает.
В Ubuntu, Fedora, Debian, CentOS и т.п. всё работает вообще без каких-либо телодвижений.
Может кто-то что-то посоветует?

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Ничего не изменилось, уровень яркости не запоминает.

В xfce тоже не запоминает.

Может кто-то что-то посоветует?

Предпочтительный уровень яркости по-умолчанию, можно установить через:
/etc/sysfs.conf
Пакет:
sysfsutils
Примеры установки в секции Examples /etc/sysfs.conf

В xfce, управление яркостью, через:
# rpm -qf /usr/share/polkit-1/actions/org.xfce.power.policy
xfce4-power-manager-4.18.2-alt1.x86_64

для всех активных пользователей:
# sed -n '9,67p' /usr/share/polkit-1/actions/org.xfce.power.policy
  <vendor>XFCE Power Manager</vendor>
  <vendor_url>http://goodies.xfce.org/projects/applications/xfce4-power-manager</vendor_url>
  <icon_name>battery</icon_name>

  <action id="org.xfce.power.backlight-helper">
   
    <description>Modify the laptop display brightness</description>
...
    <description xml:lang="ru">Изменение яркости дисплея ноутбука</description>
...
    <message>Authentication is required to modify the laptop display brightness</message>
...
    <message xml:lang="ru">Для изменения яркости дисплея ноутбука требуется аутентификация</message>
...
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
    <annotate key="org.freedesktop.policykit.exec.path">/usr/sbin/xfpm-power-backlight-helper</annotate>
  </action>

Установка яркости дисплея ноутбука, хардкорно, вручную (на примере графики интел):
$ ls -l /sys/class/backlight/intel_backlight/ | grep brigh
-r--r--r-- 1 root root 4096 окт  1 20:47 actual_brightness
-rw-r--r-- 1 root root 4096 сен 23 13:18 brightness
-r--r--r-- 1 root root 4096 сен 23 13:18 max_brightness

Оффлайн DmX

  • Начинающий
  • *
  • Сообщений: 14
    • Email
В xfce тоже не запоминает.
Понятно. Неправильно это всё, конечно.

Установка яркости дисплея ноутбука, хардкорно, вручную (на примере графики интел):
Вручную это выше я писал для nvidia:

touch /var/lib/systemd/backlight/pci-0000:01:00.0:backlight:nvidia_0

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Ещё один из методов установки яркости по-умолчанию дисплея ноутбука с xfce (например в autostart X-сессии):
$ pkexec /usr/sbin/xfpm-power-backlight-helper --set-brightness <brightness_level>

Значение <brightness_level> не должно превышать
$ ls -l /sys/class/backlight/*/max_brightness
-r--r--r-- 1 root root 4096 сен 23 13:18 /sys/class/backlight/intel_backlight/max_brightness
Оно индивидуально для каждого отдельно взятого ноутбука.