summary refs log tree commit diff
path: root/nixos/modules/config/networking.nix
diff options
context:
space:
mode:
authorPaul Colomiets <paul@colomiets.name>2014-07-03 01:59:35 +0300
committerWilliam A. Kennington III <william@wkennington.com>2014-08-28 11:39:03 -0700
commitadbb9ff7966c1c17588100d6afddda66eafc9453 (patch)
tree7110194f95ecfb7d938f230f0701221026dd3315 /nixos/modules/config/networking.nix
parent1851efa1a7143b3f1fad4c4f1e046ff418f69d0e (diff)
downloadnixlib-adbb9ff7966c1c17588100d6afddda66eafc9453.tar
nixlib-adbb9ff7966c1c17588100d6afddda66eafc9453.tar.gz
nixlib-adbb9ff7966c1c17588100d6afddda66eafc9453.tar.bz2
nixlib-adbb9ff7966c1c17588100d6afddda66eafc9453.tar.lz
nixlib-adbb9ff7966c1c17588100d6afddda66eafc9453.tar.xz
nixlib-adbb9ff7966c1c17588100d6afddda66eafc9453.tar.zst
nixlib-adbb9ff7966c1c17588100d6afddda66eafc9453.zip
dnsmasq: upgrade to 2.71, fixed dnsmasq module
* The module now has systemd config

* Add resolveLocalQueries option which sets up it as a dns server for
  local host (including reasonable setup of resolvconf)

* Add "dnsmasq" user for running daemon

* Enabled dbus and dnssec support for the package

Conflicts:
	nixos/modules/misc/ids.nix
Diffstat (limited to 'nixos/modules/config/networking.nix')
-rw-r--r--nixos/modules/config/networking.nix8
1 files changed, 7 insertions, 1 deletions
diff --git a/nixos/modules/config/networking.nix b/nixos/modules/config/networking.nix
index fd1e55f673ae..136a5bda7459 100644
--- a/nixos/modules/config/networking.nix
+++ b/nixos/modules/config/networking.nix
@@ -7,6 +7,9 @@ with lib;
 let
 
   cfg = config.networking;
+  dnsmasqResolve = config.services.dnsmasq.enable &&
+                   config.services.dnsmasq.resolveLocalQueries;
+  hasLocalResolver = config.services.bind.enable || dnsmasqResolve;
 
 in
 
@@ -74,9 +77,12 @@ in
             '' + optionalString cfg.dnsSingleRequest ''
               # only send one DNS request at a time
               resolv_conf_options='single-request'
-            '' + optionalString config.services.bind.enable ''
+            '' + optionalString hasLocalResolver ''
               # This hosts runs a full-blown DNS resolver.
               name_servers='127.0.0.1'
+            '' + optionalString dnsmasqResolve ''
+              dnsmasq_conf=/etc/dnsmasq-conf.conf
+              dnsmasq_resolv=/etc/dnsmasq-resolv.conf
             '';
       };