Подсветка экрана: различия между версиями

Материал из Toshiba AC100 wiki
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
==Права для изменения яркости через dbus==
==Права для изменения яркости==
Установить права обычному пользователю можно еше с помошью правил:
Установить права обычному пользователю можно еше с помошью правил:


Строка 116: Строка 116:


Для потомков: notify-osd в openbox:
Для потомков: notify-osd в openbox:
[[@http://crunchbanglinux.org/forums/topic/12485/notifyosd-in-openbox/]]
 
[[http://crunchbang.org/forums/viewtopic.php?id=12485]]


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


<span style="background-color: #17293d; color: #333333; display: block; font-family: 'Helvetica Neue',Arial,Helvetica,sans-serif; text-align: justify;">
Существенное дополнение - в /etc/udev/rules.d/99-backlight-permissions.rules во второй строке вместо admin вставьте имя пользователя, под которым вы вошли в систему.
</span>

Версия от 09:20, 18 декабря 2014

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

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

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

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:

[[1]]

Простой рецепт.

http://satplus.ru/ac100

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