{ pkgs, config, ... }: { xdg.configFile."swaylock/config" = { source = ../../configs/swaylock/config; }; # https://github.com/nix-community/home-manager/pull/2610 # won't be needed for ever systemd.user.services.swayidle = { Unit.PartOf = [ "sway-session.target" ]; Install.WantedBy = [ "sway-session.target" ]; Service = { Environment = "PATH=${pkgs.bash}/bin:${config.wayland.windowManager.sway.package}/bin"; ExecStart = '' ${pkgs.swayidle}/bin/swayidle -w \ timeout 300 "${pkgs.swaylock}/bin/swaylock" \ timeout 300 'swaymsg "output * dpms off"' \ resume 'swaymsg "output * dpms on"' \ before-sleep "${pkgs.swaylock}/bin/swaylock" ''; Restart = "on-failure"; }; }; }