diff options
| author | Hilton Chain <hako@ultrarare.space> | 2026-04-13 16:54:27 +0800 |
|---|---|---|
| committer | Hilton Chain <hako@ultrarare.space> | 2026-04-16 23:01:33 +0800 |
| commit | 626c946a89a6b0fab6fd49dc1ad8b9e07695c91b (patch) | |
| tree | f810addc6d940f2ea5cdaf95afc77de687b6650f /nongnu | |
| parent | 3af03293acbab1f7b5b7e1c3285bf9e4c3e97236 (diff) | |
nongnu: nvidia: Set location for package variants.
The location will be used by package-channels, which is used by channel
selection in Cuirass job specifications.
* nonguix/utils.scm (package-with-alias): Inherit package location.
* nongnu/packages/nvidia.scm (make-ffmpeg-nvidia): New procedure.
(define-nvda-package, define-nvidia-container, define-ffmpeg-nvidia): Inherit
driver package location.
Fixes: #446
Diffstat (limited to 'nongnu')
| -rw-r--r-- | nongnu/packages/nvidia.scm | 48 |
1 files changed, 28 insertions, 20 deletions
diff --git a/nongnu/packages/nvidia.scm b/nongnu/packages/nvidia.scm index 72b32c7..075b075 100644 --- a/nongnu/packages/nvidia.scm +++ b/nongnu/packages/nvidia.scm @@ -1531,7 +1531,9 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.") (syntax-rules () ((_ name driver) (define-public name - (hidden-package (make-nvda driver)))) + (package + (inherit (hidden-package (make-nvda driver))) + (location (package-location driver))))) ((_ name driver alias) (define-public name (let ((nvda (make-nvda driver))) @@ -1565,10 +1567,12 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.") ((_ name container-builder driver) (define-public name (hidden-package - (nonguix-container->package - (nonguix-container - (inherit (container-builder driver)) - (preserved-env %nvidia-environment-variable-regexps)))))) + (package + (inherit (nonguix-container->package + (nonguix-container + (inherit (container-builder driver)) + (preserved-env %nvidia-environment-variable-regexps)))) + (location (package-location driver)))))) ((_ name alias container alias-version) (define-public name (package @@ -1641,25 +1645,29 @@ support. For dependency of other packages, use @code{nvidia-driver} instead.") heroic-nvidia-beta (package-version nvidia-driver-beta)) +(define (make-ffmpeg-nvidia ffmpeg driver) + ((replace-nvidia-driver driver) + (package + (inherit ffmpeg) + (inputs + (modify-inputs inputs + (prepend nv-codec-headers))) + (arguments + (substitute-keyword-arguments arguments + ((#:configure-flags flags) + #~(cons* "--enable-cuvid" + "--enable-ffnvcodec" + "--enable-encoder=hevc_nvenc" + "--enable-encoder=h264_nvenc" + #$flags))))))) + (define-syntax define-ffmpeg-nvidia (syntax-rules () ((_ name ffmpeg driver) (define-public name - (hidden-package - ((replace-nvidia-driver driver) - (package - (inherit ffmpeg) - (inputs - (modify-inputs inputs - (prepend nv-codec-headers))) - (arguments - (substitute-keyword-arguments arguments - ((#:configure-flags flags) - #~(cons* "--enable-cuvid" - "--enable-ffnvcodec" - "--enable-encoder=hevc_nvenc" - "--enable-encoder=h264_nvenc" - #$flags))))))))) + (package + (inherit (hidden-package (make-ffmpeg-nvidia ffmpeg driver))) + (location (package-location driver))))) ((_ name alias ffmpeg-nvidia alias-version) (define-public name (package |
