From b303f1aff2cf6dca7b9a4624df13fec7eb8e640b Mon Sep 17 00:00:00 2001 From: BatteredBunny Date: Thu, 6 Aug 2026 23:37:03 +0300 Subject: [PATCH 1/4] python3Packages.napalm-ros: fix build --- .../development/python-modules/napalm/ros.nix | 23 ++++++++++++++----- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/napalm/ros.nix b/pkgs/development/python-modules/napalm/ros.nix index 080766099cf6..9d4161dfcb6f 100644 --- a/pkgs/development/python-modules/napalm/ros.nix +++ b/pkgs/development/python-modules/napalm/ros.nix @@ -2,11 +2,10 @@ lib, buildPythonPackage, fetchFromGitHub, - setuptools, napalm, librouteros, pytestCheckHook, - pythonAtLeast, + poetry-core, }: buildPythonPackage rec { pname = "napalm-ros"; @@ -20,15 +19,27 @@ buildPythonPackage rec { hash = "sha256-Fv11Blx44vZZ8NuhQQIFpDr+dH2gDJtQP7b0kAk3U/s="; }; - build-system = [ setuptools ]; + # Setuptools is wrong, upstream uses poetry + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail 'requires = ["setuptools>=56.0.0", "wheel"]' 'requires = ["poetry-core"]' \ + --replace-fail 'build-backend = "setuptools.build_meta"' 'build-backend = "poetry.core.masonry.api"' + ''; - dependencies = [ librouteros ]; + build-system = [ poetry-core ]; - nativeCheckInputs = [ + dependencies = [ + librouteros napalm - pytestCheckHook ]; + pythonRelaxDeps = [ + "librouteros" + "napalm" + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + disabledTests = [ # AssertionError: Some methods vary. "test_method_signatures" From 2a3902873874f8fcd44dd0ba2ff9f38c22dad43c Mon Sep 17 00:00:00 2001 From: BatteredBunny Date: Thu, 6 Aug 2026 23:37:48 +0300 Subject: [PATCH 2/4] python3Packages.napalm-hp-procurve: fix build; wrong pname --- pkgs/development/python-modules/napalm/hp-procurve.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/napalm/hp-procurve.nix b/pkgs/development/python-modules/napalm/hp-procurve.nix index ef6ec5862bc9..d346a5a5b4ae 100644 --- a/pkgs/development/python-modules/napalm/hp-procurve.nix +++ b/pkgs/development/python-modules/napalm/hp-procurve.nix @@ -12,7 +12,7 @@ }: buildPythonPackage rec { - pname = "napalm-hp-procurve"; + pname = "napalm-procurve"; version = "0.7.0"; pyproject = true; From 7a54b3dbf35ef835b9226cfa36bea622b9ef5655 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Fri, 7 Aug 2026 13:18:06 +0200 Subject: [PATCH 3/4] python3Packages.napalm-hp-procurve: migrate to finalAttrs --- pkgs/development/python-modules/napalm/hp-procurve.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/napalm/hp-procurve.nix b/pkgs/development/python-modules/napalm/hp-procurve.nix index d346a5a5b4ae..64e0462b3a9a 100644 --- a/pkgs/development/python-modules/napalm/hp-procurve.nix +++ b/pkgs/development/python-modules/napalm/hp-procurve.nix @@ -11,7 +11,7 @@ standard-telnetlib, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "napalm-procurve"; version = "0.7.0"; pyproject = true; @@ -19,7 +19,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "napalm-automation-community"; repo = "napalm-hp-procurve"; - tag = version; + tag = finalAttrs.version; hash = "sha256-cO4kxI90krj1knzixRKWxa77OAaxjO8dLTy02VpkV9M="; }; @@ -27,7 +27,7 @@ buildPythonPackage rec { # Dependency installation in setup.py doesn't work echo -n > requirements.txt substituteInPlace setup.cfg \ - --replace " --pylama" "" + --replace-fail " --pylama" "" ''; build-system = [ @@ -62,8 +62,8 @@ buildPythonPackage rec { meta = { description = "HP ProCurve Driver for NAPALM automation frontend"; homepage = "https://github.com/napalm-automation-community/napalm-hp-procurve"; - changelog = "https://github.com/napalm-automation-community/napalm-hp-procurve/releases/tag/${src.tag}"; + changelog = "https://github.com/napalm-automation-community/napalm-hp-procurve/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.asl20; maintainers = [ ]; }; -} +}) From 62890792fcb6b395a3b9e4bc16eeb6ff86bb52e7 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Fri, 7 Aug 2026 13:23:25 +0200 Subject: [PATCH 4/4] python3Packages.napalm-ros: migrate to finalAttrs --- pkgs/development/python-modules/napalm/ros.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/napalm/ros.nix b/pkgs/development/python-modules/napalm/ros.nix index 9d4161dfcb6f..3374a9504860 100644 --- a/pkgs/development/python-modules/napalm/ros.nix +++ b/pkgs/development/python-modules/napalm/ros.nix @@ -7,7 +7,8 @@ pytestCheckHook, poetry-core, }: -buildPythonPackage rec { + +buildPythonPackage (finalAttrs: { pname = "napalm-ros"; version = "1.2.6"; pyproject = true; @@ -15,7 +16,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "napalm-automation-community"; repo = "napalm-ros"; - tag = version; + tag = finalAttrs.version; hash = "sha256-Fv11Blx44vZZ8NuhQQIFpDr+dH2gDJtQP7b0kAk3U/s="; }; @@ -50,9 +51,9 @@ buildPythonPackage rec { meta = { description = "MikroTik RouterOS NAPALM driver"; homepage = "https://github.com/napalm-automation-community/napalm-ros"; - changelog = "https://github.com/napalm-automation-community/napalm-ros/releases/tag/${src.tag}"; + changelog = "https://github.com/napalm-automation-community/napalm-ros/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.gpl2Plus; platforms = lib.platforms.linux; maintainers = with lib.maintainers; [ felbinger ]; }; -} +})