From 201f27715e71d51df97569fcb3e224451a8ffb2a Mon Sep 17 00:00:00 2001 From: Egor Savkin Date: Wed, 15 Jan 2025 10:32:39 +0800 Subject: [PATCH] network: make network-setup service do not depend on udevd directly; fix typo with GRE tunnels Otherwise, when doing nixos switch to major changes (typically when stdenv changes), udevd service gets loaded after addresses, which causes addresses service to wait indefinitely for the device and fail. Signed-off-by: Egor Savkin --- nixos/modules/tasks/network-interfaces-scripted.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/modules/tasks/network-interfaces-scripted.nix b/nixos/modules/tasks/network-interfaces-scripted.nix index be9af22e58b3..c3323b45228d 100644 --- a/nixos/modules/tasks/network-interfaces-scripted.nix +++ b/nixos/modules/tasks/network-interfaces-scripted.nix @@ -77,6 +77,7 @@ let (hasAttr dev cfg.macvlans) || (hasAttr dev cfg.sits) || (hasAttr dev cfg.vlans) || + (hasAttr dev cfg.greTunnels) || (hasAttr dev cfg.vswitches) then [ "${dev}-netdev.service" ] else optional (!config.boot.isContainer) (subsystemDevice dev); @@ -94,7 +95,7 @@ let networkSetup = lib.mkIf needNetworkSetup { description = "Networking Setup"; - after = [ "network-pre.target" "systemd-udevd.service" "systemd-sysctl.service" ]; + after = [ "network-pre.target" ]; before = [ "network.target" "shutdown.target" ]; wants = [ "network.target" ]; # exclude bridges from the partOf relationship to fix container networking bug #47210