GNU bug report logs -
#32333
Add LDAP server (389-ds-base)
Previous Next
Reported by: Ricardo Wurmus <rekado <at> elephly.net>
Date: Tue, 31 Jul 2018 12:36:02 UTC
Severity: normal
Done: Ricardo Wurmus <ricardo.wurmus <at> mdc-berlin.de>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 32333 in the body.
You can then email your comments to 32333 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#32333
; Package
guix-patches
.
(Tue, 31 Jul 2018 12:36:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Ricardo Wurmus <rekado <at> elephly.net>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Tue, 31 Jul 2018 12:36:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi Guix,
this patch series adds the 389-ds-base directory server. This is the
foundation for an upcoming system test involving authentication via
LDAP.
--
Ricardo
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32333
; Package
guix-patches
.
(Tue, 31 Jul 2018 12:42:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 32333 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/networking.scm (net-snmp): New variable.
---
gnu/packages/networking.scm | 71 ++++++++++++++++++++++++++++++++++++-
1 file changed, 70 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 90967b9b1..57055a92e 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2017, 2018 Ludovic Courtès <ludo <at> gnu.org>
-;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado <at> elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado <at> elephly.net>
;;; Copyright © 2015 Mark H Weaver <mhw <at> netris.org>
;;; Copyright © 2015, 2016, 2017 Stefan Reichör <stefan <at> xsteve.at>
;;; Copyright © 2016 Raimon Grau <raimonster <at> gmail.com>
@@ -1965,3 +1965,72 @@ Features:
@item Destination IP blacklist
@end itemize")
(license license:asl2.0))))
+
+(define-public net-snmp
+ (package
+ (name "net-snmp")
+ (version "5.8")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/net-snmp/net-snmp/"
+ version "/net-snmp-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1pvajzj9gmj56dmwix0ywmkmy2pglh6nny646hkm7ghfhh03bz5j"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:parallel-build? #f ; Not supported.
+ #:test-target "test"
+ #:configure-flags
+ (list (string-append "LDFLAGS=-Wl,-rpath="
+ (assoc-ref %outputs "out")
+ "/lib"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-tests
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "testing/fulltests/support/simple_TESTCONF.sh"
+ (("NETSTAT=\"\"")
+ (string-append "NETSTAT=\"" (which "netstat") "\"")))
+ (substitute* "testing/fulltests/default/T065agentextend_simple"
+ (("/usr/bin/env") (which "env")))
+ (substitute* "testing/fulltests/default/T065agentextend_sh_simple"
+ (("/bin/sh") (which "sh")))
+ (substitute* "testing/fulltests/default/T115agentxperl_simple"
+ (("/usr/bin/env") (which "env")))
+ ;; FIXME: These tests fail for unknown reasons.
+ (for-each delete-file
+ '("testing/fulltests/default/T026snmpv3getSHAAES_simple"
+ "testing/fulltests/default/T027snmpv3Defaults_simple"
+ "testing/fulltests/default/T030snmpv3usercreation_simple"
+ "testing/fulltests/default/T049snmpv3informpriv_simple"
+ "testing/fulltests/default/T050snmpv3trap_simple"
+ "testing/fulltests/default/T070com2sec_simple"
+ "testing/fulltests/default/T071com2sec6_simple"))
+ #t))
+ (add-after 'unpack 'patch-Makefile.PL
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "Makefile.in"
+ (("Makefile.PL -NET")
+ (string-append "Makefile.PL PREFIX="
+ (assoc-ref outputs "out")
+ " INSTALLDIRS=site" " NO_PERLLOCAL=1"
+ " -NET")))
+ #t)))))
+ (inputs
+ `(("perl" ,perl)))
+ (native-inputs
+ `(("net-tools" ,net-tools)
+ ("coreutils" ,coreutils)
+ ("grep" ,grep)))
+ (home-page "http://www.net-snmp.org/")
+ (synopsis "Simple Network Management Protocol library and tools")
+ (description "The @dfn{Simple Network Management Protocol} (SNMP) is a
+widely used protocol for monitoring the health and welfare of network
+equipment (e.g. routers), computer equipment and even devices like UPSs.
+Net-SNMP is a suite of applications used to implement SNMP v1, SNMP v2c and
+SNMP v3 using both IPv4 and IPv6.")
+ (license (list license:bsd-3
+ (license:non-copyleft
+ "http://www.net-snmp.org/about/license.html"
+ "CMU/UCD copyright notice")))))
--
2.18.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32333
; Package
guix-patches
.
(Tue, 31 Jul 2018 12:42:03 GMT)
Full text and
rfc822 format available.
Message #11 received at 32333 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/python.scm (python-argparse-manpage): New variable.
---
gnu/packages/python.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index d4448f23a..3aadd9473 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -7221,6 +7221,25 @@ be set via config files and/or environment variables.")
(define-public python2-configargparse
(package-with-python2 python-configargparse))
+(define-public python-argparse-manpage
+ (package
+ (name "python-argparse-manpage")
+ (version "1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "argparse-manpage" version))
+ (sha256
+ (base32
+ "0blh31zns68anina9lba5wh81d1414s97p60zw5l0d0shhh0wj5p"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/praiskup/argparse-manpage")
+ (synopsis "Build manual page from Python's ArgumentParser object")
+ (description
+ "This package provides tools to build manual pages from Python's
+@code{ArgumentParser} object.")
+ (license license:asl2.0)))
+
(define-public python-contextlib2
(package
(name "python-contextlib2")
--
2.18.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32333
; Package
guix-patches
.
(Tue, 31 Jul 2018 12:42:03 GMT)
Full text and
rfc822 format available.
Message #14 received at 32333 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/openldap.scm (python-ldap): New variable.
---
gnu/packages/openldap.scm | 46 ++++++++++++++++++++++++++++++++++++---
1 file changed, 43 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm
index d952f412e..a331f06a0 100644
--- a/gnu/packages/openldap.scm
+++ b/gnu/packages/openldap.scm
@@ -22,9 +22,9 @@
(define-module (gnu packages openldap)
#:use-module (gnu packages autotools)
- #:use-module (gnu packages databases)
#:use-module (gnu packages compression)
#:use-module (gnu packages cyrus-sasl)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages groff)
#:use-module (gnu packages icu4c)
@@ -33,10 +33,11 @@
#:use-module (gnu packages python)
#:use-module (gnu packages tls)
#:use-module (gnu packages)
- #:use-module ((guix licenses) #:select (openldap2.8 lgpl2.1+))
+ #:use-module ((guix licenses) #:select (openldap2.8 lgpl2.1+ psfl))
#:use-module (guix packages)
#:use-module (guix download)
- #:use-module (guix build-system gnu))
+ #:use-module (guix build-system gnu)
+ #:use-module (guix build-system python))
(define-public openldap
(package
@@ -138,3 +139,42 @@ 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 lgpl2.1+)))
+
+(define-public python-ldap
+ (package
+ (name "python-ldap")
+ (version "3.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "python-ldap" version))
+ (sha256
+ (base32
+ "1i97nwfnraylyn0myxlf3vciicrf5h6fymrcff9c00k581wmx5s1"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'configure-openldap-locations
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((openldap (assoc-ref inputs "openldap")))
+ (setenv "SLAPD"
+ (string-append openldap
+ "/libexec/slapd"))
+ (setenv "SCHEMA"
+ (string-append openldap
+ "/etc/openldap/schema/")))
+ #t)))))
+ (inputs
+ `(("openldap" ,openldap)
+ ("cyrus-sasl" ,cyrus-sasl)
+ ("mit-krb5" ,mit-krb5)))
+ (propagated-inputs
+ `(("python-pyasn1" ,python-pyasn1)
+ ("python-pyasn1-modules" ,python-pyasn1-modules)))
+ (home-page "https://www.python-ldap.org/")
+ (synopsis "Python modules for implementing LDAP clients")
+ (description
+ "This package provides an object-oriented API to access LDAP directory
+servers from Python programs.")
+ (license psfl)))
--
2.18.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32333
; Package
guix-patches
.
(Tue, 31 Jul 2018 12:42:04 GMT)
Full text and
rfc822 format available.
Message #17 received at 32333 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/openldap.scm (389-ds-base): New variable.
---
gnu/packages/openldap.scm | 156 +++++++++++++++++++++++++++++++++++++-
1 file changed, 155 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm
index a331f06a0..12964e302 100644
--- a/gnu/packages/openldap.scm
+++ b/gnu/packages/openldap.scm
@@ -22,18 +22,31 @@
(define-module (gnu packages openldap)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages documentation)
+ #:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg)
+ #:use-module (gnu packages gnuzilla)
#:use-module (gnu packages groff)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages kerberos)
+ #:use-module (gnu packages libevent)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages networking)
+ #:use-module (gnu packages pcre)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages rsync)
+ #:use-module (gnu packages selinux)
+ #:use-module (gnu packages time)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages web)
#:use-module (gnu packages)
- #:use-module ((guix licenses) #:select (openldap2.8 lgpl2.1+ psfl))
+ #:use-module ((guix licenses) #:select (openldap2.8 lgpl2.1+ gpl3+ psfl))
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
@@ -178,3 +191,144 @@ an LDAP server.")
"This package provides an object-oriented API to access LDAP directory
servers from Python programs.")
(license psfl)))
+
+(define-public 389-ds-base
+ (package
+ (name "389-ds-base")
+ (version "1.4.0.13")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://releases.pagure.org/389-ds-base/"
+ "389-ds-base-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "01dm3zq3w5ami9pwcjbjz8wfbx9krjxybjrgc4wyhrxlzd90ylzj"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:modules ((srfi srfi-1)
+ (guix build gnu-build-system)
+ (guix build utils))
+ #:configure-flags
+ (list (string-append "--with-db="
+ (assoc-ref %build-inputs "bdb"))
+ (string-append "--with-sasl="
+ (assoc-ref %build-inputs "cyrus-sasl"))
+ (string-append "--with-netsnmp="
+ (assoc-ref %build-inputs "net-snmp"))
+ (string-append "--with-pcre="
+ (assoc-ref %build-inputs "pcre"))
+ (string-append "--with-selinux="
+ (assoc-ref %build-inputs "libselinux"))
+ ;; The Perl scripts are being removed in the 1.4.0 release.
+ ;; Building them would require packaging of the outdated Mozilla
+ ;; LDAP SDK (instead of OpenLDAP) and PerLDAP.
+ "--disable-perl")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-install-location-of-python-tools
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (get-python-version
+ ;; FIXME: copied from python-build-system
+ (lambda (python)
+ (let* ((version (last (string-split python #\-)))
+ (components (string-split version #\.))
+ (major+minor (take components 2)))
+ (string-join major+minor "."))))
+ (pythondir (string-append
+ out "/lib/python"
+ (get-python-version (assoc-ref inputs "python"))
+ "/site-packages/")))
+ ;; Install directory must be on PYTHONPATH.
+ (setenv "PYTHONPATH"
+ (string-append (getenv "PYTHONPATH")
+ ":" pythondir))
+ ;; Install directory must exist.
+ (mkdir-p pythondir)
+ (substitute* "src/lib389/setup.py"
+ (("/usr") out))
+ (substitute* "Makefile.am"
+ (("setup.py install --skip-build" m)
+ (string-append m " --prefix=" out
+ " --root=/ --single-version-externally-managed"))))
+ #t))
+ (add-after 'build 'build-python-tools
+ (lambda* (#:key make-flags #:allow-other-keys)
+ ;; Set DETERMINISTIC_BUILD to override the embedded mtime in pyc
+ ;; files.
+ (setenv "DETERMINISTIC_BUILD" "1")
+ ;; Use deterministic hashes for strings, bytes, and datetime
+ ;; objects.
+ (setenv "PYTHONHASHSEED" "0")
+ (apply invoke "make" "lib389" make-flags)
+ #t))
+ (add-after 'install 'install-python-tools
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (apply invoke "make" "lib389-install" make-flags)
+ #t))
+ (add-after 'install-python-tools 'wrap-python-tools
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (path (getenv "PYTHONPATH")))
+ (for-each (lambda (file)
+ (wrap-program (string-append out file)
+ `("PYTHONPATH" ":" prefix (,path))))
+ '("/sbin/dsconf"
+ "/sbin/dscreate"
+ "/sbin/dsctl"
+ "/sbin/dsidm"
+ "/bin/ds-logpipe.py"
+ "/bin/ds-replcheck"
+ "/bin/readnsstate")))
+ #t)))))
+ (inputs
+ `(("bdb" ,bdb)
+ ("cyrus-sasl" ,cyrus-sasl)
+ ("gnutls" ,gnutls)
+ ("httpd" ,httpd)
+ ("icu4c" ,icu4c)
+ ("libevent" ,libevent)
+ ("libselinux" ,libselinux)
+ ("linux-pam" ,linux-pam)
+ ("mit-krb5" ,mit-krb5)
+ ("net-snmp" ,net-snmp)
+ ("nspr" ,nspr)
+ ("nss" ,nss)
+ ("openldap" ,openldap)
+ ("pcre" ,pcre)
+ ("perl" ,perl)
+ ("python" ,python)
+ ("python-pyasn1" ,python-pyasn1)
+ ("python-pyasn1-modules" ,python-pyasn1-modules)
+ ("python-pytest" ,python-pytest)
+ ("python-dateutil" ,python-dateutil)
+ ("python-six" ,python-six)
+ ("python-argcomplete" ,python-argcomplete)
+ ("python-argparse-manpage" ,python-argparse-manpage)
+ ("python-ldap" ,python-ldap)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("doxygen" ,doxygen)
+ ("gettext" ,gettext-minimal)
+ ("libtool" ,libtool)
+ ("rsync" ,rsync)
+ ("pkg-config" ,pkg-config)))
+ (home-page "https://directory.fedoraproject.org")
+ (synopsis "Enterprise-class LDAP server")
+ (description "389ds is an enterprise-class LDAP server. It is hardened by
+real-world use, is full-featured, and supports multi-master replication.
+
+Other features include:
+
+@enumerate
+@item Online, zero downtime, LDAP-based update of schema, configuration, and
+ management including @dfn{Access Control Information} (ACIs);
+@item Asynchronous Multi-Master Replication, to provide fault tolerance and
+ high write performance;
+@item Extensive documentation;
+@item Secure authentication and transport (TLS, and SASL);
+@item LDAPv3 compliant server.
+@end enumerate\n")
+ ;; GPLv3+ with OpenSSL linking exception.
+ (license gpl3+)))
--
2.18.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32333
; Package
guix-patches
.
(Tue, 31 Jul 2018 20:20:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 32333 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hello Ricardo,
Ricardo Wurmus <ricardo.wurmus <at> mdc-berlin.de> writes:
> * gnu/packages/networking.scm (net-snmp): New variable.
> ---
> gnu/packages/networking.scm | 71 ++++++++++++++++++++++++++++++++++++-
> 1 file changed, 70 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index 90967b9b1..57055a92e 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -1,6 +1,6 @@
> ;;; GNU Guix --- Functional package management for GNU
> ;;; Copyright © 2014, 2017, 2018 Ludovic Courtès <ludo <at> gnu.org>
> -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado <at> elephly.net>
> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado <at> elephly.net>
> ;;; Copyright © 2015 Mark H Weaver <mhw <at> netris.org>
> ;;; Copyright © 2015, 2016, 2017 Stefan Reichör <stefan <at> xsteve.at>
> ;;; Copyright © 2016 Raimon Grau <raimonster <at> gmail.com>
> @@ -1965,3 +1965,72 @@ Features:
> @item Destination IP blacklist
> @end itemize")
> (license license:asl2.0))))
> +
> +(define-public net-snmp
[…]
This patch seems like what we want in
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=32268 \o/
Thanks,
Oleg.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32333
; Package
guix-patches
.
(Wed, 01 Aug 2018 09:32:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 32333 <at> debbugs.gnu.org (full text, mbox):
Hi Oleg and Marius,
> Ricardo Wurmus <ricardo.wurmus <at> mdc-berlin.de> writes:
>
>> * gnu/packages/networking.scm (net-snmp): New variable.
>> ---
>> gnu/packages/networking.scm | 71 ++++++++++++++++++++++++++++++++++++-
>> 1 file changed, 70 insertions(+), 1 deletion(-)
>>
>> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
>> index 90967b9b1..57055a92e 100644
>> --- a/gnu/packages/networking.scm
>> +++ b/gnu/packages/networking.scm
>> @@ -1,6 +1,6 @@
>> ;;; GNU Guix --- Functional package management for GNU
>> ;;; Copyright © 2014, 2017, 2018 Ludovic Courtès <ludo <at> gnu.org>
>> -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado <at> elephly.net>
>> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado <at> elephly.net>
>> ;;; Copyright © 2015 Mark H Weaver <mhw <at> netris.org>
>> ;;; Copyright © 2015, 2016, 2017 Stefan Reichör <stefan <at> xsteve.at>
>> ;;; Copyright © 2016 Raimon Grau <raimonster <at> gmail.com>
>> @@ -1965,3 +1965,72 @@ Features:
>> @item Destination IP blacklist
>> @end itemize")
>> (license license:asl2.0))))
>> +
>> +(define-public net-snmp
>
> […]
>
> This patch seems like what we want in
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=32268 \o/
Thanks for pointing this out!
I’ll combine this with both your patches and put it in networking.scm.
--
Ricardo
Reply sent
to
Ricardo Wurmus <ricardo.wurmus <at> mdc-berlin.de>
:
You have taken responsibility.
(Thu, 16 Aug 2018 15:10:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Ricardo Wurmus <rekado <at> elephly.net>
:
bug acknowledged by developer.
(Thu, 16 Aug 2018 15:10:02 GMT)
Full text and
rfc822 format available.
Message #28 received at 32333-done <at> debbugs.gnu.org (full text, mbox):
> * gnu/packages/openldap.scm (389-ds-base): New variable.
> ---
Pushed to the “master” branch with commit f51d8e4cb70cf1be549337e327bcc61253d4eeb3.
--
Ricardo
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 14 Sep 2018 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 6 years and 284 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.