#!/usr/bin/env bash

function log_this() {
    TSTMP=$(date)
    echo "$TSTMP : " $1 >> $DWL_LOG_FILE
}

log_this "Entourage: $XDG_RUNTIME_DIR - $DWL_TAGS_FILE"

NUM_DISPS=$(wlr-randr | grep -E "^\w+" | wc -l)
log_this "Entourage: Configuring ${NUM_DISPS} displays"

if [[ $NUM_DISPS > 1 ]]; then
    # Dual screen
    # wlr-randr --output HDMI-A-1 --on --pos 0,0 --output eDP-1 --on --pos 0,1050
    # wlr-randr --output HDMI-A-1 --on --pos 0,0 --output eDP-1 --on --pos 2560,0
    # With Dell 1920x1200 display
    wlr-randr --output HDMI-A-1 --on --pos 0,0 --output eDP-1 --on --pos 0,1200
else
    # Single laptop screen
    wlr-randr --output HDMI-A-1 --off --output eDP-1 --on --pos 0,0
fi

# ----------------------------------------------------------
# Let DWL start
# ----------------------------------------------------------
while [ ! -e "$XDG_RUNTIME_DIR/wayland-0.lock" ]
do
    log_this "DWL getting ready..."
    sleep 1
done
log_this "DWL ready!"
log_this "Entourage: $DWL_TAGS_FILE"

# ----------------------------------------------------------
# Background
# ----------------------------------------------------------
# TODO: Consuimng too much CPU - keeps fan spinning
# swaybg --mode fill --image ~/.config/wallpaper.jpg &

# ----------------------------------------------------------
# Lock when idle
# ----------------------------------------------------------
log_this "Entourage: Starting screen locker with 10min idle time"
swayidle -w timeout 600 swaylock &

# ----------------------------------------------------------
# Redirect STDIN to STDOUT and pass along to tags script
# ----------------------------------------------------------
BAR_PATH=/usr/local/bin/somebar
# BAR_PATH=/home/mahesh/git/somebar_20231001/build/somebar

export SOMEBAR_FIFO=$XDG_RUNTIME_DIR/somebar.fifo
mkfifo $SOMEBAR_FIFO -m666
log_this "Entourage: Starting somebar using $SOMEBAR_FIFO"
conky -c ~/.conkyrc > $SOMEBAR_FIFO &

(while read line
do
    echo $line
done) | ($BAR_PATH -s $SOMEBAR_FIFO > $XDG_RUNTIME_DIR/somebar.log 2>&1)