Feature/screensaver toggle instead of launch (#784)

* sceensaver-toggle and run if enabled using state file

* replace commands in menu and hyperidle

* migration file

* sed corrections

* added backup of changed files in migration

* review comments implemented

* hypridle config restore

* Use normal path style

* Use nerdfont icon for notification

* Make executable

* Allow a force start of screensaver so it can run even when disabled when manually triggered

* Add screensaver to system menu now that the toggle actually means toggle

* Known path without expansion spaces

* It should be an error return when it doesn't start

---------

Co-authored-by: Manuel <manuel.ramsaier@gmail.com>
Co-authored-by: David Heinemeier Hansson <david@hey.com>
This commit is contained in:
Manuel
2025-08-22 13:10:01 +02:00
committed by GitHub
parent 2a840ea085
commit 5381185121
3 changed files with 20 additions and 2 deletions

View File

@@ -3,6 +3,11 @@
# Exit early if screensave is already running
pgrep -f "alacritty --class Screensaver" && exit 0
# Allow screensaver to be turned off but also force started
if [[ -f ~/.local/state/omarchy/toggles/screensaver-off ]] && [[ $1 != "force" ]]; then
exit 1
fi
focused=$(hyprctl monitors -j | jq -r '.[] | select(.focused == true).name')
for m in $(hyprctl monitors -j | jq -r '.[] | .name'); do