aboutsummaryrefslogtreecommitdiff
path: root/users/ryan/modules/sketchybar/bar-config/plugins/caffeinate.sh
diff options
context:
space:
mode:
Diffstat (limited to 'users/ryan/modules/sketchybar/bar-config/plugins/caffeinate.sh')
-rwxr-xr-xusers/ryan/modules/sketchybar/bar-config/plugins/caffeinate.sh21
1 files changed, 21 insertions, 0 deletions
diff --git a/users/ryan/modules/sketchybar/bar-config/plugins/caffeinate.sh b/users/ryan/modules/sketchybar/bar-config/plugins/caffeinate.sh
new file mode 100755
index 0000000..ce4c4d2
--- /dev/null
+++ b/users/ryan/modules/sketchybar/bar-config/plugins/caffeinate.sh
@@ -0,0 +1,21 @@
1#!/usr/bin/env bash
2# idle_inhibitor -> caffeinate (keeps display + system awake while "activated")
3source "$CONFIG_DIR/colors.sh"
4source "$CONFIG_DIR/icons.sh"
5
6PIDFILE="/tmp/sketchybar_caffeinate.pid"
7is_on() { [ -f "$PIDFILE" ] && kill -0 "$(cat "$PIDFILE")" 2>/dev/null; }
8
9if [ "$1" = "toggle" ]; then
10 if is_on; then
11 kill "$(cat "$PIDFILE")" 2>/dev/null; rm -f "$PIDFILE"
12 else
13 caffeinate -d -i -s & echo $! > "$PIDFILE"
14 fi
15fi
16
17if is_on; then
18 sketchybar --set "$NAME" label="$IDLE_ON" label.color=$TEXT # activated
19else
20 sketchybar --set "$NAME" label="$IDLE_OFF" label.color=$TEXT_DIM # deactivated
21fi