From 7bee2301502cb01fe7dc2cfde5d89955871df439 Mon Sep 17 00:00:00 2001 From: Kirill Elagin Date: Sun, 29 Jun 2025 15:15:21 +0200 Subject: [PATCH] libfdt: Rename the package to pylibfdt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The “canonical” name of the Python libfdt package, i.e. the one used on PyPI and, hence, the one that is listed in the requirements of the dependent modules is `pylibfdt`, but the upstream build system produced a package called `libfdt`. Given that, realistically, everyone will be using `pylibfdt`, as seen on PyPI, our choices are to either patch / jailbreak the requirement in all dependent packages, or follow PyPI and rename the package itself. Rename the package once and for all, since it is easier than modifying every single dependent one. --- pkgs/by-name/dt/dtc/package.nix | 3 +++ pkgs/by-name/sn/snagboot/package.nix | 3 +-- .../development/python-modules/dtschema/default.nix | 5 ----- .../python-modules/dtschema/fix_libfdt_name.patch | 13 ------------- 4 files changed, 4 insertions(+), 20 deletions(-) delete mode 100644 pkgs/development/python-modules/dtschema/fix_libfdt_name.patch diff --git a/pkgs/by-name/dt/dtc/package.nix b/pkgs/by-name/dt/dtc/package.nix index ed41487a81b2..04db038594ac 100644 --- a/pkgs/by-name/dt/dtc/package.nix +++ b/pkgs/by-name/dt/dtc/package.nix @@ -69,6 +69,9 @@ stdenv.mkDerivation (finalAttrs: { postPatch = '' patchShebangs setup.py + + # Align the name with pypi + sed -i "s/name='libfdt',/name='pylibfdt',/" setup.py ''; # Required for installation of Python library and is innocuous otherwise. diff --git a/pkgs/by-name/sn/snagboot/package.nix b/pkgs/by-name/sn/snagboot/package.nix index 2582f8ac3077..d13ad71332a8 100644 --- a/pkgs/by-name/sn/snagboot/package.nix +++ b/pkgs/by-name/sn/snagboot/package.nix @@ -26,7 +26,6 @@ python3Packages.buildPythonApplication rec { ]; pythonRemoveDeps = [ - "pylibfdt" "swig" ]; @@ -40,7 +39,7 @@ python3Packages.buildPythonApplication rec { pyserial tftpy crccheck - # pylibfdt + libfdt # swig packaging ]; diff --git a/pkgs/development/python-modules/dtschema/default.nix b/pkgs/development/python-modules/dtschema/default.nix index 0550c0f481f5..73e982ae6079 100644 --- a/pkgs/development/python-modules/dtschema/default.nix +++ b/pkgs/development/python-modules/dtschema/default.nix @@ -25,11 +25,6 @@ buildPythonPackage rec { sha256 = "sha256-UJU8b9BzuuUSHRjnA6hOd1bMPNOlk4LNtrQV5aZmGhI="; }; - patches = [ - # Change name of pylibfdt to libfdt - ./fix_libfdt_name.patch - ]; - nativeBuildInputs = [ setuptools-scm ]; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/dtschema/fix_libfdt_name.patch b/pkgs/development/python-modules/dtschema/fix_libfdt_name.patch deleted file mode 100644 index 093b13023fb3..000000000000 --- a/pkgs/development/python-modules/dtschema/fix_libfdt_name.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/pyproject.toml b/pyproject.toml -index 2192a68..6a7ba95 100644 ---- a/pyproject.toml -+++ b/pyproject.toml -@@ -27,7 +27,7 @@ dependencies = [ - "ruamel.yaml>0.15.69", - "jsonschema>=4.1.2,<4.18", - "rfc3987", -- "pylibfdt", -+ "libfdt", - ] - - [project.scripts]