From a671f4765b28a6e08c8aae48e79f2929dff67796 Mon Sep 17 00:00:00 2001 From: budimanjojo Date: Mon, 24 Feb 2025 13:10:54 +0700 Subject: [PATCH] feat(system): add workaround for `networkd` breaks `frr` on reload Signed-off-by: budimanjojo --- .../_modules/services/frr/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/system/hosts/budimanjojo-firewall/_modules/services/frr/default.nix b/system/hosts/budimanjojo-firewall/_modules/services/frr/default.nix index ecd890ac..e335e46c 100644 --- a/system/hosts/budimanjojo-firewall/_modules/services/frr/default.nix +++ b/system/hosts/budimanjojo-firewall/_modules/services/frr/default.nix @@ -2,8 +2,14 @@ { # TODO: everytime networkd is being reconfigured, frr will be broken because networkd deletes nexthops it doesn't manage # needs https://github.com/NixOS/nixpkgs/pull/376630 to be merged first though, maybe in the next nixos release - # for now, a simple `systemctl restart frr` will do # systemd.network.config.networkConfig.ManageForeignNextHops = false; + + # for now, this will do + environment.etc."systemd/networkd.conf.d/frr.conf".text = '' + [Network] + ManageForeignNextHops=false + ''; + services.frr = { bgpd.enable = true; config = ''