.dotfiles/.local/bin/light
2024-06-23 11:51:38 +02:00

38 lines
835 B
Bash
Executable File

#!/bin/bash -e
function get_current() {
local cur; cur="$(cat "$1/brightness")"
local max; max="$(cat "$1/max_brightness")"
echo "$((cur * 100 / max))"
}
function set_light() {
local max; max="$(cat "$1/max_brightness")"
echo "$((CUR * max / 100))" > "$1/brightness"
}
DIRS=(/sys/class/backlight/*)
CUR="$(get_current "${DIRS[0]}")"
echo "$CUR"
echo "\$(($CUR + $1 - $CUR % $1 + $CUR % $1 / $1 * $1))"
case "${1:0:1}" in
'') echo "$CUR"; exit ;;
'+'|'-') CUR="$(($CUR + $1 - $CUR % $1 + $CUR % $1 * 10 / $1 / 5 * $1))" ;;
*) CUR="$1" ;;
esac
echo "$CUR"
[ "$CUR" -lt 0 ] && CUR=0
[ "$CUR" -gt 100 ] && CUR=100
for d in "${DIRS[@]}"; do
set_light "$d"
done
notify-send -t 1000 -u low -i display-brightness-symbolic \
-h string:synchronous:light -h int:value:"$CUR" "$CUR%"