diff --git a/hypridle/hypridle.conf b/hypridle/hypridle.conf new file mode 100644 index 0000000..4d2f080 --- /dev/null +++ b/hypridle/hypridle.conf @@ -0,0 +1,30 @@ +general { + # Dedup: never stack a second hyprlock on top of an existing one + lock_cmd = pidof hyprlock || hyprlock + # Lock before the machine sleeps, restore monitors on wake + before_sleep_cmd = loginctl lock-session + after_sleep_cmd = niri msg action power-on-monitors + # Honor idle inhibitors (video, meetings, presentations) instead of + # blanking/locking through them — this is the swayidle behavior we lost. + ignore_dbus_inhibit = false + ignore_systemd_inhibit = false +} + +# 5 min: blank the monitors +listener { + timeout = 300 + on-timeout = niri msg action power-off-monitors + on-resume = niri msg action power-on-monitors +} + +# 10 min: lock (drives lock_cmd via logind) +listener { + timeout = 600 + on-timeout = loginctl lock-session +} + +# 30 min: suspend-then-hibernate +listener { + timeout = 1800 + on-timeout = systemctl suspend-then-hibernate +} diff --git a/install.sh b/install.sh index c81514d..597b219 100755 --- a/install.sh +++ b/install.sh @@ -32,6 +32,7 @@ ln -sf "$(pwd)/wofi/config" ~/.config/wofi/config ln -sf "$(pwd)/wofi/style.css" ~/.config/wofi/style.css mkdir -p ~/.config/hypr ln -sf "$(pwd)/hyprlock/hyprlock.conf" ~/.config/hypr/hyprlock.conf +ln -sf "$(pwd)/hypridle/hypridle.conf" ~/.config/hypr/hypridle.conf ln -sf "$(pwd)/fish/config.fish" ~/.config/fish/config.fish ln -sf "$(pwd)/starship/starship.toml" ~/.config/starship.toml ln -sf "$(pwd)/alacritty/alacritty.toml" ~/.config/alacritty/alacritty.toml diff --git a/niri/config.kdl b/niri/config.kdl index 33246e3..7458191 100644 --- a/niri/config.kdl +++ b/niri/config.kdl @@ -41,7 +41,7 @@ spawn-at-startup "mako" spawn-at-startup "awww-daemon" spawn-at-startup "nm-applet" "--indicator" spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1" -spawn-at-startup "swayidle" "-w" "timeout" "300" "niri msg action power-off-monitors" "timeout" "600" "hyprlock" "timeout" "1800" "systemctl suspend-then-hibernate" "before-sleep" "hyprlock" +spawn-at-startup "hypridle" spawn-at-startup "wl-paste" "--watch" "cliphist" "store" spawn-at-startup "wlsunset" "-l" "49.2" "-L" "-123.1" spawn-at-startup "xwayland-satellite" diff --git a/packages.txt b/packages.txt index cac1d80..7ae7195 100644 --- a/packages.txt +++ b/packages.txt @@ -11,7 +11,7 @@ wl-clipboard brightnessctl pamixer hyprlock -swayidle +hypridle ttf-jetbrains-mono-nerd polkit-gnome fprintd