{ config, lib, pkgs, ... }:
with lib;
let
  cfg = config.modules.desktop.sway;
in
  {
    config = mkIf config.modules.desktop.sway.enable {
    services.swayidle = {
      enable = true;
      timeouts = [
        {
          timeout = 300;
          command = "${pkgs.swaylock}/bin/swaylock -f";
        }
        {
          timeout = 600;
          command = ''${pkgs.sway}/bin/swaymsg  "output * power off"'';
          resumeCommand =''${pkgs.sway}/bin/swaymsg  "output * power on"'';
        }
      ];
      events = [
        {
          event = "before-sleep";
          command = "${pkgs.swaylock}/bin/swaylock -f";
        }
        {
          event = "lock";
          command = "${pkgs.swaylock}/bin/swaylock -f";
        }
      ];
    };
  };
}
