diff --git a/home/modules/desktop/niri/default.nix b/home/modules/desktop/niri/default.nix index 58351a2..9ca4110 100644 --- a/home/modules/desktop/niri/default.nix +++ b/home/modules/desktop/niri/default.nix @@ -11,6 +11,7 @@ ../../fuzzel ../../mako ../../shikane + ../../swayidle ../../waybar ]; @@ -21,6 +22,7 @@ fuzzel.enable = lib.mkDefault true; mako.enable = lib.mkDefault true; shikane.enable = lib.mkDefault true; + swayidle.enable = lib.mkDefault true; waybar.enable = lib.mkDefault true; home = { diff --git a/home/modules/swayidle/default.nix b/home/modules/swayidle/default.nix new file mode 100644 index 0000000..036059e --- /dev/null +++ b/home/modules/swayidle/default.nix @@ -0,0 +1,31 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + cfg = config.swayidle; +in +{ + options.swayidle = { + enable = lib.mkEnableOption "swayidle"; + timeout = lib.mkOption { + type = lib.types.ints.positive; + default = 900; + }; + }; + + config = lib.mkIf cfg.enable { + services.swayidle = { + enable = true; + timeouts = [ + { + inherit (cfg) timeout; + command = "${lib.getExe' pkgs.systemd "systemctl"} suspend"; + } + ]; + }; + }; +} diff --git a/modules/desktop/logind.nix b/modules/desktop/logind.nix index dfb78ed..d8f3e8e 100644 --- a/modules/desktop/logind.nix +++ b/modules/desktop/logind.nix @@ -4,10 +4,6 @@ options.desktop.logind.enable = lib.mkEnableOption "logind desktop settings"; config = lib.mkIf config.desktop.logind.enable { - services.logind.settings.Login = { - HandleLidSwitch = "suspend"; - IdleAction = "suspend"; - IdleActionSec = 1800; - }; + services.logind.settings.Login.HandleLidSwitch = "suspend"; }; }