This commit is contained in:
2023-10-22 06:12:10 +02:00
commit 314ff2f75d
69 changed files with 6951 additions and 0 deletions

76
.config/eww/scripts/audio.sh Executable file
View File

@@ -0,0 +1,76 @@
#!/bin/bash
usage() {
echo "Usage:
$0 <action> <sink|source>
actions: vol"
}
if [ -z $1 ]; then
usage
exit 1
fi
if [ -z $2 ] && [ "$1" != "getdevices" ] && [ "$1" != "getdefaultsink" ]; then
usage
exit 1
fi
vol() {
if [ "$1" == "up" ]; then
vol="5%+"
else
vol="5%-"
fi
wpctl set-volume @DEFAULT_SINK@ $vol
eww update VOLUME_SINK=$(getvol @DEFAULT_SINK@)
}
getvol() {
wpctl get-volume $1 | awk '{print $2}'
}
ismutedsource() {
pactl get-source-mute $1 | awk '{print ($2 == "no"? "false" : "true")}'
}
ismutedsink() {
pactl get-sink-mute $1 | awk '{print ($2 == "no"? "false" : "true")}'
}
mutesink() {
pactl set-sink-mute $1 toggle
eww update IS_MUTED_SINK=$(ismutedsink $1)
}
mutesource() {
pactl set-source-mute $1 toggle
eww update IS_MUTED_SOURCE=$(ismutedsource $1)
}
isblue() {
wpctl inspect $1 | grep api.bluez -q -m 1 && echo true || echo false
}
if [ "$1" == "getdevices" ]; then
pactl -f json list sinks | jq -Mc '[.[] | {id: .index, name: .description, mute: .mute, default: (.state == "RUNNING")}]'
elif [ "$1" == "vol" ]; then
vol $2
elif [ "$1" == "getvol" ]; then
getvol $2
elif [ "$1" == "ismutedsource" ]; then
ismutedsource $2
elif [ "$1" == "ismutedsink" ]; then
ismutedsink $2
elif [ "$1" == "mutesink" ]; then
mutesink $2
elif [ "$1" == "mutesource" ]; then
mutesource $2
elif [ "$1" == "isblue" ]; then
isblue $2
elif [ "$1" == "getdefaultsink" ]; then
wpctl inspect @DEFAULT_SINK@ | grep 'node.description' | awk -F ' = ' '{print $2}' | sed 's/\"//g'
else
usage
fi