#!/usr/bin/env sh # Terminate already running bar instances killall -q polybar # Wait until the processes have been shut down while pgrep -u "$UID" -x polybar >/dev/null; do sleep 1; done # Launch bar polybar main-0 & #polybar main-1 & #polybar main-2 & #polybar main-3 & #polybar main-4 & #polybar main-5 & # Define bars per monitors declare -A ARRANGEMENTS=(["$mainmonitor"]="main-0" ["$secondmonitor"]="main-0") #declare -A ARRANGEMENTS=(["$mainmonitor"]="main-1,main-2,main-3,main-4,main-5" ["$secondmonitor"]="main-1,main-2,main-3,main-4,main-5") # Each key for MONITOR in "${!ARRANGEMENTS[@]}"; do # split at `,` into array while IFS=',' read -ra BARLIST; do # for each bar (seperated by `,`) at current key for BAR in "${BARLIST[@]}"; do MONITOR="$MONITOR" polybar --reload "$BAR" & done done <<< "${ARRANGEMENTS[$MONITOR]}" done