mirror of
https://github.com/LukeSmithxyz/voidrice.git
synced 2026-03-20 01:37:45 +01:00
Shell script interprets zero-prefixed decimal integer as octal integer so it throws an error when "vol" is equal to "08" or "09" because this values are invalid octal numbers. Now "vol" forced to be decimal.
40 lines
922 B
Bash
Executable File
40 lines
922 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# Prints the current volume or 🔇 if muted.
|
|
|
|
case $BLOCK_BUTTON in
|
|
1) setsid -f "$TERMINAL" -e pulsemixer ;;
|
|
2) wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle ;;
|
|
4) wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%+ ;;
|
|
5) wpctl set-volume @DEFAULT_AUDIO_SINK@ 1%- ;;
|
|
3) notify-send "📢 Volume module" "\- Shows volume 🔊, 🔇 if muted.
|
|
- Middle click to mute.
|
|
- Scroll to change." ;;
|
|
6) "$TERMINAL" -e "$EDITOR" "$0" ;;
|
|
esac
|
|
|
|
vol="$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
|
|
|
# If muted, print 🔇 and exit.
|
|
[ "$vol" != "${vol%\[MUTED\]}" ] && echo 🔇 && exit
|
|
|
|
vol="${vol#Volume: }"
|
|
|
|
split() {
|
|
# For ommiting the . without calling and external program.
|
|
IFS=$2
|
|
set -- $1
|
|
printf '%s' "$@"
|
|
}
|
|
|
|
vol="$(printf "%.0f" "$(split "$vol" ".")")"
|
|
|
|
case 1 in
|
|
$((10#$vol >= 70)) ) icon="🔊" ;;
|
|
$((10#$vol >= 30)) ) icon="🔉" ;;
|
|
$((10#$vol >= 1)) ) icon="🔈" ;;
|
|
* ) echo 🔇 && exit ;;
|
|
esac
|
|
|
|
echo "$icon$vol%"
|