Подсветка экрана

Материал из Toshiba AC100 wiki
Перейти к: навигация, поиск

Права для изменения яркости

Установить права обычному пользователю можно еше с помошью правил:

Создать файл для правил

nano /etc/udev/rules.d/99-backlight-permissions.rules

вставить в него

KERNEL=="pwm-backlight" SUBSYSTEM=="backlight" RUN+="/bin/chmod 664 /sys/class/backlight/pwm-backlight/brightness" KERNEL=="pwm-backlight" SUBSYSTEM=="backlight" RUN+="/bin/chgrp admin /sys/class/backlight/pwm-backlight/brightness"


Изменение уровня яркости. Вариант 1

Установка прав обычному пользователю на нужный файл:

echo 'chmod 656 /sys/class/backlight/pwm-backlight/brightness' >> /etc/rc.local

backlight_up.sh:

#!/bin/bash

current=$(cat /sys/class/backlight/pwm-backlight/brightness)
echo `expr $current + 10` | sudo tee /sys/class/backlight/pwm-backlight/brightness

backlight_down.sh:

#!/bin/bash

current=$(cat /sys/class/backlight/pwm-backlight/brightness)
echo `expr $current - 10` | sudo tee /sys/class/backlight/pwm-backlight/brightness

Изменение уровня яркости. Вариант 2

Установка прав обычному пользователю на нужный файл:

echo 'chmod 656 /sys/class/backlight/pwm-backlight/brightness' >> /etc/rc.local

backlight_up.sh:

echo $(( $(cat /sys/class/backlight/pwm-backlight/brightness)>25 ? $(cat /sys/class/backlight/pwm-backlight/brightness) + 20 : 5 )) > /sys/class/backlight/pwm-backlight/brightness

backlight_down.sh:

echo $(( $(cat /sys/class/backlight/pwm-backlight/brightness)<235 ? $(cat /sys/class/backlight/pwm-backlight/brightness) - 20 : 255 )) > /sys/class/backlight/pwm-backlight/brightness

Выключение подсветки

Установка прав обычному пользователю на нужный файл:

echo 'chmod 656 /sys/class/backlight/pwm-backlight/brightness' >> /etc/rc.local

backlight_onoff.sh

#!/bin/bash

old_file="/tmp/.old_backlight"

current=$(cat /sys/class/backlight/pwm-backlight/brightness)

if [[ $current == 0 ]]; then
    # restore
    cat $old_file | sudo tee /sys/class/backlight/pwm-backlight/brightness
else
    # disable
    echo $current > "$old_file"
    echo "0" | sudo tee /sys/class/backlight/pwm-backlight/brightness
fi

Изменение уровня яркости через dbus

Не требует админских привилегий и изменения прав на файл, используется Brightness Applet из Gnome-Power-Manager.

#!/bin/bash
function getBrightness() {
    dbus-send \
    --print-reply \
    --dest=org.gnome.PowerManager \
    /org/gnome/PowerManager/Backlight \
    org.gnome.PowerManager.Backlight.GetBrightness | \
    tail -1 | \
    awk '{print $2}'
}
function setBrightness() {
    dbus-send \
    --print-reply \
    --dest=org.gnome.PowerManager \
    /org/gnome/PowerManager/Backlight \
    org.gnome.PowerManager.Backlight.SetBrightness \
    uint32:$1 #2&>1 > /dev/null
}
max=100

current=$(getBrightness)

case $1 in
    up)
        setBrightness $(( $current + 10 ));;
    down)
        setBrightness $(( $current - 10 ));;
    max|full)
        setBrightness $max;;
    min)
        setBrightness 0;;
esac



notify-osd в openbox

http://satplus.ru/ac100 : cущественное дополнение - в /etc/udev/rules.d/99-backlight-permissions.rules во второй строке вместо admin вставьте имя пользователя, под которым вы вошли в систему.