From 8c9b6d932a7b8ce5feca240abbe8b2232c699b05 Mon Sep 17 00:00:00 2001 From: Jan Malakhovski Date: Thu, 12 Jun 2014 23:34:40 +0000 Subject: nixos: add dhcpcd.persistent option --- nixos/modules/services/networking/dhcpcd.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'nixos/modules/services/networking/dhcpcd.nix') diff --git a/nixos/modules/services/networking/dhcpcd.nix b/nixos/modules/services/networking/dhcpcd.nix index 89aa9bdb6b6..09c271bfbfb 100644 --- a/nixos/modules/services/networking/dhcpcd.nix +++ b/nixos/modules/services/networking/dhcpcd.nix @@ -64,7 +64,7 @@ let # ${config.systemd.package}/bin/systemctl start ip-down.target #fi - ${config.networking.dhcpcd.runHook} + ${cfg.runHook} ''; in @@ -75,6 +75,18 @@ in options = { + networking.dhcpcd.persistent = mkOption { + type = types.bool; + default = false; + description = '' + Whenever to leave interfaces configured on dhcpcd daemon + shutdown. Set to true if you have your root or store mounted + over the network or this machine accepts SSH connections + through DHCP interfaces and clients should be notified when + it shuts down. + ''; + }; + networking.dhcpcd.denyInterfaces = mkOption { type = types.listOf types.str; default = []; @@ -139,7 +151,7 @@ in serviceConfig = { Type = "forking"; PIDFile = "/run/dhcpcd.pid"; - ExecStart = "@${dhcpcd}/sbin/dhcpcd dhcpcd --quiet --config ${dhcpcdConf}"; + ExecStart = "@${dhcpcd}/sbin/dhcpcd dhcpcd --quiet ${optionalString cfg.persistent "--persistent"} --config ${dhcpcdConf}"; ExecReload = "${dhcpcd}/sbin/dhcpcd --rebind"; Restart = "always"; }; -- cgit 1.4.1