refactor(hypridle): inline idle timeout

This commit is contained in:
2026-10-11 17:19:05 -04:00
parent 05589824df
commit 5f8f0bcb5f

View File

@@ -6,8 +6,6 @@
}: }:
# hypridle: idle-triggered locking and display power management. # hypridle: idle-triggered locking and display power management.
let let
cfg = config.modules.desktop.session.hyprland.hypridle; # NOLINT(let_order)
# The guard drops the call when a locker is already up, so no idle trigger # The guard drops the call when a locker is already up, so no idle trigger
# stacks a second hyprlock over the first. # stacks a second hyprlock over the first.
lockCmd = "${pkgs.procps}/bin/pidof hyprlock || ${hyprlock}"; lockCmd = "${pkgs.procps}/bin/pidof hyprlock || ${hyprlock}";
@@ -17,18 +15,10 @@ let
in in
{ {
options.modules.desktop.session.hyprland.hypridle = { options.modules.desktop.session.hyprland.hypridle.enable =
enable = lib.mkEnableOption "hypridle idle management"; lib.mkEnableOption "hypridle idle management";
lockTimeout = lib.mkOption { config = lib.mkIf config.modules.desktop.session.hyprland.hypridle.enable {
type = lib.types.ints.positive;
default = 300;
description = "Seconds of inactivity before the screen locks.";
};
};
config = lib.mkIf cfg.enable {
# Closing the lid suspends, and every suspend locks first through the # Closing the lid suspends, and every suspend locks first through the
# before_sleep_cmd below, so the lid always lands at a locked screen. # before_sleep_cmd below, so the lid always lands at a locked screen.
services.logind.settings.Login.HandleLidSwitch = "suspend"; services.logind.settings.Login.HandleLidSwitch = "suspend";
@@ -47,7 +37,7 @@ in
listener = [ listener = [
# Lock on idle. # Lock on idle.
{ {
timeout = cfg.lockTimeout; timeout = 300;
on-timeout = "loginctl lock-session"; on-timeout = "loginctl lock-session";
} }
]; ];