dotfiles/polybar/.local/bin/polybar-launch

21 lines
588 B
Bash
Executable File

#!/usr/bin/env bash
# force start or restart (all) polybar instances
# if ipc is enabled, can be replaced with `polybar-msg cmd restart`, provided polybar is not stuck
# 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
startbars() {
for bar in "$@"; do
local logfile="/tmp/polybar-$bar.log"
printf -- "---\npolybar: %s starting...\n---\n" "$bar" | tee -a "$logfile"
polybar "$bar" >>"$logfile" 2>&1 &
done
}
startbars "$@"
echo "Polybars launched..."