summary refs log tree commit diff
path: root/upstart-jobs/avahi-daemon.nix
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2008-03-06 17:11:22 +0000
committerLudovic Courtès <ludo@gnu.org>2008-03-06 17:11:22 +0000
commit43a4353c67188825b8ecdd0fa24ba914171affd6 (patch)
tree89e11cbdb68f77386e1941136ac2893e51f6863d /upstart-jobs/avahi-daemon.nix
parentad1b5aca82195c6b0f622cba2441c5e0b15e183c (diff)
downloadnixpkgs-43a4353c67188825b8ecdd0fa24ba914171affd6.tar
nixpkgs-43a4353c67188825b8ecdd0fa24ba914171affd6.tar.gz
nixpkgs-43a4353c67188825b8ecdd0fa24ba914171affd6.tar.bz2
nixpkgs-43a4353c67188825b8ecdd0fa24ba914171affd6.tar.lz
nixpkgs-43a4353c67188825b8ecdd0fa24ba914171affd6.tar.xz
nixpkgs-43a4353c67188825b8ecdd0fa24ba914171affd6.tar.zst
nixpkgs-43a4353c67188825b8ecdd0fa24ba914171affd6.zip
Add support for the Avahi daemon.
The daemon starts correctly but, for some reason, clients fail
to connect to it.

svn path=/nixos/trunk/; revision=10999
Diffstat (limited to 'upstart-jobs/avahi-daemon.nix')
-rw-r--r--upstart-jobs/avahi-daemon.nix44
1 files changed, 44 insertions, 0 deletions
diff --git a/upstart-jobs/avahi-daemon.nix b/upstart-jobs/avahi-daemon.nix
new file mode 100644
index 00000000000..481bdb712bb
--- /dev/null
+++ b/upstart-jobs/avahi-daemon.nix
@@ -0,0 +1,44 @@
+{avahi, config, writeText, lib}:
+
+let
+
+  avahiDaemonConf = with config; writeText "avahi-daemon.conf" ''
+    [server]
+    host-name=${hostName}
+    browse-domains=${lib.concatStringsSep ", " browseDomains}
+    use-ipv4=${if ipv4 then "yes" else "no"}
+    use-ipv6=${if ipv6 then "yes" else "no"}
+
+    [wide-area]
+    enable-wide-area=${if wideArea then "yes" else "no"}
+
+    [publish]
+    disable-publishing=${if publishing then "no" else "yes"}
+  '';
+
+  avahiUid = (import ../system/ids.nix).uids.avahi;
+
+in
+
+{
+  name = "avahi-daemon";
+  
+  users = [
+    { name = "avahi";
+      uid = (import ../system/ids.nix).uids.avahi;
+      description = "`avahi-daemon' privilege separation user";
+      home = "/var/empty";
+    }
+  ];
+
+  job = ''
+    start on startup
+    stop on shutdown
+    respawn
+    script
+      export PATH="${avahi}/bin:${avahi}/sbin:$PATH"
+      exec ${avahi}/sbin/avahi-daemon --daemonize -f "${avahiDaemonConf}"
+    end script
+  '';
+
+}