gnu: icecat: Update to 78.10.0-guix0-preview1 [security fixes].
[jackhill/guix/guix.git] / gnu / packages / avahi.scm
index 94af0a1..b2aeead 100644 (file)
@@ -1,6 +1,8 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
-  #:use-module (gnu packages databases)
+  #:use-module (gnu packages dbm)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages glib)
   #:use-module (gnu packages libdaemon)
+  #:use-module (gnu packages libevent)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages glib)
   #:use-module (gnu packages xml))
 
 (define-public avahi
   (package
     (name "avahi")
-    (version "0.7")
-    (home-page "http://avahi.org")
+    (version "0.8")
+    (home-page "https://avahi.org")
     (source (origin
              (method url-fetch)
              (uri (string-append home-page "/download/avahi-"
                                  version ".tar.gz"))
              (sha256
               (base32
-               "0128n7jlshw4bpx0vg8lwj8qwdisjxi7mvniwfafgnkzzrfrpaap"))
-             (patches (search-patches "avahi-localstatedir.patch"))))
+               "1npdixwxxn3s9q1f365x9n9rc5xgfz39hxf23faqvlrklgbhj0q6"))
+             (patches (search-patches "avahi-localstatedir.patch"))
+             (modules '((guix build utils)))
+             (snippet
+              '(begin
+                 ;; Fix version constraint in the avahi-libevent pkg-config file.
+                 ;; This can be removed for Avahi versions > 0.8.
+                 (substitute* "avahi-libevent.pc.in"
+                   (("libevent-2\\.1\\.5")
+                    "libevent >= 2.1.5"))
+                 #t))))
     (build-system gnu-build-system)
     (arguments
      '(#:configure-flags '("--with-distro=none"
+                           "--disable-static"
                            "--localstatedir=/var" ; for the DBus socket
                            "--disable-python"
                            "--disable-mono"
                            "--disable-doxygen-doc"
                            "--disable-xmltoman"
                            "--enable-tests"
-                           "--disable-qt3" "--disable-qt4"
+                           "--disable-qt4" "--disable-qt5"
                            "--disable-gtk" "--disable-gtk3"
                            "--enable-compat-libdns_sd")))
     (inputs
-     `(("expat" ,expat)
-       ("glib" ,glib)
-       ("dbus" ,dbus)
+     `(("dbus" ,dbus)
+       ("expat" ,expat)
        ("gdbm" ,gdbm)
-       ("libcap" ,libcap)            ;to enable chroot support in avahi-daemon
-       ("libdaemon" ,libdaemon)))
+       ("glib" ,glib)
+       ("libcap" ,libcap-2.31)       ;to enable chroot support in avahi-daemon
+       ("libdaemon" ,libdaemon)
+       ("libevent" ,libevent)))
     (native-inputs
-     `(("intltool" ,intltool)
+     `(("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")
        ("pkg-config" ,pkg-config)))
     (synopsis "Implementation of mDNS/DNS-SD protocols")
@@ -76,39 +91,25 @@ DNS-SD (for \"DNS-Based Service Discovery\") protocols.")
 (define-public nss-mdns
   (package
     (name "nss-mdns")
-    (version "0.10")
+    (version "0.14.1")
+    (home-page "https://github.com/lathiat/nss-mdns")
     (source (origin
               (method url-fetch)
-              (uri (list
-                    (string-append
-                     "mirror://debian/pool/main/n/nss-mdns/nss-mdns_"
-                     version ".orig.tar.gz")
-                    "http://pkgs.fedoraproject.org/repo/pkgs/nss-mdns/nss-mdns-0.10.tar.gz/03938f17646efbb50aa70ba5f99f51d7/nss-mdns-0.10.tar.gz"
-
-                    ;; This used to be the canonical URL but it vanished.
-                    ;; See <http://bugs.gnu.org/18704>.
-                    ;; (string-append
-                    ;;  "http://0pointer.de/lennart/projects/nss-mdns/nss-mdns-"
-                    ;;  version ".tar.gz")
-                    ))
+              (uri (string-append home-page "/releases/download/v" version "/"
+                                  name "-" version ".tar.gz"))
               (sha256
                (base32
-                "0vgs6j0qsl0mwzh5a0m0bykr7x6bx79vnbyn0r3q289rghp3qs0y"))
-              (file-name (string-append name "-" version ".tar.gz"))))
+                "134wdr0n9cm5ab4g6dwq76lvzqns9dcylr470i2xxjimnw0l22d2"))))
     (build-system gnu-build-system)
     (arguments
-     ;; The Avahi daemon socket is expected by src/Makefile.am to be at
-     ;; "$(localstatedir)/run/avahi-daemon/socket", so set $(localstatedir)
-     ;; appropriately.
-     '(#:configure-flags '("--localstatedir=/var")))
-
-    ;; XXX: Stale URL, missing replacement.  See <http://bugs.gnu.org/18704>.
-    (home-page "http://0pointer.de/lennart/projects/nss-mdns/")
-
-    (synopsis "The mDNS Name Service Switch (NSS) plug-in")
+     ;; The Avahi daemon socket is expected by 'configure.ac' to be at
+     ;; "$(localstatedir)/run/avahi-daemon/socket", but nowadays it lives in
+     ;; /run/avahi-daemon/socket.  Remove the "$(localstatedir)" bit.
+     '(#:configure-flags '("AVAHI_SOCKET=/run/avahi-daemon/socket")))
+    (synopsis "Multicast DNS Name Service Switch (@dfn{NSS}) plug-in")
     (description
-     "Nss-mdns is a plug-in for the Name Service Switch (NSS) functionality
-of the GNU C Library, providing host name resolution via Multicast DNS (mDNS).
-It allows for name resolution by programs in the ad-hoc mDNS domain
-'.local'.")
+     "Nss-mdns is a plug-in for the GNU C Library's Name Service Switch
+(@dfn{NSS}) that resolves host names via multicast DNS (@dfn{mDNS}).  It is
+most often used in home and other small networks without a local name server,
+to resolve host names in the @samp{.local} top-level domain.")
     (license lgpl2.1+)))