feat(desktop): add hyprlock and hypridle (task 0026)

Add a session-lock screen and idle management to the Hyprland-native
subdirectory, enabled through the desktop aggregator.

hyprlock draws through the compositor session-lock protocol, themed by
Stylix, with a centered field and clock. Super+X locks directly through a
guarded launch so the key works without the idle daemon.

hypridle locks on idle and powers the displays off, with tunable timeouts,
and locks before every suspend. Lid-close routes through logind to suspend,
which the pre-sleep lock covers, so the lid lands at a locked screen.
This commit was merged in pull request #18.
This commit is contained in:
2026-07-22 18:37:32 -04:00
parent 900cb6b8e8
commit 005928ef88
4 changed files with 162 additions and 5 deletions

View File

@@ -10,6 +10,8 @@ in
# any one of them while the single flag above enables the whole desktop.
config = lib.mkIf cfg.enable {
modules.desktop.hyprland.enable = lib.mkDefault true;
modules.desktop.hyprlock.enable = lib.mkDefault true;
modules.desktop.hypridle.enable = lib.mkDefault true;
modules.desktop.login.enable = lib.mkDefault true;
modules.desktop.mako.enable = lib.mkDefault true;
modules.desktop.rofi.enable = lib.mkDefault true;