initial commit
This commit is contained in:
Executable
+75
@@ -0,0 +1,75 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Changes de volume of the default sink
|
||||
# Warning: This script offers no cap for volume,
|
||||
# I'd advice to not go above 150% (which is the standard cap).
|
||||
# You can call this script like this:
|
||||
# volume.sh [up|down|mute]
|
||||
|
||||
function get_volume {
|
||||
pactl get-sink-volume @DEFAULT_SINK@ | awk '{printf $5}' | cut -d '%' -f 1
|
||||
}
|
||||
|
||||
function is_mute {
|
||||
pactl get-sink-mute @DEFAULT_SINK@
|
||||
}
|
||||
|
||||
function send_notification {
|
||||
|
||||
overvolume=`get_volume`
|
||||
[[ $overvolume -gt 100 ]] && volume=100 || volume=$overvolume
|
||||
#Set correct icon
|
||||
if [[ $volume -eq 0 ]]
|
||||
then
|
||||
icon_name="${HOME}/.config/rice_assets/Icons/nov.png"
|
||||
elif [[ $volume -lt 35 ]]
|
||||
then
|
||||
icon_name="${HOME}/.config/rice_assets/Icons/vlow.png"
|
||||
elif [[ $volume -lt 70 ]]
|
||||
then
|
||||
icon_name="${HOME}/.config/rice_assets/Icons/vmid.png"
|
||||
elif [[ $volume -lt 100 ]]
|
||||
then
|
||||
icon_name="${HOME}/.config/rice_assets/Icons/vhigh.png"
|
||||
else
|
||||
icon_name="${HOME}/.config/rice_assets/Icons/vthigh.png"
|
||||
fi;
|
||||
#bn=$(( (volume + 5) / 5 ))
|
||||
|
||||
#bar=$(seq -s "" $bn | sed 's/[0-9]//g')
|
||||
|
||||
# Send the notification
|
||||
dunstify "Volume: $overvolume%" -h int:value:$volume -i /usr/share/icons/Adwaita/96x96/status/audio-volume-medium-symbolic.symbolic.png -t 1000 --replace=555 -u normal
|
||||
}
|
||||
|
||||
case $1 in
|
||||
up)
|
||||
swayosd-client --output-volume 5
|
||||
# # Set the volume on (if it was muted)
|
||||
# pactl set-sink-mute @DEFAULT_SINK@ 0 > /dev/null
|
||||
# # Up the volume (+ 5%)
|
||||
# curvol=`get_volume`
|
||||
# rem=$(( (curvol + 5) % 5 ))
|
||||
# inc="+$(( 5 - rem ))%"
|
||||
# pactl set-sink-volume @DEFAULT_SINK@ $inc > /dev/null
|
||||
# send_notification
|
||||
;;
|
||||
down)
|
||||
swayosd-client --output-volume -5
|
||||
# pactl set-sink-mute @DEFAULT_SINK@ 0 > /dev/null
|
||||
# curvol=`get_volume`
|
||||
# rem=$(( (curvol - 5) % 5 ))
|
||||
# inc="-$(( 5 + rem ))%"
|
||||
# pactl set-sink-volume @DEFAULT_SINK@ $inc > /dev/null
|
||||
# send_notification
|
||||
;;
|
||||
mute)
|
||||
# Toggle mute
|
||||
pactl set-sink-mute @DEFAULT_SINK@ toggle > /dev/null
|
||||
if [[ `is_mute` == "Mute: yes" ]] ; then
|
||||
dunstify -i "${HOME}/.config/rice_assets/Icons/mute.png" --replace=555 -u normal "Volume: Mute" -t 1000 -u critical
|
||||
else
|
||||
send_notification
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user