pointfichiers/bin/eww-bard

51 lines
947 B
Text
Raw Normal View History

2024-01-26 09:58:21 +01:00
#!/bin/dash
2024-03-07 20:11:47 +01:00
# Start initial widgets
eww open-many timer music
# Monitor duplication daemon
2024-01-26 09:58:21 +01:00
WIDGET_NAME=bar
mon_count=0
# Generates $1 different window names
gen_names () {
end=$(($1-1))
out=""
for i in $(seq 0 $end); do
out="$out $WIDGET_NAME:$WIDGET_NAME$i"
done
echo $out
}
# Generates $1 monitor args
gen_args () {
end=$(($1-1))
out=""
for i in $(seq 0 $end); do
out="$out --arg $WIDGET_NAME$i:monitor=$i"
done
echo $out
}
update (){
monitors=$(hyprctl monitors -j)
count=$(echo "$monitors" | jq -c length)
if [ $mon_count -ne $count ]; then
# Close bars
eww close $(seq -s " " 0 $(($mon_count-1)))
# Open new window count
echo "eww open-many $(gen_names $count) $(gen_args $count)"
eww open-many $(gen_names $count) $(gen_args $count)
# Update mon_count
mon_count=$count
fi
}
update
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | while read -r line; do
update
done