{ pkgs, ... }: { services.swayidle = { enable = true; timeouts = [ { timeout = 300; command = "${pkgs.swaylock}/bin/swaylock -f"; } { timeout = 600; command = "swaymsg 'output * dpms off'"; resumeCommand = "swaymsg 'output * dpms on"; } ]; events = [ { event = "before-sleep"; command = "${pkgs.swaylock}/bin/swaylock -f"; } { event = "lock"; command = "${pkgs.swaylock}/bin/swaylock -f"; } ]; }; }