dotfiles/_gui/_scripts/sb-volume

52 lines
1.8 KiB
Plaintext
Raw Normal View History

2022-12-18 20:09:02 +01:00
#!/bin/bash
key_micmute() {
state=$(pactl get-source-mute @DEFAULT_SOURCE@ | awk -F': ' '{print $2}')
case ${state} in
yes)
echo 0 | doas tee /sys/devices/platform/thinkpad_acpi/leds/platform::micmute/brightness
pactl set-source-mute @DEFAULT_SOURCE@ 0 ;;
no)
echo 1 | doas tee /sys/devices/platform/thinkpad_acpi/leds/platform::micmute/brightness
pactl set-source-mute @DEFAULT_SOURCE@ 1 ;;
2022-12-18 20:09:02 +01:00
esac
}
key_mute() {
state=$(pactl get-sink-mute @DEFAULT_SINK@ | awk -F': ' '{print $2}')
case ${state} in
yes)
echo 0 | doas tee /sys/devices/platform/thinkpad_acpi/leds/platform::mute/brightness
pactl set-sink-mute @DEFAULT_SINK@ 0 ;;
no)
echo 1 | doas tee /sys/devices/platform/thinkpad_acpi/leds/platform::mute/brightness
pactl set-sink-mute @DEFAULT_SINK@ 1 ;;
esac
}
vol_decrease() {
pactl set-sink-volume @DEFAULT_SINK@ -5%
volume=$(pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk -F' / *' '{print $2}')
notify-send -t 2000 -u low "volume: $volume"
}
vol_increase() {
pactl set-sink-volume @DEFAULT_SINK@ +5%
2022-12-18 20:09:02 +01:00
volume=$(pactl get-sink-volume @DEFAULT_SINK@ | head -n 1 | awk -F' / *' '{print $2}')
notify-send -t 2000 -u low "volume: $volume"
}
if [ $1 ]; then
case $1 in
dec) vol_decrease ;;
inc) vol_increase ;;
micmute) key_micmute ;;
mute) key_mute ;;
esac
2022-12-18 20:09:02 +01:00
else
vol=$(pactl get-sink-volume @DEFAULT_SINK@ | awk -F' / ' '{print $2}' | tr -d '%')
[ $(pactl get-sink-mute @DEFAULT_SINK@ | awk -F': ' '{print $2}') = yes ] || [ "$vol" -eq 0 ] && mute="audio muted" || mute=""
mic=$(pactl get-source-volume @DEFAULT_SOURCE@ | awk -F' / ' '{print $2}' | tr -d '%')
[ $(pactl get-source-mute @DEFAULT_SOURCE@ | awk -F': ' '{print $2}') = yes ] || [ "$mic" -eq 0 ] && printf "${mute} mic muted" || printf "${mute}"
2022-12-18 20:09:02 +01:00
fi