From 420f5869495342b43ff91d144151481fa6c9c2f9 Mon Sep 17 00:00:00 2001 From: Robert James Hernandez Date: Mon, 3 Nov 2025 21:07:55 +0000 Subject: [PATCH 1/2] frr: localstatedir=/var so frr_libstatedir is properly set When localstatedir=/run/frr it results in frr_libstatedir=/lib/frr. This is due to truncating of localstatedir given the following case: https://github.com/FRRouting/frr/blob/ce66553bafc1806d745ea0724caca362d7335851/configure.ac#L59 And then localstatedir="" is later used to set frr_libstatedir="\${localstatedir}/lib/frr": https://github.com/FRRouting/frr/blob/ce66553bafc1806d745ea0724caca362d7335851/configure.ac#L94 Setting localstatedir=/var (the recommended value) from the warning: https://github.com/FRRouting/frr/blob/ce66553bafc1806d745ea0724caca362d7335851/configure.ac#L61 This correctly set frr_libstatedir to /var/lib/frr and fixes the errors during frr startup. --- pkgs/by-name/fr/frr/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/fr/frr/package.nix b/pkgs/by-name/fr/frr/package.nix index 40055508f80e..b2cda103219a 100644 --- a/pkgs/by-name/fr/frr/package.nix +++ b/pkgs/by-name/fr/frr/package.nix @@ -158,7 +158,7 @@ stdenv.mkDerivation (finalAttrs: { "--enable-multipath=${toString numMultipath}" "--enable-user=frr" "--enable-vty-group=frrvty" - "--localstatedir=/run/frr" + "--localstatedir=/var" "--sbindir=${placeholder "out"}/libexec/frr" "--sysconfdir=/etc/frr" "--with-clippy=${finalAttrs.clippy-helper}/bin/clippy" From 9d92c1d8a5737bddc2d2a953dc23e0d696152ee1 Mon Sep 17 00:00:00 2001 From: Morgan Jones Date: Wed, 5 Nov 2025 18:44:48 -0800 Subject: [PATCH 2/2] frr: clean up config warnings - sysconfdir should not have /frr at the end - --disable-exampledir, --enable-rtadv, & --enable-rr-semantics are unsupported --- pkgs/by-name/fr/frr/package.nix | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/pkgs/by-name/fr/frr/package.nix b/pkgs/by-name/fr/frr/package.nix index b2cda103219a..8094336da5bb 100644 --- a/pkgs/by-name/fr/frr/package.nix +++ b/pkgs/by-name/fr/frr/package.nix @@ -43,9 +43,7 @@ numMultipath ? 64, watchfrrSupport ? true, cumulusSupport ? false, - rtadvSupport ? true, irdpSupport ? true, - routeReplacementSupport ? true, mgmtdSupport ? true, # Experimental as of 10.1, reconsider if upstream changes defaults grpcSupport ? false, @@ -151,7 +149,6 @@ stdenv.mkDerivation (finalAttrs: { configureFlags = [ "--disable-silent-rules" - "--disable-exampledir" "--enable-configfile-mask=0640" "--enable-group=frr" "--enable-logfile-mask=0640" @@ -160,15 +157,13 @@ stdenv.mkDerivation (finalAttrs: { "--enable-vty-group=frrvty" "--localstatedir=/var" "--sbindir=${placeholder "out"}/libexec/frr" - "--sysconfdir=/etc/frr" + "--sysconfdir=/etc" "--with-clippy=${finalAttrs.clippy-helper}/bin/clippy" # general options (lib.strings.enableFeature snmpSupport "snmp") (lib.strings.enableFeature rpkiSupport "rpki") (lib.strings.enableFeature watchfrrSupport "watchfrr") - (lib.strings.enableFeature rtadvSupport "rtadv") (lib.strings.enableFeature irdpSupport "irdp") - (lib.strings.enableFeature routeReplacementSupport "rr-semantics") (lib.strings.enableFeature mgmtdSupport "mgmtd") (lib.strings.enableFeature grpcSupport "grpc")