1{
2 config,
3 lib,
4 pkgs,
5 ...
6}:
7let
8 cfg = config.services.wlock;
9in
10{
11 options = {
12 services.wlock = {
13 enable = lib.mkEnableOption "wlock, a Wayland sessionlocker using the ext-session-lock-v1 protocol";
14
15 package = lib.mkPackageOption pkgs "wlock" { };
16 };
17 };
18
19 config = lib.mkIf cfg.enable {
20 security.wrappers.wlock = {
21 owner = "root";
22 group = "root";
23 # mirror upstream chmod of 4755
24 setuid = true;
25 setgid = false;
26 source = lib.getExe cfg.package;
27 };
28 };
29
30 meta.maintainers = [ lib.maintainers.fliegendewurst ];
31}