Marty Oehme
226c4b5f0d
Removed the ascii-art bar animations calculated for e.g. dunst notifications for the controls of brightness and volume. The dunst notifications finally have a working bar slider built into them when invoked with the correct stack option.
53 lines
1.4 KiB
Bash
Executable file
53 lines
1.4 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
# Brightness control script using xbacklight
|
|
# Will use notify-send to create brightness notifications, if dunst is used
|
|
# or the notification daemon supports tag stacks, will automatically update
|
|
# the same notifications and not create new ones.
|
|
#
|
|
# inspired from https://gist.github.com/Blaradox/030f06d165a82583ae817ee954438f2e
|
|
|
|
usage() {
|
|
echo "usage: control-brightness up|down [step], where step can be any int value
|
|
or: control-brightness set target, where target can be an int value 0-100"
|
|
}
|
|
|
|
direction=$1
|
|
step=${2:-10}
|
|
|
|
get_brightness() {
|
|
xbacklight -get | cut -d. -f1
|
|
}
|
|
|
|
send_notification() {
|
|
icon="preferences-system-brightness-lock"
|
|
brightness=$(get_brightness)
|
|
if type dunstify 1>/dev/null 2>/dev/null; then
|
|
notcmd="dunstify -h string:x-dunst-stack-tag:brightness"
|
|
else
|
|
notcmd="notify-send -h string:x-dunst-stack-tag:brightness"
|
|
fi
|
|
$notcmd -a "changeVolume" -u low -i "$icon" \
|
|
-h int:value:"$brightness" "Brightness: $brightness%"
|
|
}
|
|
|
|
case $direction in
|
|
up)
|
|
xbacklight -inc "$step"
|
|
send_notification
|
|
;;
|
|
down)
|
|
xbacklight -dec "$step"
|
|
send_notification
|
|
;;
|
|
set)
|
|
if [ -z "$step" ]; then
|
|
echo "set option requires target brightness to be specified."
|
|
return 1
|
|
fi
|
|
xbacklight -set "$step"
|
|
send_notification
|
|
;;
|
|
*)
|
|
echo "usage: control-brightness up|down [step], where step can be any int value"
|
|
;;
|
|
esac
|