29 lines
643 B
Nix
29 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";
|
|
|
|
}
|