nixos-config/modules/home/hypridle.nix

51 lines
1.5 KiB
Nix

{ inputs, ... }:
{
services.hypridle = {
enable = true;
package = inputs.hypridle.packages.x86_64-linux.default;
settings = {
general = {
lock_cmd = "pidof hyprlock || hyprlock";
before_sleep_cmd = "loginctl lock-session";
};
# battery timers
listener = [
{
timeout = "30";
on-timeout = "systemd-ac-power || light -S 0 && light -s razer/0003:1532:02B6.0003/backlight -S 0";
on-resume = "systemd-ac-power || light -I && light -s razer/0003:1532:02B6.0003/backlight -S 40";
}
{
timeout = "120";
on-timeout = "systemd-ac-power || loginctl lock-session && niri msg action power-off-monitors";
}
{
timeout = "300";
on-timeout = "systemd-ac-power || loginctl lock-session && systemctl suspend";
}
# ac power timers
{
timeout = "60";
on-timeout = "systemd-ac-power && light -S 0 && light -s razer/0003:1532:02B6.0003/backlight -S 0";
on-resume = "systemd-ac-power && light -I && light -s razer/0003:1532:02B6.0003/backlight -S 40";
}
{ timeout = "180";
on-timeout = "systemd-ac-power && loginctl lock-session"; }
{ timeout = "300";
on-timeout = "systemd-ac-power && loginctl lock-session && niri msg action power-off-monitors"; }
{
timeout = "900";
on-timeout = "systemd-ac-power && loginctl lock-session && systemctl suspend";
}
];
};
};
}