#!/bin/sh

set -e
set -u
set -o pipefail

readonly executable_name=qbar
readonly sway_bar_id=bar-0

readonly default_bar_command="$(swaymsg -t get_bar_config "$sway_bar_id" | jq .status_command)"

stack build

readonly temp_dir=$(mktemp -d)
readonly stderr=$temp_dir/stderr
mkfifo $stderr

trap "swaymsg bar $sway_bar_id status_command '$default_bar_command'; rm -rf $temp_dir" EXIT INT HUP TERM

swaymsg bar $sway_bar_id status_command "exec $(stack path --local-install-root)/bin/$executable_name $@ -- server swaybar 2> $stderr"

# show output and run forever (use Ctrl-C to stop)
cat $stderr