guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/01: gnu: Add bind


From: John Darrington
Subject: 01/01: gnu: Add bind
Date: Tue, 20 Sep 2016 16:56:46 +0000 (UTC)

jmd pushed a commit to branch master
in repository guix.

commit be86b7adbc18b4861e5e3493799ab7bb41556640
Author: John Darrington <address@hidden>
Date:   Sun Sep 11 00:03:10 2016 +0200

    gnu: Add bind
    
    * gnu/packags/dns.scm (bind): New variable, (bind-utils): Remove.
---
 gnu/packages/dns.scm |   80 +++++++++++++++++++++++++++++---------------------
 1 file changed, 46 insertions(+), 34 deletions(-)

diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 819343a..57fd183 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2016 Mark H Weaver <address@hidden>
 ;;; Copyright © 2016 Ricardo Wurmus <address@hidden>
 ;;; Copyright © 2016 Efraim Flashner <address@hidden>
+;;; Copyright © 2016 John Darrington <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -63,56 +64,67 @@ and BOOTP/TFTP for network booting of diskless machines.")
     ;; Source files only say GPL2 and GPL3 are allowed.
     (license (list license:gpl2 license:gpl3))))
 
-(define-public bind-utils
+(define-public bind
   (package
-    (name "bind-utils")
-    (version "9.10.4")
+    (name "bind")
+    (version "9.10.4-P2")
     (source (origin
               (method url-fetch)
-              (uri (string-append "http://ftp.isc.org/isc/bind9/"; version
-                                  "/bind-" version ".tar.gz"))
+              (uri (string-append
+                    "ftp://ftp.isc.org/isc/bind9/"; version "/" name "-"
+                    version ".tar.gz"))
               (sha256
                (base32
-                "0mmhzi4483mkak47wj255a36g3v0yilxwfwlbckr1hssinri5m7q"))))
+                "08s48h5p916ixjiwgar4w6skc20crmg7yj1y7g89c083zvw8lnxk"))))
     (build-system gnu-build-system)
+    (outputs `("out" "utils"))
     (inputs
      ;; it would be nice to add GeoIP and gssapi once there is package
      `(("libcap" ,libcap)
        ("libxml2" ,libxml2)
-       ("mysql" ,mysql)
        ("openssl" ,openssl)
-       ("perl" ,perl)
        ("p11-kit" ,p11-kit)))
+    (native-inputs `(("perl" ,perl)
+                     ("net-tools" ,net-tools)))
     (arguments
-     `(#:tests? #f ; no test phase implemented
-       #:configure-flags
+     `(#:configure-flags
        (list (string-append "--with-openssl="
                             (assoc-ref %build-inputs "openssl"))
-             (string-append "--with-dlz-mysql="
-                            (assoc-ref %build-inputs "mysql"))
              (string-append "--with-pkcs11="
                             (assoc-ref %build-inputs "p11-kit")))
-       #:modules ((srfi srfi-1)
-                  (srfi srfi-26)
-                  ,@%gnu-build-system-modules)
        #:phases
-       (let ((libs '("dns" "isc" "bind9" "isccfg" "lwres"))
-             (bins '("dig" "nsupdate")))
-         (modify-phases %standard-phases
-           (replace 'build
-             (lambda _
-               (every (lambda (dir)
-                        (zero? (system* "make" "-C" dir)))
-                      (append (map (cut string-append "lib/" <>) libs)
-                              (map (cut string-append "bin/" <>) bins)))))
-           (replace 'install
-             (lambda _
-               (every (lambda (dir)
-                        (zero? (system* "make" "-C" dir "install")))
-                      (map (cut string-append "bin/" <>) bins))))))))
-    (home-page "https://www.isc.org/downloads/bind/";)
-    (synopsis "Tools for querying nameservers")
-    (description
-     "These tools, included with ISC BIND, are useful for analysis of DNS
-issues or verification of configuration.")
+       (modify-phases %standard-phases
+         (add-after 'strip 'move-to-utils
+           (lambda _
+             (for-each
+              (lambda (file)
+                (let ((target  (string-append (assoc-ref %outputs "utils") 
file))
+                      (src  (string-append (assoc-ref %outputs "out") file)))
+                  (mkdir-p (dirname target))
+                  (link src target)
+                  (delete-file src)))
+              '("/bin/dig" "/bin/delv" "/bin/nslookup" "/bin/host" 
"/bin/nsupdate"
+                "/share/man/man1/dig.1"
+                "/share/man/man1/host.1"
+                "/share/man/man1/nslookup.1"
+                "/share/man/man1/nsupdate.1"))))
+         ;; When and if guix provides user namespaces for the build process,
+         ;; then the following can be uncommented and the subsequent 
"force-test"
+         ;; will not be necessary.
+         ;;
+         ;;   (add-before 'check 'set-up-loopback
+         ;;     (lambda _
+         ;;          (system "bin/tests/system/ifconfig.sh up")))
+         (replace 'check
+           (lambda _
+             (zero? (system* "make" "force-test")))))))
+    (synopsis "An implementation of the Domain Name System")
+    (description "BIND is an implementation of the Domain Name System (DNS)
+protocols for the Internet.  It is a reference implementation of those
+protocols, but it is also production-grade software, suitable for use in
+high-volume and high-reliability applications. The name BIND stands for
+\"Berkeley Internet Name Domain\", because the software originated in the early
+1980s at the University of California at Berkeley.")
+    (home-page "https://www.isc.org/downloads/bind";)
     (license (list license:isc))))
+



reply via email to

[Prev in Thread] Current Thread [Next in Thread]