anchor.diff:            in
             nameValuePair "network-addresses-${i.name}"
             { description = "Address configuration of ${i.name}";
  -            wantedBy = [ "network-interfaces.target" ];
  -            before = [ "network-interfaces.target" ];
  +            wantedBy = [ "network-setup.service" ];
  +            # propagate stop and reload from network-setup
  +            partOf = [ "network-setup.service" ];
  +            # order before network-setup because the routes that are configured
  +            # there may need ip addresses configured
  +            before = [ "network-setup.service" ];
               bindsTo = [ (subsystemDevice i.name) ];
               after = [ (subsystemDevice i.name) "network-pre.target" ];
               serviceConfig.Type = "oneshot";
  
positive.code:         networkSetup =
            { description = "Networking Setup";
  
              after = [ "network-interfaces.target" "network-pre.target" ];
              before = [ "network.target" ];
              wantedBy = [ "network.target" ];
  
              unitConfig.ConditionCapability = "CAP_NET_ADMIN";
  
              path = [ pkgs.iproute ];
  
              serviceConfig.Type = "oneshot";
              serviceConfig.RemainAfterExit = true;
  
              script =
                ''
  
negative.code:             deps = map subsystemDevice v.interfaces;
            in
            { description = "Bridge Interface ${n}";
              wantedBy = [ "network-setup.service" (subsystemDevice n) ];
              bindsTo = deps ++ optional v.rstp "mstpd.service";
              partOf = [ "network-setup.service" ] ++ optional v.rstp "mstpd.service";
              after = [ "network-pre.target" "mstpd.service" ] ++ deps
                ++ concatMap (i: [ "network-addresses-${i}.service" "network-link-${i}.service" ]) v.interfaces;
              before = [ "network-setup.service" (subsystemDevice n) ];
              serviceConfig.Type = "oneshot";
              serviceConfig.RemainAfterExit = true;
              path = [ pkgs.iproute ];
  