commit 68acbc2bff1bd34cb9390e88c2022ebbcb8349bd
parent 475698e57d650456113f0a4b73f3a769ec996749
Author: Luke Smith <luke@lukesmith.xyz>
Date: Thu, 9 Apr 2020 17:03:51 -0400
volume script uses pulse by default
Diffstat:
1 file changed, 17 insertions(+), 7 deletions(-)
diff --git a/.local/bin/statusbar/volume b/.local/bin/statusbar/volume
@@ -1,20 +1,30 @@
#!/bin/sh
+# Prints the current volume or 🔇 if muted. Uses PulseAudio by default,
+# uncomment the ALSA lines if you remove PulseAudio.
+
case $BLOCK_BUTTON in
- 1) setsid "$TERMINAL" -e alsamixer & ;;
- 2) amixer sset Master toggle ;;
- 4) amixer sset Master 5%+ >/dev/null 2>/dev/null ;;
- 5) amixer sset Master 5%- >/dev/null 2>/dev/null ;;
+ # 1) setsid "$TERMINAL" -e alsamixer & ;;
+ # 2) amixer sset Master toggle ;;
+ # 4) amixer sset Master 5%+ >/dev/null 2>/dev/null ;;
+ # 5) amixer sset Master 5%- >/dev/null 2>/dev/null ;;
+ 1) setsid "$TERMINAL" -e pulsemixer & ;;
+ 2) pulsemixer --toggle-mute ;;
+ 4) pulsemixer --change-volume +5 ;;
+ 5) pulsemixer --change-volume -5 ;;
3) notify-send "📢 Volume module" "\- Shows volume 🔊, 🔇 if muted.
- Middle click to mute.
- Scroll to change."
esac
-volstat="$(amixer get Master)"
+volstat="$(pactl list sinks)"
+# volstat="$(amixer get Master)" # ALSA only equivalent.
-echo "$volstat" | grep "\[off\]" >/dev/null && printf "🔇\\n" && exit
+echo "$volstat" | grep -q "Mute: yes" && printf "🔇\\n" && exit
+# echo "$volstat" | grep "\[off\]" >/dev/null && printf "🔇\\n" && exit # ALSA
-vol=$(echo "$volstat" | grep -o "\[[0-9]\+%\]" | sed "s/[^0-9]*//g;1q")
+vol="$(echo "$volstat" | grep '^[[:space:]]Volume:' | sed "s,.* \([0-9]\+\)%.*,\1,;1q")"
+# vol=$(echo "$volstat" | grep -o "\[[0-9]\+%\]" | sed "s/[^0-9]*//g;1q") # ALSA
if [ "$vol" -gt "70" ]; then
icon="🔊"