mine-hyprdots/bin/backlight.sh

52 lines
1.1 KiB
Bash
Executable file

# #!/bin/bash
# # I copied this script from JaKooLit. https://github.com/JaKooLit. Because I do not have any laptop to test these kinds of features.
iDIR="$HOME/.config/dunst/icons/brightness"
notification_timeout=1000
# Get brightness
get_backlight() {
echo $(brightnessctl -m | cut -d, -f4)
}
# Get icons
get_icon() {
current=$(get_backlight | sed 's/%//')
if [ "$current" -le "20" ]; then
icon="$iDIR/brightness-20.png"
elif [ "$current" -le "40" ]; then
icon="$iDIR/brightness-40.png"
elif [ "$current" -le "60" ]; then
icon="$iDIR/brightness-60.png"
elif [ "$current" -le "80" ]; then
icon="$iDIR/brightness-80.png"
else
icon="$iDIR/brightness-100.png"
fi
}
# Notify
notify_user() {
notify-send -e -h string:x-canonical-private-synchronous:brightness_notif -h int:value:$current -u low -i "$icon" "Brightness : $current%"
}
# Change brightness
change_backlight() {
brightnessctl set "$1" -n && get_icon && notify_user
}
# Execute accordingly
case "$1" in
"--get")
get_backlight
;;
"up")
change_backlight "+10%"
;;
"down")
change_backlight "10%-"
;;
*)
get_backlight
;;
esac