gnu: glade: Add catalog and module search paths.
[jackhill/guix/guix.git] / gnu / packages / samba.scm
index 4eef7de..84e3893 100644 (file)
@@ -5,7 +5,7 @@
 ;;; Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 ;;; Copyright © 2017, 2018, 2020 Marius Bakke <mbakke@fastmail.com>
-;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
 ;;;
@@ -51,6 +51,7 @@
   #:use-module (gnu packages popt)
   #:use-module (gnu packages python)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml))
 (define-public cifs-utils
   (package
     (name "cifs-utils")
-    (version "6.10")
+    (version "6.11")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://download.samba.org/pub/linux-cifs/"
                            "cifs-utils/cifs-utils-" version ".tar.bz2"))
        (sha256 (base32
-                "19q4b5bzlxhn1hpi843xrp6f50d33w7m0rs26krkg5h3x742kz4j"))))
+                "1n98hy3zi4klm1xxhb840br1x7hhz0xx8kp5sch84kr07yd26ndq"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("autoconf" ,autoconf)
@@ -123,7 +124,7 @@ the Linux kernel CIFS client.")
     (build-system gnu-build-system)
     (arguments
      `(#:make-flags
-       (list "CC=gcc")
+       (list ,(string-append "CC=" (cc-for-target)))
        #:phases
        (modify-phases %standard-phases
          (replace 'configure
@@ -158,24 +159,34 @@ the Linux kernel CIFS client.")
                          '("AUTHORS" "INSTALL" "LICENSE" "README.md"))
                #t))))))
     (home-page "https://github.com/ndevilla/iniparser")
-    (synopsis "Standalone ini file parsing library")
+    (synopsis "Simple @file{.ini} configuration file parsing library")
     (description
-     "iniparser is a free stand-alone @code{ini} file parsing library (Windows
-configuration files).  It is written in portable ANSI C and should compile
-anywhere.")
+     "The iniParser C library reads and writes Windows-style @file{.ini}
+configuration files.  These are simple text files with a basic structure
+composed of sections, properties, and values.  While not expressive, they
+are easy to read, write, and modify.
+
+The library is small, thread safe, and written in portable ANSI C with no
+external dependencies.")
     (license x11)))
 
 (define-public samba
   (package
     (name "samba")
-    (version "4.11.6")
-    (source (origin
-             (method url-fetch)
-             (uri (string-append "https://download.samba.org/pub/samba/stable/"
-                                 "samba-" version ".tar.gz"))
-             (sha256
-              (base32
-               "0f7g17zw4nzk1bjnqqrr84hkyq9vn0k7zyim2i177xkigd6qyhwi"))))
+    (version "4.12.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://download.samba.org/pub/samba/stable/"
+                           "samba-" version ".tar.gz"))
+       (sha256
+        (base32 "09w7aap1cjc41ayhaksm1igc7p7gl40fad4a1l6q4ds9a2jbrb9z"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; TODO: also remove the bundled ‘third_party/popt’.
+           (delete-file-recursively "third_party/pyiso8601")
+           #t))))
     (build-system gnu-build-system)
     (arguments
      `(#:phases
@@ -222,13 +233,13 @@ anywhere.")
        ;; ("gamin" ,gamin)
        ("gpgme" ,gpgme)
        ("gnutls" ,gnutls)
-       ("iniparser" ,iniparser)
        ("jansson" ,jansson)
-       ("libaio" ,libaio)
        ("libarchive" ,libarchive)
        ("linux-pam" ,linux-pam)
        ("lmdb" ,lmdb)
        ("openldap" ,openldap)
+       ("perl" ,perl)
+       ("python" ,python)
        ("popt" ,popt)
        ("readline" ,readline)
        ("tdb" ,tdb)))
@@ -238,12 +249,15 @@ anywhere.")
        ("talloc" ,talloc)
        ("tevent" ,tevent)))
     (native-inputs
-     `(("docbook-xsl" ,docbook-xsl)    ;for generating manpages
-       ("xsltproc" ,libxslt)           ;ditto
-       ("rpcsvc-proto" ,rpcsvc-proto)  ;for 'rpcgen'
-       ("perl" ,perl)
+     `(("perl-parse-yapp" ,perl-parse-yapp)
        ("pkg-config" ,pkg-config)
-       ("python" ,python)))
+       ("python-iso8601" ,python-iso8601)
+       ("rpcsvc-proto" ,rpcsvc-proto)   ; for 'rpcgen'
+
+       ;; For generating man pages.
+       ("docbook-xml" ,docbook-xml-4.2)
+       ("docbook-xsl" ,docbook-xsl)
+       ("xsltproc" ,libxslt)))
     (home-page "https://www.samba.org/")
     (synopsis
      "The standard Windows interoperability suite of programs for GNU and Unix")
