nixos/legacy_modules/desktop/hyprland/hypridle.nix

34 lines
830 B
Nix
Raw Normal View History

2025-04-15 23:48:15 +02:00
{
config,
pkgs,
...
2025-03-09 20:30:33 +01:00
}: let
sleep_cmd = "${config.programs.hyprland.package}/bin/hyprctl dispatch dpms off";
wake_cmd = "${config.programs.hyprland.package}/bin/hyprctl dispatch dpms on";
lock_cmd = "pidof ${pkgs.hyprlock}/bin/hyprlock || ${pkgs.hyprlock}/bin/hyprlock";
2025-04-15 23:48:15 +02:00
in {
2025-03-09 20:30:33 +01:00
config = {
2025-04-15 23:48:15 +02:00
fireproof.home-manager.services.hypridle = {
enable = true;
settings = {
general = {
inherit lock_cmd;
before_sleep_cmd = "${pkgs.systemd}/bin/loginctl lock-session";
after_sleep_cmd = sleep_cmd;
};
listener = [
{
timeout = 60 * 5;
on-timeout = lock_cmd;
}
{
timeout = 60 * 15;
on-timeout = sleep_cmd;
on-resume = wake_cmd;
}
];
};
};
};
2025-03-09 20:30:33 +01:00
}