mirror of
https://codeberg.org/frosty/dotfiles.git
synced 2024-09-19 11:47:09 -04:00
40 lines
961 B
Bash
Executable file
40 lines
961 B
Bash
Executable file
#!/bin/sh
|
|
|
|
SINK="@DEFAULT_AUDIO_SINK@"
|
|
NOTIFY_ID=9990
|
|
NOTIFY_URGENCY="low"
|
|
|
|
action="${1:-}"
|
|
[ -z "$action" ] && exit 1
|
|
|
|
if [ "$action" = "toggle" ]; then
|
|
wpctl set-mute "$SINK" "$action" || exit 1
|
|
else
|
|
wpctl set-volume "$SINK" "$action" || exit 1
|
|
fi
|
|
|
|
volume="$(wpctl get-volume "$SINK")"
|
|
case "$volume" in
|
|
*\[MUTED\]*) muted=1 ;;
|
|
*) muted=0 ;;
|
|
esac
|
|
volume="${volume% \[MUTED\]}"
|
|
volume="${volume#Volume: }"
|
|
volume="${volume%.*}${volume#*.}"
|
|
volume="${volume#0}"
|
|
|
|
if [ "$muted" -eq 1 ]; then
|
|
icon="audio-volume-muted-symbolic"
|
|
title="Volume Muted"
|
|
else
|
|
case "$volume" in
|
|
[0-9] | [1-2][0-9] | 3[0-3]) icon="audio-volume-low-symbolic" ;;
|
|
3[4-9] | [4-5][0-9] | 6[0-6]) icon="audio-volume-medium-symbolic" ;;
|
|
6[7-9] | [7-9][0-9] | 100) icon="audio-volume-high-symbolic" ;;
|
|
esac
|
|
title="Volume"
|
|
fi
|
|
|
|
notify-send -r "$NOTIFY_ID" -u "$NOTIFY_URGENCY" -h int:value:"$volume" -i "$icon" "$title"
|
|
update-pipe volume 'monitors volume'
|