From 9734a6a1feff94dc43baf4d1b82f59f9b7a20220 Mon Sep 17 00:00:00 2001 From: Isaac van Bakel Date: Mon, 28 Oct 2024 12:21:40 +0100 Subject: [PATCH] nongnu: nvidia-nvml: Fix baked-in source in unpack overrides. * nongnu/packages/nvidia.scm (nvidia-nvml)[#:phases]: Replace source G-expression by keyword argument source. These cases of `replace 'unpack` were referring to the `#$source` of the package in the g-exp, which was baking in the source *at the point of package definition* to the g-exp. This prevented inheritor packages from modifying the source field and getting the expected effect. The correct way to refer to the source field from a phase override is with the `source` key. This modifies all the references to `#$source` I could find in `unpack` phase replacements. Signed-off-by: Jelle Licht --- nongnu/packages/nvidia.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nongnu/packages/nvidia.scm b/nongnu/packages/nvidia.scm index 3450cf8..de311f6 100644 --- a/nongnu/packages/nvidia.scm +++ b/nongnu/packages/nvidia.scm @@ -892,8 +892,8 @@ nvidia-smi.") (list #:phases #~(modify-phases %standard-phases (replace 'unpack - (lambda _ - (invoke "sh" #$source "--tar" "xvf")))) + (lambda* (#:key source #:allow-other-keys) + (invoke "sh" source "--tar" "xvf")))) #:install-plan ''(("payload/nvml/lib" "lib") ("payload/nvml/include" "include/nvidia/gdk")