snips/dwl.entourage

77 lines
3.0 KiB
Bash
Executable File

#!/usr/bin/env bash
echo "Entourage: $XDG_RUNTIME_DIR - $DWL_TAGS_FILE" >> $DWL_LOG_FILE
NUM_DISPS=$(wlr-randr | egrep "^\w+" | wc -l)
echo "Entourage: Configuring ${NUM_DISPS} displays" >> $DWL_LOG_FILE
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
echo "DWL getting ready..." >> $DWL_LOG_FILE
sleep 1
done
echo "DWL ready!" >> $DWL_LOG_FILE
echo "Entourage: " $DWL_TAGS_FILE >> $DWL_LOG_FILE
if [ -e /usr/local/bin/somebar ]; then
dbus-run-session /usr/local/bin/somebar > $XDG_RUNTIME_DIR/somebar.log &
(sleep 2 && conky -c ~/.conkyrc > $XDG_RUNTIME_DIR/somebar-0) &
echo "Entourage: Started somebar " >> $DWL_LOG_FILE
else
DISPLAYS=$(wlr-randr | perl -ne 'print "$1 " if /^([\w-]+)/')
DISP_NUM=$(expr 0)
for DISP in $DISPLAYS; do
DISP_NUM=$(expr $DISP_NUM + 1)
TF=${DWL_TAGS_FILE}.${DISP}
# ----------------------------------------------------------
# Top bar for displaying DWL tags
# ----------------------------------------------------------
# Dependency - needs inotify-tools package
echo "Entourage: Monitor - ${DISP_NUM} ${DISP}, new tags file " ${TF} >> $DWL_LOG_FILE
touch ${TF}
inotifywait -q -m -e close_write ${TF} |
(cat ${TF} ;
while read -r filename event; do
cat ${TF}
done) | dtao -z -z -xs ${DISP_NUM} -ta l -tw 100 -expand r -h 22 -fn 'Iosevka:style=Regular:size=12' &
# ----------------------------------------------------------
# Bottom bar for displaying context information
# ----------------------------------------------------------
(conky -c ~/.conkyrc) | dtao -xs ${DISP_NUM} -ta r -tw 100 -expand l -h 22 -fn 'Iosevka:style=Regular:size=12' &
done
fi
# ----------------------------------------------------------
# Background
# ----------------------------------------------------------
# TODO: Consuimng too much CPU - keeps fan spinning
# swaybg --mode fill --image ~/.config/wallpaper.jpg &
# ----------------------------------------------------------
# Lock when idle
# ----------------------------------------------------------
swayidle -w timeout 600 swaylock &
# ----------------------------------------------------------
# Redirect STDIN to STDOUT and pass along to tags script
# ----------------------------------------------------------
(while read line
do
echo $line
done) | dwltags.pl --file $DWL_TAGS_FILE