From d6a757bb01b6eaa28ee5fb100b7d9fd2bc29c3f2 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Mon, 20 Jan 2025 05:27:14 +0800 Subject: [PATCH 1/3] buildPython*: prioritize user-specified passthru attrs --- .../interpreters/python/mk-python-derivation.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix index 24791a6c41ea..0c1a1cf33ddb 100644 --- a/pkgs/development/interpreters/python/mk-python-derivation.nix +++ b/pkgs/development/interpreters/python/mk-python-derivation.nix @@ -400,13 +400,12 @@ let { inherit disabled; } - // attrs.passthru or { } // { updateScript = let filename = head (splitString ":" self.meta.position); in - attrs.passthru.updateScript or [ + [ update-python-libraries filename ]; @@ -419,7 +418,8 @@ let } // optionalAttrs (build-system != [ ]) { inherit build-system; - }; + } + // attrs.passthru or { }; meta = { # default to python's platforms From 617bc74413bb92c9b06446e78da1b7897a64885b Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 22 Jan 2025 23:49:57 +0800 Subject: [PATCH 2/3] buildPython*: move the format'-related assertion down to its value --- pkgs/development/interpreters/python/mk-python-derivation.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix index 0c1a1cf33ddb..aa304ecf2eed 100644 --- a/pkgs/development/interpreters/python/mk-python-derivation.nix +++ b/pkgs/development/interpreters/python/mk-python-derivation.nix @@ -205,10 +205,9 @@ in ... }@attrs: -assert (pyproject != null) -> (format == null); - let format' = + assert (pyproject != null) -> (format == null); if pyproject != null then if pyproject then "pyproject" else "other" else if format != null then From cbd527c8adbf01920250a8e2681ae93eaa7dd5d4 Mon Sep 17 00:00:00 2001 From: Yueh-Shun Li Date: Wed, 22 Jan 2025 23:53:18 +0800 Subject: [PATCH 3/3] buildPython*: use finalAttrs.finalPackage for passthru attribute values --- pkgs/development/interpreters/python/mk-python-derivation.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix index aa304ecf2eed..11bb1af773ee 100644 --- a/pkgs/development/interpreters/python/mk-python-derivation.nix +++ b/pkgs/development/interpreters/python/mk-python-derivation.nix @@ -273,6 +273,7 @@ let # Keep extra attributes from `attrs`, e.g., `patchPhase', etc. self = toPythonModule ( stdenv.mkDerivation ( + finalAttrs: (cleanAttrs attrs) // { @@ -402,7 +403,7 @@ let // { updateScript = let - filename = head (splitString ":" self.meta.position); + filename = head (splitString ":" finalAttrs.finalPackage.meta.position); in [ update-python-libraries