openldap: change default ldapi directory

By default, this is /run/ldapi, which is not compatible with systemd's
runtime directories. Change it to /run/slapd/ldapi (in library and
server). This makes `ldapi:///` work as a default socket again.
This commit is contained in:
Kai Wohlfahrt 2022-06-04 16:39:35 +01:00 committed by Jörg Thalheim
parent 6e6f33ad83
commit d1f55ce0a4
2 changed files with 5 additions and 4 deletions

View File

@ -29,6 +29,7 @@ in {
environment.etc."openldap/root_password".text = "notapassword";
services.openldap = {
enable = true;
urlList = [ "ldapi:///" "ldap://" ];
settings = {
children = {
"cn=schema".includes = [

View File

@ -93,18 +93,18 @@ stdenv.mkDerivation rec {
"ac_cv_func_memcmp_working=yes"
] ++ lib.optional stdenv.isFreeBSD "--with-pic";
makeFlags = [
NIX_CFLAGS_COMPILE = [ "-DLDAPI_SOCK=\"/run/slapd/ldapi\"" ];
makeFlags= [
"CC=${stdenv.cc.targetPrefix}cc"
"STRIP=" # Disable install stripping as it breaks cross-compiling. We strip binaries anyway in fixupPhase.
"STRIP_OPTS="
"prefix=${placeholder "out"}"
"sysconfdir=${placeholder "out"}/etc"
"systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
# contrib modules require these
"moduledir=${placeholder "out"}/lib/modules"
"mandir=${placeholder "out"}/share/man"
] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
# Can be unconditional, doing it like this to prevent a mass rebuild.
"STRIP_OPTS="
];
extraContribModules = [