diff --git a/nix/module-eval/core-toggle.nix b/nix/module-eval/core-toggle.nix index 00053bd94..573644db7 100644 --- a/nix/module-eval/core-toggle.nix +++ b/nix/module-eval/core-toggle.nix @@ -1545,7 +1545,9 @@ let name = "the default egress table logs the bridge's forwarded flows and blocks none"; ok = let - text = bare.services.hyperhive.network.egress.ruleset; + text = lib.head ( + lib.splitString "table bridge hive_egress {" bare.services.hyperhive.network.egress.ruleset + ); chain = lib.last (lib.splitString "chain forward" text); rules = lib.filter (l: l != "") (map lib.trim (lib.splitString "\n" chain)); idx = pat: lib.lists.findFirstIndex (lib.hasInfix pat) 1000 rules; @@ -1646,9 +1648,9 @@ let && lib.hasInfix "egress-pin %i" pin.serviceConfig.ExecStart && lib.hasInfix ''KERNEL=="vb-*"'' bare.services.udev.extraRules && lib.hasInfix "hive-egress-pin@%k.service" bare.services.udev.extraRules - && - bare.services.dnsmasq.settings.dhcp-script - == toString bare.services.hyperhive.network.egress.leaseScript + && lib.elem (toString bare.services.hyperhive.network.egress.leaseScript) ( + lib.toList bare.services.dnsmasq.settings.dhcp-script + ) && !(centralToggleOff.systemd.services ? "hive-egress-pin@") && !(centralToggleOff.systemd ? timers && centralToggleOff.systemd.timers ? hive-egress-pin); }