(define-module (glicid packages openldap) #:use-module (guix build-system gnu) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) #:use-module (gnu packages autotools) #:use-module (gnu packages compression) #:use-module (gnu packages databases) #:use-module (gnu packages kerberos) #:use-module (gnu packages libevent) #:use-module (gnu packages linux) #:use-module ((gnu packages openldap) #:prefix gnu:) #:use-module (gnu packages password-utils) #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) ) (define-public openldap (package (name "openldap") (version "2.6.0") (source (origin (method url-fetch) (uri (list (string-append "https://www.openldap.org/software/download/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "http://gpl.savoirfairelinux.net/pub/mirrors/openldap/" "openldap-release/openldap-" version ".tgz") (string-append "http://repository.linagora.org/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "ftp://ftp.ntua.gr/mirror/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror-hk.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror.lyrahosting.com/OpenLDAP/" "openldap-release/openldap-" version ".tgz") )) (sha256 ( base32 "0kqswk8pxgnlibh0kz6py3a2x3yh9pfk6pyr2nx9lgjpmh75h75p" )) ) ) (build-system gnu-build-system) (inputs `( ("argon2", argon2) ("cyrus-sasl", cyrus-sasl) ("libevent", libevent) ("libgcrypt", libgcrypt) ("libltdl", libltdl) ("lz4", lz4) ("openssl", openssl) ("perl", perl) ("pkg-config", pkg-config) ("snappy", snappy) ("unixodbc", unixodbc) ("wiredtiger", wiredtiger) ("zlib", zlib) )) (native-inputs `( ("bdb-5.3", bdb-5.3) ("groff", groff) ("libtool", libtool) )) (arguments '( ; this is needed because the make check does not work inside guix #:tests? #f #:configure-flags '( "--enable-debug" "--enable-dynamic" "--enable-syslog" "--enable-ipv6" "--enable-local" "--enable-slapd" "--enable-dynacl" "--enable-aci" "--enable-cleartext" "--enable-crypt" "--enable-spasswd" "--enable-modules" "--enable-rlookups" "--enable-slapi" "--enable-backends=mod" "--enable-overlays=mod" "--enable-argon2" "--enable-balancer" "--disable-static" "--enable-shared" "--with-tls=openssl" ) #:make-flags '("STRIP=") #:phases (modify-phases %standard-phases (add-before 'build 'make-depend (lambda* (#:key input #:allow-other-keys) (invoke "make" "depend") ) ) ) )) (synopsis "Implementation of the Lightweight Directory Access Protocol") (description "OpenLDAP is a free implementation of the Lightweight Directory Access Protocol.") (license license:openldap2.8) (home-page "https://www.openldap.org/") ) ) (define-public openldap-2.5.7 (package (inherit openldap) (name "openldap") (version "2.5.7") (source (origin (method url-fetch) (uri (list (string-append "https://www.openldap.org/software/download/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "http://gpl.savoirfairelinux.net/pub/mirrors/openldap/" "openldap-release/openldap-" version ".tgz") (string-append "http://repository.linagora.org/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "ftp://ftp.ntua.gr/mirror/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror-hk.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror.lyrahosting.com/OpenLDAP/" "openldap-release/openldap-" version ".tgz") )) (sha256 ( base32 "1ayr76sa5hjwldqzis5v71sbp88hd3hysc00gw1raqn33c05g5za" )) ) ) ) ) (define-public openldap-2.5.9 (package (inherit openldap) (name "openldap") (version "2.5.9") (source (origin (method url-fetch) (uri (list (string-append "https://www.openldap.org/software/download/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "http://gpl.savoirfairelinux.net/pub/mirrors/openldap/" "openldap-release/openldap-" version ".tgz") (string-append "http://repository.linagora.org/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "ftp://ftp.ntua.gr/mirror/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror-hk.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror.koddos.net/OpenLDAP/" "openldap-release/openldap-" version ".tgz") (string-append "https://mirror.lyrahosting.com/OpenLDAP/" "openldap-release/openldap-" version ".tgz") )) (sha256 ( base32 "17pvwrj27jybbmjqpv0p7kd2qa4i6jnp134lz7cxa0sqrbs153n0" )) ) ) ) ) (define-public nss-pam-ldapd (package (name "nss-pam-ldapd") (version "0.9.12") (source (origin (method url-fetch) (uri (string-append "https://arthurdejong.org/nss-pam-ldapd/nss-pam-ldapd-" version ".tar.gz")) (sha256 (base32 "050fzcmxmf6y15dlcffc4gxr3wkk7fliqqwhlwqzbjwk8vkn3mn6")) )) (build-system gnu-build-system) (arguments `( #:configure-flags (list (string-append "--with-pam-seclib-dir=" (assoc-ref %outputs "out") "/lib/security/") "--with-ldap-conf-file=/etc/nslcd.conf" ) #:phases (modify-phases %standard-phases (add-after 'unpack 'override-nslcd.conf-install-path (lambda* (#:key outputs #:allow-other-keys) (substitute* "Makefile.in" ( ("\\$\\(DESTDIR\\)\\$\\(NSLCD_CONF_PATH\\)") (string-append (assoc-ref outputs "out") "/etc/nslcd.conf.example") ) ) ) ) ) ) ) (inputs `( ("linux-pam", linux-pam) ("mit-krb5", mit-krb5) ("openldap", openldap) ("python", python) )) (home-page "https://arthurdejong.org/nss-pam-ldapd") (synopsis "NSS and PAM modules for LDAP") (description "nss-pam-ldapd provides a @dfn{Name Service Switch} (NSS) module that allows your LDAP server to provide user account, group, host name, alias, netgroup, and basically any other information that you would normally get from @file{/etc} flat files or NIS. It also provides a @dfn{Pluggable Authentication Module} (PAM) to do identity and authentication management with an LDAP server.") (license license:lgpl2.1+) ) )