diff options
Diffstat (limited to 'nixos/modules/services/networking/dhcpcd.nix')
-rw-r--r-- | nixos/modules/services/networking/dhcpcd.nix | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/nixos/modules/services/networking/dhcpcd.nix b/nixos/modules/services/networking/dhcpcd.nix index cdba14be21f0..d283c7624335 100644 --- a/nixos/modules/services/networking/dhcpcd.nix +++ b/nixos/modules/services/networking/dhcpcd.nix @@ -153,10 +153,14 @@ in config = mkIf enableDHCP { - systemd.services.dhcpcd = + systemd.services.dhcpcd = let + cfgN = config.networking; + hasDefaultGatewaySet = (cfgN.defaultGateway != null && cfgN.defaultGateway.address != "") + || (cfgN.defaultGateway6 != null && cfgN.defaultGateway6.address != ""); + in { description = "DHCP Client"; - wantedBy = [ "network-online.target" ]; + wantedBy = optional (!hasDefaultGatewaySet) "network-online.target"; after = [ "network.target" ]; wants = [ "network.target" ]; |