From d2dd179f538015bf3c310c213144d50f530a0f7f Mon Sep 17 00:00:00 2001 From: Lucy Date: Thu, 25 Sep 2025 20:39:48 +0200 Subject: [PATCH 1/3] networkmanager: 1.52.1 -> 1.54.1 - Add conditional NBFT (NVMe Boot Firmware Table) support via withNbft option - Enable NBFT by default when libnvme is available - Add libnvme to buildInputs when NBFT is enabled - Update hash for new version - Fixes build failure where NBFT support is required by default in 1.54.1 --- pkgs/tools/networking/networkmanager/default.nix | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/networkmanager/default.nix b/pkgs/tools/networking/networkmanager/default.nix index dd1d931001a20..7a6d6d34a5443 100644 --- a/pkgs/tools/networking/networkmanager/default.nix +++ b/pkgs/tools/networking/networkmanager/default.nix @@ -52,7 +52,10 @@ systemd, udev, udevCheckHook, + libnvme, withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd, + # NBFT (NVMe Boot Firmware Table) support + withNbft ? libnvme != null, }: let @@ -60,11 +63,11 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "networkmanager"; - version = "1.52.1"; + version = "1.54.1"; src = fetchurl { url = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/releases/${finalAttrs.version}/downloads/NetworkManager-${finalAttrs.version}.tar.xz"; - hash = "sha256-ixIsc0k6cvK65SfBJc69h3EWcbkDUtvisXiKupV1rG8="; + hash = "sha256-APPwvhKsTUhY6/FSQwuS3vFXSAP/YQf378dkoFbUxMc="; }; outputs = [ @@ -107,6 +110,8 @@ stdenv.mkDerivation (finalAttrs: { "-Dnmtui=true" "-Ddnsmasq=${dnsmasq}/bin/dnsmasq" "-Dqt=false" + # NBFT (NVMe Boot Firmware Table) support + (lib.mesonBool "nbft" withNbft) # Handlers "-Dresolvconf=${openresolv}/bin/resolvconf" @@ -158,6 +163,9 @@ stdenv.mkDerivation (finalAttrs: { newt jansson dbus # used to get directory paths with pkg-config during configuration + ] + ++ lib.optionals withNbft [ + libnvme ]; propagatedBuildInputs = [ From 2e3f25673376a5499193772714221d529066ca9e Mon Sep 17 00:00:00 2001 From: Lucy Date: Thu, 25 Sep 2025 20:47:52 +0200 Subject: [PATCH 2/3] nixos/networkmanager: wire up NBFT option to package override - Pass networking.networkmanager.nbft option to NetworkManager package - Ensures NBFT support can be controlled via NixOS configuration - Fixes missing package override for withNbft parameter --- nixos/modules/services/networking/networkmanager.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix index b6253a129e802..95fe3b4a65e3d 100644 --- a/nixos/modules/services/networking/networkmanager.nix +++ b/nixos/modules/services/networking/networkmanager.nix @@ -167,6 +167,18 @@ in ''; }; + nbft = mkOption { + type = lib.types.bool; + default = true; # Enable by default when libnvme is available + description = '' + Whether to enable NBFT (NVMe Boot Firmware Table) support in NetworkManager. + This allows NetworkManager to automatically configure network connections + for NVMe-over-Fabrics boot scenarios during early boot. + + Only effective when NetworkManager is built with libnvme support. + ''; + }; + package = mkPackageOption pkgs "networkmanager" { }; connectionConfig = mkOption { From 274561cd10575d02a2167abb180b79315cdd248f Mon Sep 17 00:00:00 2001 From: lesbiannix Date: Fri, 26 Sep 2025 06:19:29 +0200 Subject: [PATCH 3/3] networkmanager: 1.52.1 -> 1.54.1 Co-authored-by: Martin Weinelt --- pkgs/tools/networking/networkmanager/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/networking/networkmanager/default.nix b/pkgs/tools/networking/networkmanager/default.nix index 7a6d6d34a5443..1ee997a60bffa 100644 --- a/pkgs/tools/networking/networkmanager/default.nix +++ b/pkgs/tools/networking/networkmanager/default.nix @@ -55,7 +55,7 @@ libnvme, withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd, # NBFT (NVMe Boot Firmware Table) support - withNbft ? libnvme != null, + withNbft ? false }: let