#!/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