1{ config, pkgs, lib, ... }:
2
3with lib;
4
5let
6 cfg = config.programs.xss-lock;
7in
8{
9 options.programs.xss-lock = {
10 enable = mkEnableOption "xss-lock";
11 lockerCommand = mkOption {
12 example = "xlock";
13 type = types.string;
14 description = "Locker to be used with xsslock";
15 };
16 };
17
18 config = mkIf cfg.enable {
19 systemd.user.services.xss-lock = {
20 description = "XSS Lock Daemon";
21 wantedBy = [ "graphical-session.target" ];
22 partOf = [ "graphical-session.target" ];
23 serviceConfig.ExecStart = "${pkgs.xss-lock}/bin/xss-lock ${cfg.lockerCommand}";
24 };
25 };
26}