Modify system menu

This commit is contained in:
2025-11-29 16:57:38 -08:00
parent e2701eda3e
commit 45269c72e4
2 changed files with 10 additions and 25 deletions

View File

@ -1,10 +1,10 @@
#!/usr/bin/env zsh
local CACHE_PATH="${HOME}/.cache/system-sleep-menu"
let is_active=0
systemctl --user --quiet is-active swayidle.service && is_active=1
pgrep swayidle >/dev/null 2>&1 \
&& swayidle_state="Enabled" \
|| swayidle_state="Disabled"
local swayidle_state
(( is_active )) && swayidle_state='Enabled' || swayidle_state='Disabled'
choice="$(fuzzel --index -d -p "Cur: ${swayidle_state} > " <<'EOF'
Enable
@ -16,25 +16,10 @@ EOF
case "${choice}" in
0)
if [[ "${swayidle_state}" == 'Disabled' ]]; then
local cmd_cache=(${(0)"$(<"${CACHE_PATH}")"})
{
set -x
cd "${cmd_cache[1]}"
exec ${=${cmd_cache[2]}}
} &
disown
fi
systemctl --user start swayidle.service
;;
1)
pgrep_output=(${(ps: :)"$(pgrep -fa swayidle)"})
if [[ "${swayidle_state}" = 'Enabled' ]]; then
local si_pid="${pgrep_output[1]}"
local si_pwd="$(readlink "/proc/${si_pid}/cwd")"
local si_cmd="${pgrep_output:1}"
printf '%s\0%s' "${si_pwd}" "${si_cmd}" >"${CACHE_PATH}"
pkill swayidle
fi
systemctl --user stop swayidle.service
;;
esac