dotfiles/rofi/volume/launch.sh

55 lines
908 B
Bash
Executable File

#!/usr/bin/env bash
theme_path="$HOME/.config/rofi/volume/volume_menu.rasi"
volume=''
microphone=''
pavucontrol=''
rofi_cmd() {
rofi -theme "$theme_path" -dmenu -markup-rows
}
# Microphone Info
amixer get Capture | grep '\[on\]' &>/dev/null
if [[ "$?" == 0 ]]; then
microphone=''
else
microphone=''
fi
# Microphone Info
amixer get Master | grep '\[on\]' &>/dev/null
if [[ "$?" == 0 ]]; then
volume=''
else
volume=''
fi
run_cmd() {
if [[ "$1" == '--opt1' ]]; then
amixer set Master toggle
elif [[ "$1" == '--opt2' ]]; then
amixer set Capture toggle
elif [[ "$1" == '--opt3' ]]; then
exec pavucontrol
fi
}
run() {
echo -e "$volume\n$microphone\n$pavucontrol" | rofi_cmd
}
chosen="$(run)"
case ${chosen} in
$volume)
run_cmd --opt1
;;
$microphone)
run_cmd --opt2
;;
$pavucontrol)
run_cmd --opt3
;;
esac