diff options
author | Domen Kožar <domen@dev.si> | 2015-01-26 10:33:57 +0100 |
---|---|---|
committer | Domen Kožar <domen@dev.si> | 2015-01-26 10:33:57 +0100 |
commit | 9df1bdefef09000c797f514feeb750321dba6dbc (patch) | |
tree | b59bfe4ca2cb1e49dfca192a479affd7b1468bab /nixos/modules/services/databases | |
parent | e16630d40ef5e74245f290e13f6932a11978d406 (diff) | |
parent | a4af32eec3685bc1b1cd7807fbfdbe94813ee06e (diff) | |
download | nixpkgs-9df1bdefef09000c797f514feeb750321dba6dbc.tar nixpkgs-9df1bdefef09000c797f514feeb750321dba6dbc.tar.gz nixpkgs-9df1bdefef09000c797f514feeb750321dba6dbc.tar.bz2 nixpkgs-9df1bdefef09000c797f514feeb750321dba6dbc.tar.lz nixpkgs-9df1bdefef09000c797f514feeb750321dba6dbc.tar.xz nixpkgs-9df1bdefef09000c797f514feeb750321dba6dbc.tar.zst nixpkgs-9df1bdefef09000c797f514feeb750321dba6dbc.zip |
Merge pull request #5982 from robberer/pkgs/openldap
openldap: add dataDir, use cfg.user and cfg.group to run slapd
Diffstat (limited to 'nixos/modules/services/databases')
-rw-r--r-- | nixos/modules/services/databases/openldap.nix | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/nixos/modules/services/databases/openldap.nix b/nixos/modules/services/databases/openldap.nix index 63e970a563e..29bdb201752 100644 --- a/nixos/modules/services/databases/openldap.nix +++ b/nixos/modules/services/databases/openldap.nix @@ -20,6 +20,7 @@ in services.openldap = { enable = mkOption { + type = types.bool; default = false; description = " Whether to enable the ldap server. @@ -43,16 +44,25 @@ in }; user = mkOption { + type = types.string; default = "openldap"; description = "User account under which slapd runs."; }; group = mkOption { + type = types.string; default = "openldap"; description = "Group account under which slapd runs."; }; + dataDir = mkOption { + type = types.string; + default = "/var/db/openldap"; + description = "The database directory."; + }; + extraConfig = mkOption { + type = types.lines; default = ""; description = " sldapd.conf configuration @@ -76,22 +86,22 @@ in preStart = '' mkdir -p /var/run/slapd chown -R ${cfg.user}:${cfg.group} /var/run/slapd - mkdir -p /var/db/openldap - chown -R ${cfg.user}:${cfg.group} /var/db/openldap + mkdir -p ${cfg.dataDir} + chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir} ''; - serviceConfig.ExecStart = "${openldap}/libexec/slapd -u openldap -g openldap -d 0 -f ${configFile}"; + serviceConfig.ExecStart = "${openldap}/libexec/slapd -u ${cfg.user} -g ${cfg.group} -d 0 -f ${configFile}"; }; - users.extraUsers = optionalAttrs (cfg.user == "openldap") (singleton - { name = "openldap"; + users.extraUsers.openldap = + { name = cfg.user; group = cfg.group; uid = config.ids.uids.openldap; - }); + }; - users.extraGroups = optionalAttrs (cfg.group == "openldap") (singleton - { name = "openldap"; + users.extraGroups.openldap = + { name = cfg.group; gid = config.ids.gids.openldap; - }); + }; }; } |