anchor.diff:      services.openldap = {
   
         enable = mkOption {
  +        type = types.bool;
           default = false;
           description = "
             Whether to enable the ldap server.
  
positive.code:       };
  
        user = mkOption {
          default = "openldap";
          description = "User account under which slapd runs.";
        };
  
        group = mkOption {
          default = "openldap";
          description = "Group account under which slapd runs.";
        };
  
        extraConfig = mkOption {
          default = "";
          description = "
            sldapd.conf configuration
  
negative.code:       preStart = ''
          mkdir -p /var/run/slapd
          chown -R ${cfg.user}:${cfg.group} /var/run/slapd
          mkdir -p ${cfg.dataDir}
          chown -R ${cfg.user}:${cfg.group} ${cfg.dataDir}
        '';
        serviceConfig.ExecStart = "${openldap}/libexec/slapd -u ${cfg.user} -g ${cfg.group} -d 0 -f ${configFile}";
      };
  
      users.extraUsers.openldap =
        { name = cfg.user;
          group = cfg.group;
          uid = config.ids.uids.openldap;
        };
  
      users.extraGroups.openldap =
        { name = cfg.group;
          gid = config.ids.gids.openldap;
        };
  
    };
  }
  