25 lines
618 B
Bash
Executable file
25 lines
618 B
Bash
Executable file
#!/bin/sh
|
|
current_abs=$(brightnessctl get)
|
|
current_rel() {
|
|
echo "$(brightnessctl get) * 100 / $(brightnessctl max)" | bc
|
|
}
|
|
max=$(brightnessctl max)
|
|
factor=3
|
|
brightness_step=$((max * factor / 100 < 1 ? 1 : max * factor / 100))
|
|
|
|
case $1'' in
|
|
'') ;;
|
|
'down')
|
|
# if current value <= 3% and absolute value != 1, set brightness to absolute 1
|
|
if [ "$(current_rel)" -le "$factor" ] && [ "$current_abs" -ge 0 ]; then
|
|
brightnessctl --quiet set 1
|
|
else
|
|
brightnessctl --quiet set "${brightness_step}-"
|
|
fi
|
|
;;
|
|
'up')
|
|
brightnessctl --quiet set "${brightness_step}+"
|
|
;;
|
|
esac
|
|
|
|
current_rel
|