74 lines
2.0 KiB
Plaintext
74 lines
2.0 KiB
Plaintext
![]() |
#!/bin/bash
|
||
|
|
||
|
iDIR="$HOME/.config/hypr/mako/icons"
|
||
|
|
||
|
# Get Volume
|
||
|
get_volume() {
|
||
|
volume=$(pamixer --get-volume)
|
||
|
echo "$volume"
|
||
|
}
|
||
|
|
||
|
# Get icons
|
||
|
get_icon() {
|
||
|
current=$(get_volume)
|
||
|
if [[ "$current" -eq "0" ]]; then
|
||
|
echo "$iDIR/volume-mute.png"
|
||
|
elif [[ ("$current" -ge "0") && ("$current" -le "30") ]]; then
|
||
|
echo "$iDIR/volume-low.png"
|
||
|
elif [[ ("$current" -ge "30") && ("$current" -le "60") ]]; then
|
||
|
echo "$iDIR/volume-mid.png"
|
||
|
elif [[ ("$current" -ge "60") && ("$current" -le "100") ]]; then
|
||
|
echo "$iDIR/volume-high.png"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
# Notify
|
||
|
notify_user() {
|
||
|
notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_icon)" "Volume : $(get_volume)"
|
||
|
}
|
||
|
|
||
|
# Increase Volume
|
||
|
inc_volume() {
|
||
|
pamixer -i 5 && notify_user
|
||
|
}
|
||
|
|
||
|
# Decrease Volume
|
||
|
dec_volume() {
|
||
|
pamixer -d 5 && notify_user
|
||
|
}
|
||
|
|
||
|
# Toggle Mute
|
||
|
toggle_mute() {
|
||
|
if [ "$(pamixer --get-mute)" == "false" ]; then
|
||
|
pamixer -m && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF"
|
||
|
elif [ "$(pamixer --get-mute)" == "true" ]; then
|
||
|
pamixer -u && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_icon)" "Volume Switched ON"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
# Toggle Mic
|
||
|
toggle_mic() {
|
||
|
if [ "$(pamixer --source 66 --get-mute)" == "false" ]; then
|
||
|
pamixer -m --source 66 && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF"
|
||
|
elif [ "$(pamixer --source 66 --get-mute)" == "true" ]; then
|
||
|
pamixer -u --source 66 && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone.png" "Microphone Switched ON"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
# Execute accordingly
|
||
|
if [[ "$1" == "--get" ]]; then
|
||
|
get_volume
|
||
|
elif [[ "$1" == "--inc" ]]; then
|
||
|
inc_volume
|
||
|
elif [[ "$1" == "--dec" ]]; then
|
||
|
dec_volume
|
||
|
elif [[ "$1" == "--toggle" ]]; then
|
||
|
toggle_mute
|
||
|
elif [[ "$1" == "--toggle-mic" ]]; then
|
||
|
toggle_mic
|
||
|
elif [[ "$1" == "--get-icon" ]]; then
|
||
|
get_icon
|
||
|
else
|
||
|
get_volume
|
||
|
fi
|