massive cleanup

This commit is contained in:
ange 2025-06-17 05:13:23 +00:00
parent 81da0e63fa
commit 5a6ec6f75c
Signed by: ange
GPG key ID: 9E0C4157BB7BEB1D
35 changed files with 134 additions and 126 deletions

View file

@ -3,18 +3,18 @@
json="$(pw-dump)"
fmt='"\(.id) \(.info.props."node.nick")"'
function _jq() {
_jq() {
jq -r "$*" <<< "$json"
}
function getdev() {
getdev() {
local d
d="$(_jq ".[].metadata | select(.)[] | select(.key == \"default.configured.audio.$1\").value.name")"
_jq ".[] | select(.info.props.\"node.name\" == \"$d\") | $fmt"
}
function getdevs() {
getdevs() {
_jq ".[] | select(.info.props.\"media.class\" == \"Audio/$1\") | $fmt"
}
@ -25,7 +25,11 @@ case "$1" in
esac
dev="$(getdev "${CLASS,,}")"
devs="$(getdevs "$CLASS" | grep -v "$dev")"$'\n'"* $dev"
if [ -n "$dev" ]; then
devs="$(getdevs "$CLASS" | grep -v "$dev")"$'\n'"* $dev"
else
devs="$(getdevs "$CLASS")"
fi
read -r id <<< "$(dmenu -l 16 <<< "$devs" | sed 's/*//')"
wpctl set-default "$id"