44 lines
1.6 KiB
Bash
Executable File
44 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
BLFILE="/home/jpm/.config/blc.last"
|
|
OPFILE="/home/jpm/.config/active_outputs"
|
|
|
|
if [ -z $1 ]; then
|
|
echo "Missing argument: run, warn, sleep or" \
|
|
" wake"
|
|
elif [ $1 == "start" ]; then
|
|
swayidle -w timeout 270 "/home/jpm/scripts/sway/idle.sh warn" \
|
|
resume "/home/jpm/scripts/sway/idle.sh resume" \
|
|
timeout 300 "/home/jpm/scripts/sway/idle.sh sleep" \
|
|
resume "/home/jpm/scripts/sway/idle.sh wake" \
|
|
before-sleep "/usr/bin/swaylock -c 323232"
|
|
elif [ $1 == "warn" ]; then
|
|
# Store current brightness
|
|
echo $(/home/jpm/scripts/thinkpad/blc.pl %) > $BLFILE
|
|
# Dim display
|
|
/home/jpm/scripts/thinkpad/blc.pl = 1
|
|
# Warning notifications
|
|
/home/jpm/scripts/sway/idlecountdown.sh
|
|
elif [ $1 == "sleep" ]; then
|
|
# Change nick to AFK
|
|
ssh jpm@john.me.tz -i /home/jpm/.ssh/no_pass -t \
|
|
'screen -S irssi -X stuff "/nick jpmAFK^M"'
|
|
# Turn off monitor
|
|
for i in `cat $OPFILE`; do swaymsg "output $i dpms off"; done
|
|
elif [ $1 == "wake" ]; then
|
|
# Kill additional counters that might have been started
|
|
/home/jpm/scripts/sway/idle.sh resume
|
|
# Restore output(s)
|
|
/home/jpm/scripts/sway/displays.pl
|
|
#for i in `cat $OPFILE`; do swaymsg "output $i dpms on"; done
|
|
# Lock screen
|
|
swaylock -c 323232
|
|
# Restore brightness level
|
|
/home/jpm/scripts/thinkpad/blc.pl = $(cat $BLFILE)
|
|
elif [ $1 == "resume" ]; then
|
|
# Kill warning
|
|
for i in `pgrep idlecountdown`; do kill $i; done
|
|
else
|
|
echo "Invalid argument: run, sleep or wake"
|
|
fi
|