From 746b1f982e075a7d5146293b31f0ec248a88ebc3 Mon Sep 17 00:00:00 2001 From: Hilton Chain Date: Mon, 23 Mar 2026 22:02:37 +0800 Subject: nongnu: nvidia-firmware: Base on nvidia-firmware-470. * nongnu/packages/nvidia.scm (%nvidia-firmware-arguments): New procedure to avoid inheriting unpacking phases from binary-package-from-sources. (nvidia-firmware-470): Expand definition. (nvidia-firmware-580): Base on 470. (nvidia-firmware-590, nvidia-firmware-beta): Base on 580. --- nongnu/packages/nvidia.scm | 75 +++++++++++++++++++++------------------------- 1 file changed, 34 insertions(+), 41 deletions(-) diff --git a/nongnu/packages/nvidia.scm b/nongnu/packages/nvidia.scm index c4d1c2a..111a201 100644 --- a/nongnu/packages/nvidia.scm +++ b/nongnu/packages/nvidia.scm @@ -748,67 +748,60 @@ mainly used as a dependency of other packages. For user-facing purpose, use ;;; NVIDIA firmware ;;; +(define (%nvidia-firmware-arguments version) + (list #:install-plan + #~'(("firmware" #$(in-vicinity "lib/firmware/nvidia" version))) + #:phases + #~(modify-phases %standard-phases + (delete 'strip)))) + +(define-public nvidia-firmware-470 + (package + (inherit nvidia-driver-470) + (name "nvidia-firmware") + (source (package-source nvidia-source-470-x86_64-linux)) + (build-system copy-build-system) + (arguments (%nvidia-firmware-arguments (package-version this-package))) + (propagated-inputs '()) + (inputs '()) + (native-inputs '()) + (supported-systems '("x86_64-linux")) + (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware), legacy 470.xx series") + (description + "This package provides @acronym{GSP, GPU System Processor} firmware of +the proprietary NVIDIA driver. + +For free driver (@code{nouveau}) support, use @code{linux-firmware} +instead."))) + (define-public nvidia-firmware-580 (binary-package-from-sources `(("x86_64-linux" . ,nvidia-source-580-x86_64-linux) - ("i686-linux" . ,nvidia-source-580-x86_64-linux) ("aarch64-linux" . ,nvidia-source-580-aarch64-linux)) (package - (inherit nvidia-driver-580) - (name "nvidia-firmware") - (build-system copy-build-system) - (arguments - (list #:install-plan - #~'(("firmware" #$(string-append "lib/firmware/nvidia/" - (package-version this-package)))) - #:phases - #~(modify-phases %standard-phases - (delete 'strip)))) - (propagated-inputs '()) - (inputs '()) - (native-inputs '()) - (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware)") - (description - "This package provides @acronym{GSP, GPU System Processor} firmware of -the proprietary NVIDIA driver. - -For free driver (@code{nouveau}) support, use @code{linux-firmware} -instead.")))) - -(define-public nvidia-firmware-470 - (package - (inherit nvidia-firmware-580) - (version (package-version nvidia-driver-470)) - (source (package-source nvidia-driver-470)))) + (inherit nvidia-firmware-470) + (arguments (%nvidia-firmware-arguments (package-version this-package))) + (supported-systems '("x86_64-linux" "aarch64-linux")) + (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware), production branch")))) (define-public nvidia-firmware-590 (binary-package-from-sources `(("x86_64-linux" . ,nvidia-source-590-x86_64-linux) - ("i686-linux" . ,nvidia-source-590-x86_64-linux) ("aarch64-linux" . ,nvidia-source-590-aarch64-linux)) (package (inherit nvidia-firmware-580) - (arguments - (substitute-keyword-arguments arguments - ((#:phases phases) - #~(modify-phases #$phases - (replace 'unpack - (assoc-ref %standard-phases 'unpack))))))))) + (arguments (%nvidia-firmware-arguments (package-version this-package))) + (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware), new feature branch")))) (define-public nvidia-firmware-beta (binary-package-from-sources `(("x86_64-linux" . ,nvidia-source-beta-x86_64-linux) - ("i686-linux" . ,nvidia-source-beta-x86_64-linux) ("aarch64-linux" . ,nvidia-source-beta-aarch64-linux)) (package (inherit nvidia-firmware-580) (name "nvidia-firmware-beta") - (arguments - (substitute-keyword-arguments arguments - ((#:phases phases) - #~(modify-phases #$phases - (replace 'unpack - (assoc-ref %standard-phases 'unpack))))))))) + (arguments (%nvidia-firmware-arguments (package-version this-package))) + (synopsis "Proprietary NVIDIA driver (GPU System Processor firmware), beta")))) (define-public nvidia-firmware nvidia-firmware-580) -- cgit v1.3