diff options
Diffstat (limited to 'bin/vol')
| -rwxr-xr-x | bin/vol | 29 |
1 files changed, 22 insertions, 7 deletions
@@ -1,9 +1,24 @@ #!/bin/sh -sink=1 -step=5 -# Default down -mode=- -case $1 in - up) mode=+ +sinkName=$(pacmd info | grep 'Default sink' | awk '{print $4}') +sinkNumber=$(pacmd info | grep "sink:.*$sinkName" | awk '{print $2}') + +getVolume() { + volumeInput=$(pactl list sinks) + currentVolume=$(echo "${volumeInput#*Sink #$sinkNumber}" | grep -E 'V.*-left' | grep -oE '[0-9]+%' | tail -n 1) + notify-send "Volume: $currentVolume" +} + +case "$1" in + up) pactl set-sink-volume @DEFAULT_SINK@ +5%; getVolume;; + down) pactl set-sink-volume @DEFAULT_SINK@ -5%; getVolume;; + mute) muted=$(pactl list sinks | grep 'Mute: yes') + if [ -z "$muted" ]; then + pactl set-sink-mute @DEFAULT_SINK@ 1 + notify-send Volume: Muted + else + pactl set-sink-mute @DEFAULT_SINK@ 0 + getVolume + fi;; + *) echo error;; esac -pactl set-sink-volume "$sink" "$mode${step}%" + |
