helm/os/arch/bin/vol

26 lines
691 B
Bash
Executable file

#!/usr/bin/env bash
if (($# == 0)); then
data=$(amixer get Master)
vol=$(echo "$data" | sed -n 's/^.*\[\([0-9]\+\)%.*$/\1/p' | uniq)
state=$(echo "$data" | grep '\[on\]')
[[ $state ]] && echo $vol || echo 0
exit
fi
case $1 in
[0-9]*) amixer set Master $1 ;;
[+-]) amixer set Master 10%$1 ;;
*mute) amixer set Master $1 ;;
toggle) amixer set Master toggle ;;
*) >&2 echo "Invalid command"
exit 1
;;
esac
killall -9 -q osd_cat &>/dev/null
osd_cat --font="10x20" --delay=2 --color=white --align=center --pos=bottom --barmode=percentage --percentage $($0) &
# Report to lemonbar, if active
$HOME/.config/panel/panel-notify :volume