From 655a04a8fa43507f1642be4732926b2d1cec5128 Mon Sep 17 00:00:00 2001 From: h7x4 Date: Sun, 5 Mar 2023 16:53:26 +0100 Subject: nixos/kanidm: add package option Signed-off-by: h7x4 --- nixos/modules/services/security/kanidm.nix | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'nixos/modules/services/security') diff --git a/nixos/modules/services/security/kanidm.nix b/nixos/modules/services/security/kanidm.nix index 6fb9f71a489e..d8a99dee59f4 100644 --- a/nixos/modules/services/security/kanidm.nix +++ b/nixos/modules/services/security/kanidm.nix @@ -69,6 +69,8 @@ in enableServer = lib.mkEnableOption (lib.mdDoc "the Kanidm server"); enablePam = lib.mkEnableOption (lib.mdDoc "the Kanidm PAM and NSS integration"); + package = lib.mkPackageOptionMD pkgs "kanidm" {}; + serverSettings = lib.mkOption { type = lib.types.submodule { freeformType = settingsFormat.type; @@ -222,7 +224,7 @@ in } ]; - environment.systemPackages = lib.mkIf cfg.enableClient [ pkgs.kanidm ]; + environment.systemPackages = lib.mkIf cfg.enableClient [ cfg.package ]; systemd.services.kanidm = lib.mkIf cfg.enableServer { description = "kanidm identity management daemon"; @@ -237,7 +239,7 @@ in StateDirectory = "kanidm"; StateDirectoryMode = "0700"; RuntimeDirectory = "kanidmd"; - ExecStart = "${pkgs.kanidm}/bin/kanidmd server -c ${serverConfigFile}"; + ExecStart = "${cfg.package}/bin/kanidmd server -c ${serverConfigFile}"; User = "kanidm"; Group = "kanidm"; @@ -270,7 +272,7 @@ in CacheDirectory = "kanidm-unixd"; CacheDirectoryMode = "0700"; RuntimeDirectory = "kanidm-unixd"; - ExecStart = "${pkgs.kanidm}/bin/kanidm_unixd"; + ExecStart = "${cfg.package}/bin/kanidm_unixd"; User = "kanidm-unixd"; Group = "kanidm-unixd"; @@ -302,7 +304,7 @@ in partOf = [ "kanidm-unixd.service" ]; restartTriggers = [ unixConfigFile clientConfigFile ]; serviceConfig = { - ExecStart = "${pkgs.kanidm}/bin/kanidm_unixd_tasks"; + ExecStart = "${cfg.package}/bin/kanidm_unixd_tasks"; BindReadOnlyPaths = [ "/nix/store" @@ -346,7 +348,7 @@ in }) ]; - system.nssModules = lib.mkIf cfg.enablePam [ pkgs.kanidm ]; + system.nssModules = lib.mkIf cfg.enablePam [ cfg.package ]; system.nssDatabases.group = lib.optional cfg.enablePam "kanidm"; system.nssDatabases.passwd = lib.optional cfg.enablePam "kanidm"; @@ -365,7 +367,7 @@ in description = "Kanidm server"; isSystemUser = true; group = "kanidm"; - packages = with pkgs; [ kanidm ]; + packages = [ cfg.package ]; }; }) (lib.mkIf cfg.enablePam { -- cgit 1.4.1