@@ -421,47 +435,51 @@ key-value pair databases and a real LDAP database.")
     (license lgpl3+)))
 
 (define-public ppp
-  (package
-    (name "ppp")
-    (version "2.4.8")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/paulusmack/ppp")
-                    (commit (string-append "ppp-" version))))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "1i88m79h6g3fzsb4yw3k8bq1grsx3hsyawm7id2vcaab0gfqzjjv"))))
-    (build-system gnu-build-system)
-    (arguments
-     '(#:tests? #f ; no check target
-       #:make-flags '("CC=gcc")
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'patch-Makefile
-           (lambda* (#:key inputs #:allow-other-keys)
-             (let ((libc    (assoc-ref inputs "libc"))
-                   (openssl (assoc-ref inputs "openssl"))
-                   (libpcap (assoc-ref inputs "libpcap")))
-               (substitute* "pppd/Makefile.linux"
-                 (("/usr/include/crypt\\.h")
-                  (string-append libc "/include/crypt.h"))
-                 (("/usr/include/openssl")
-                  (string-append openssl "/include/openssl"))
-                 (("/usr/include/pcap-bpf.h")
-                  (string-append libpcap "/include/pcap-bpf.h")))
-               #t))))))
-    (inputs
-     `(("libpcap" ,libpcap)
-       ("openssl" ,(@ (gnu packages tls) openssl))))
-    (synopsis "Implementation of the Point-to-Point Protocol")
-    (home-page "https://ppp.samba.org/")
-    (description
-     "The Point-to-Point Protocol (PPP) provides a standard way to establish
+  ;; This git commit contains unreleased fixes for CVE-2020-8597.
+  (let ((revision "1")
+        (commit "8d45443bb5c9372b4c6a362ba2f443d41c5636af"))
+    (package
+      (name "ppp")
+      (version (git-version "2.4.8" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/paulusmack/ppp")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "06cf8fb84l3h2zy5da4j7k2j1qjv2gfqn986sf43xgj75605aks2"))))
+      (build-system gnu-build-system)
+      (arguments
+       '(#:tests? #f                    ; no check target
+         #:make-flags '("CC=gcc")
+         #:phases
+         (modify-phases %standard-phases
+           (add-before 'configure 'patch-Makefile
+             (lambda* (#:key inputs #:allow-other-keys)
+               (let ((libc    (assoc-ref inputs "libc"))
+                     (openssl (assoc-ref inputs "openssl"))
+                     (libpcap (assoc-ref inputs "libpcap")))
+                 (substitute* "pppd/Makefile.linux"
+                   (("/usr/include/crypt\\.h")
+                    (string-append libc "/include/crypt.h"))
+                   (("/usr/include/openssl")
+                    (string-append openssl "/include/openssl"))
+                   (("/usr/include/pcap-bpf.h")
+                    (string-append libpcap "/include/pcap-bpf.h")))
+                 #t))))))
+      (inputs
+       `(("libpcap" ,libpcap)
+         ("openssl" ,(@ (gnu packages tls) openssl))))
+      (synopsis "Implementation of the Point-to-Point Protocol")
+      (home-page "https://ppp.samba.org/")
+      (description
+       "The Point-to-Point Protocol (PPP) provides a standard way to establish
 a network connection over a serial link.  At present, this package supports IP
 and IPV6 and the protocols layered above them, such as TCP and UDP.")
-    ;; pppd, pppstats and pppdump are under BSD-style notices.
-    ;; some of the pppd plugins are GPL'd.
-    ;; chat is public domain.
-    (license (list bsd-3 bsd-4 gpl2+ public-domain))))
+      ;; pppd, pppstats and pppdump are under BSD-style notices.
+      ;; some of the pppd plugins are GPL'd.
+      ;; chat is public domain.
+      (license (list bsd-3 bsd-4 gpl2+ public-domain)))))
+