Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- sinkName=$(pacmd info | grep 'Default sink' | awk '{print $4}')
- sinkNumber=$(pacmd info | grep "sink:.*$sinkName" | awk '{print $2}')
- case "$1" in
- up) icon=audio-volume-high;;
- down) icon=audio-volume-low;;
- mute) icon=audio-volume-medium;;
- [0-9]*) icon=audio-volume-medium;;
- esac
- 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" -i /usr/share/icons/Adwaita/24x24/status/"$icon"-symbolic.symbolic.png
- echo 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 -i /usr/share/icons/Adwaita/24x24/status/audio-volume-muted-symbolic.symbolic.png
- echo Volume: Muted
- else
- pactl set-sink-mute @DEFAULT_SINK@ 0
- getVolume
- fi;;
- list) getVolume;;
- esac
- if [[ "$1" =~ [0-9]+ ]]; then
- pactl set-sink-volume @DEFAULT_SINK@ "$1%"; getVolume
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement