aboutsummaryrefslogtreecommitdiff
path: root/users/ryan/modules/sketchybar/bar-config/plugins/caffeinate.sh
blob: ce4c4d2aa6adf0f0b473bc275428ac9231d090a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/env bash
# idle_inhibitor -> caffeinate (keeps display + system awake while "activated")
source "$CONFIG_DIR/colors.sh"
source "$CONFIG_DIR/icons.sh"

PIDFILE="/tmp/sketchybar_caffeinate.pid"
is_on() { [ -f "$PIDFILE" ] && kill -0 "$(cat "$PIDFILE")" 2>/dev/null; }

if [ "$1" = "toggle" ]; then
  if is_on; then
    kill "$(cat "$PIDFILE")" 2>/dev/null; rm -f "$PIDFILE"
  else
    caffeinate -d -i -s & echo $! > "$PIDFILE"
  fi
fi

if is_on; then
  sketchybar --set "$NAME" label="$IDLE_ON"  label.color=$TEXT       # activated
else
  sketchybar --set "$NAME" label="$IDLE_OFF" label.color=$TEXT_DIM   # deactivated
fi