nixos-config/system/desktop/suspend.nix
2019-10-24 02:24:33 +02:00

30 lines
643 B
Nix

{ pkgs, config, ... }:
{
systemd.services.screenlock = {
before = [ "sleep.target" ];
requiredBy = [ "sleep.target" ];
environment =
let
display = if (config.services.xserver.display != null)
then config.services.xserver.display
else 0;
in {
DISPLAY = ":${toString display}";
};
script = ''
${pkgs.xlockmore}/bin/xlock -mode life1d -size 1 &
sleep 4
'';
serviceConfig = {
SyslogIdentifier = "screenlock";
# Type = "simple";
Type = "forking";
User = config.users.users.mainUser.name;
};
};
services.logind.lidSwitch = "suspend";
}