nongnu: nvda: Avoid hardcoding inputs.

* nongnu/packages/nvidia.scm (nvda)[arguments]: Avoid hardcoding inputs and
locate them via relative paths instead.
[description]: Adjust style.

Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
This commit is contained in:
Hilton Chain 2022-10-21 12:50:49 +08:00 committed by Jonathan Brielmaier
parent 6874c66ddc
commit fb5a3d0e97
No known key found for this signature in database
GPG key ID: ECFC83988B4E4B9F

View file

@ -630,24 +630,27 @@ configuration, creating application profiles, gpu monitoring and more.")
(build-system trivial-build-system) (build-system trivial-build-system)
(arguments (arguments
(list #:modules '((guix build union)) (list #:modules '((guix build union))
#:builder #~(begin #:builder
#~(begin
(use-modules (guix build union) (use-modules (guix build union)
(srfi srfi-1) (srfi srfi-1)
(ice-9 regex)) (ice-9 regex))
(union-build (assoc-ref %outputs "out") (union-build #$output
(list #$mesa #$nvidia-libs) (list #$(this-package-input "mesa")
#:resolve-collision (lambda (files) (let ((file #$(this-package-input "nvidia-libs"))
(if (string-match "nvidia-libs" (first files)) #:resolve-collision
(lambda (files)
(let ((file (if (string-match "nvidia-libs"
(first files))
(first files) (first files)
(last files)))) (last files))))
(format #t "chosen ~a ~%" file) (format #t "chosen ~a ~%" file)
file)))))) file))))))
(description "These are the libraries of the evil Nvidia driver, (description
packaged in such a way that you can use the transformation option "These are the libraries of the evil NVIDIA driver, packaged in such a
@code{--with-graft=mesa=nvda} to use the nvidia driver with a package that requires mesa.") way that you can use the transformation option @code{--with-graft=mesa=nvda}
(inputs to use the NVIDIA driver with a package that requires mesa.")
(list mesa (inputs (list mesa nvidia-libs))
nvidia-libs))
(outputs '("out")))) (outputs '("out"))))
(define mesa/fake (define mesa/fake