about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2008-03-17 13:41:54 +0000
committerLudovic Courtès <ludo@gnu.org>2008-03-17 13:41:54 +0000
commita47057c615cda385fb275a8c0d69053f9913115b (patch)
tree21886ed94c8b6bdd7f82b3818de89a4fcadaee5f
parent85f6478f934ca25d32ebea0c5a3806db8492ab8d (diff)
downloadnixlib-a47057c615cda385fb275a8c0d69053f9913115b.tar
nixlib-a47057c615cda385fb275a8c0d69053f9913115b.tar.gz
nixlib-a47057c615cda385fb275a8c0d69053f9913115b.tar.bz2
nixlib-a47057c615cda385fb275a8c0d69053f9913115b.tar.lz
nixlib-a47057c615cda385fb275a8c0d69053f9913115b.tar.xz
nixlib-a47057c615cda385fb275a8c0d69053f9913115b.tar.zst
nixlib-a47057c615cda385fb275a8c0d69053f9913115b.zip
Add `nss-mdns', an NSS plug-in for the `.local' domain, using mDNS.
svn path=/nixpkgs/trunk/; revision=11160
-rw-r--r--pkgs/tools/networking/nss-mdns/default.nix33
-rw-r--r--pkgs/top-level/all-packages.nix4
2 files changed, 37 insertions, 0 deletions
diff --git a/pkgs/tools/networking/nss-mdns/default.nix b/pkgs/tools/networking/nss-mdns/default.nix
new file mode 100644
index 000000000000..1aaf0dc5f41d
--- /dev/null
+++ b/pkgs/tools/networking/nss-mdns/default.nix
@@ -0,0 +1,33 @@
+{ fetchurl, stdenv, avahi }:
+
+stdenv.mkDerivation rec {
+  name = "nss-mdns-0.10";
+  src = fetchurl {
+    url = "http://0pointer.de/lennart/projects/nss-mdns/${name}.tar.gz";
+    sha256 = "0vgs6j0qsl0mwzh5a0m0bykr7x6bx79vnbyn0r3q289rghp3qs0y";
+  };
+
+  configureFlags = "--enable-avahi";
+
+  # Note: Although `nss-mdns' works by talking to `avahi-daemon', it
+  # doesn't depend on the Avahi libraries.  Instead, it contains
+  # hand-written D-Bus code to talk to the Avahi daemon.
+
+  buildInput = [ avahi ];
+
+  patchPhase = ''
+    substituteInPlace "src/Makefile.in"						\
+      --replace 'AVAHI_SOCKET=\"$(localstatedir)/run/avahi-daemon/socket\"'	\
+                'AVAHI_SOCKET=\"${avahi}/run/avahi-daemon/socket\"'
+  '';
+
+  meta = {
+    description = ''`nss-mdns' is a plugin for the GNU Name Service Switch
+                    (NSS) functionality of the GNU C Library (glibc) providing
+		    host name resolution via Multicast DNS (mDNS), effectively
+		    allowing name resolution by common Unix/Linux programs in
+		    the ad-hoc mDNS domain `.local'.'';
+    homepage = http://0pointer.de/lennart/projects/nss-mdns/;
+    license = "LGPLv2+";
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0334c0cced54..04675a9463f1 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -814,6 +814,10 @@ rec {
     inherit fetchurl stdenv libcap;
   };
 
+  nssmdns = import ../tools/networking/nss-mdns {
+    inherit fetchurl stdenv avahi;
+  };
+
   openssh = import ../tools/networking/openssh {
     inherit fetchurl stdenv zlib openssl pam perl;
     pamSupport = true;