diff options
| author | Hilton Chain <hako@ultrarare.space> | 2026-03-25 00:01:57 +0800 |
|---|---|---|
| committer | Hilton Chain <hako@ultrarare.space> | 2026-04-03 16:57:38 +0800 |
| commit | 5b1405fb1b4769fed54b789052bcec7c45bb1b01 (patch) | |
| tree | 30a88794ed91e8f356bfbfe8bee8138e648a8841 | |
| parent | 55d33edf6168c47eb3324e451a2301c2cb856a24 (diff) | |
nongnu: nvidia: Define more container variants.
* nongnu/packages/nvidia.scm (define-nvidia-container): New macro.
(steam-nvidia-390, steam-nvidia-user-alias-390)
(steam-nvidia-470, steam-nvidia-user-alias-470)
(steam-nvidia-580, steam-nvidia-user-alias-580)
(steam-nvidia-590, steam-nvidia-user-alias-590)
(steam-nvidia-beta, steam-nvidia-user-alias-beta)
(heroic-nvidia-390, heroic-nvidia-user-alias-390)
(heroic-nvidia-470, heroic-nvidia-user-alias-470)
(heroic-nvidia-580, heroic-nvidia-user-alias-580)
(heroic-nvidia-590, heroic-nvidia-user-alias-590)
(heroic-nvidia-beta, heroic-nvidia-user-alias-beta): New variables.
(steam-nvidia): Alias to steam-nvidia-580.
(heroic-nvidia): Alias to heroic-nvidia-580.
| -rw-r--r-- | nongnu/packages/nvidia.scm | 73 |
1 files changed, 69 insertions, 4 deletions
diff --git a/nongnu/packages/nvidia.scm b/nongnu/packages/nvidia.scm index 005ac6b..6d1d374 100644 --- a/nongnu/packages/nvidia.scm +++ b/nongnu/packages/nvidia.scm @@ -17,6 +17,7 @@ #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license-gnu:) #:use-module ((nonguix licenses) #:prefix license:) + #:use-module (nonguix multiarch-container) #:use-module (nonguix utils) #:use-module (guix build-system linux-module) #:use-module (guix build-system cmake) @@ -1304,12 +1305,76 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.") ;;; Package variants for NVIDIA proprietary driver ;;; -(define-public steam-nvidia - (package-with-alias "steam-nvidia" (steam-for nvda))) +(define-syntax define-nvidia-container + (syntax-rules () + ((_ name container-builder driver) + (define-public name + (hidden-package + (nonguix-container->package + (nonguix-container + (inherit (container-builder driver)) + (preserved-env %nvidia-environment-variable-regexps)))))) + ((_ name alias container alias-version) + (define-public name + (package + (inherit (package-with-alias alias container)) + (version alias-version)))))) + +(define-nvidia-container steam-nvidia-390 + steam-container-for nvda-390) +(define-nvidia-container steam-nvidia-470 + steam-container-for nvda-470) +(define-nvidia-container steam-nvidia-580 + steam-container-for nvda-580) +(define-nvidia-container steam-nvidia-590 + steam-container-for nvda-590) +(define-nvidia-container steam-nvidia-beta + steam-container-for nvda-beta) +(define-public steam-nvidia steam-nvidia-580) + +(define-nvidia-container steam-nvidia-user-alias-390 "steam-nvidia" + steam-nvidia-390 + (package-version nvidia-driver-390)) +(define-nvidia-container steam-nvidia-user-alias-470 "steam-nvidia" + steam-nvidia-470 + (package-version nvidia-driver-470)) +(define-nvidia-container steam-nvidia-user-alias-580 "steam-nvidia" + steam-nvidia-580 + (package-version nvidia-driver-580)) +(define-nvidia-container steam-nvidia-user-alias-590 "steam-nvidia" + steam-nvidia-590 + (package-version nvidia-driver-590)) +(define-nvidia-container steam-nvidia-user-alias-beta "steam-nvidia-beta" + steam-nvidia-beta + (package-version nvidia-driver-beta)) -(define-public heroic-nvidia - (package-with-alias "heroic-nvidia" (heroic-for nvda))) +(define-nvidia-container heroic-nvidia-390 + heroic-container-for nvda-390) +(define-nvidia-container heroic-nvidia-470 + heroic-container-for nvda-470) +(define-nvidia-container heroic-nvidia-580 + heroic-container-for nvda-580) +(define-nvidia-container heroic-nvidia-590 + heroic-container-for nvda-590) +(define-nvidia-container heroic-nvidia-beta + heroic-container-for nvda-beta) +(define-public heroic-nvidia heroic-nvidia-580) +(define-nvidia-container heroic-nvidia-user-alias-390 "heroic-nvidia" + heroic-nvidia-390 + (package-version nvidia-driver-390)) +(define-nvidia-container heroic-nvidia-user-alias-470 "heroic-nvidia" + heroic-nvidia-470 + (package-version nvidia-driver-470)) +(define-nvidia-container heroic-nvidia-user-alias-580 "heroic-nvidia" + heroic-nvidia-580 + (package-version nvidia-driver-580)) +(define-nvidia-container heroic-nvidia-user-alias-590 "heroic-nvidia" + heroic-nvidia-590 + (package-version nvidia-driver-590)) +(define-nvidia-container heroic-nvidia-user-alias-beta "heroic-nvidia-beta" + heroic-nvidia-beta + (package-version nvidia-driver-beta)) (define* (replace-mesa obj #:key (driver nvda)) (with-transformation |
