24 lines
566 B
Nix
24 lines
566 B
Nix
{ pkgs, ... }:
|
|
{
|
|
services.swayidle =
|
|
let
|
|
lock-command = "${pkgs.lib.getExe' pkgs.systemd "loginctl"} lock-session";
|
|
in
|
|
{
|
|
enable = true;
|
|
systemdTargets = [ "graphical-session.target" ];
|
|
timeouts = [
|
|
{
|
|
timeout = 30;
|
|
command = lock-command;
|
|
}
|
|
{
|
|
timeout = 60 * 10;
|
|
command = "${pkgs.lib.getExe' pkgs.systemd "systemctl"} suspend";
|
|
}
|
|
];
|
|
events = {
|
|
before-sleep = "${pkgs.lib.getExe pkgs.playerctl} pause; ${lock-command}";
|
|
};
|
|
};
|
|
}
|