Files
Nomarchy/core/system/scripts/nomarchy-toggle-idle
Bernardo Magri dc3346bc55
Some checks failed
Check / eval-and-lint (push) Has been cancelled
feat: implement hybrid declarative state with automatic Nix sync
2026-05-31 20:09:12 +01:00

29 lines
798 B
Bash
Executable File

#!/usr/bin/env bash
set -e
# Toggles the idle daemon (hypridle) between enabled and disabled.
# Hybrid: updates state.json and provides instant feedback.
STATE_DIR="$HOME/.config/nomarchy"
STATE_FILE="$STATE_DIR/state.json"
mkdir -p "$STATE_DIR"
# Initialize if doesn't exist
[[ ! -f $STATE_FILE ]] && echo "{}" > "$STATE_FILE"
if [[ $NOMARCHY_TOGGLE_IDLE == "false" ]]; then
NEW_VALUE="true"
setsid hypridle >/dev/null 2>&1 &
notify-send -u low " Now locking computer when idle"
else
NEW_VALUE="false"
pkill -x hypridle
notify-send -u low " Stop locking computer when idle"
fi
nomarchy-state-write idle "$NEW_VALUE" --type bool
echo "Idle state set to $NEW_VALUE. Environment will be fully updated on next rebuild."
pkill -RTMIN+9 waybar # Signal waybar if needed