40 lines
1.1 KiB
Bash
Executable File
40 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
dir="$HOME/.config/polybar"
|
|
themes=(`ls --hide="launch.sh" $dir`)
|
|
|
|
launch_bar() {
|
|
if [ -e "$dir/$style/config.ini" ]; then
|
|
|
|
# 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 the bar multi monitor aware
|
|
for mon in $(polybar --list-monitors | cut -d":" -f1); do
|
|
|
|
if [[ "$style" == "hack" || "$style" == "cuts" ]]; then
|
|
MONITOR=$mon polybar -q top -c "$dir/$style/config.ini" &
|
|
MONITOR=$mon polybar -q bottom -c "$dir/$style/config.ini" &
|
|
elif [[ "$style" == "pwidgets" ]]; then
|
|
MONITOR=$mon bash "$dir"/pwidgets/launch.sh --main
|
|
else
|
|
MONITOR=$mon polybar -q main -c "$dir/$style/config.ini" &
|
|
fi
|
|
|
|
done
|
|
else
|
|
echo "$dir/$style/config.ini" not found
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
if [ "$1" = "" ]; then
|
|
echo "Please specify a --style"
|
|
exit 1
|
|
fi
|
|
style=${1#--*}
|
|
launch_bar
|