summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHilton Chain <hako@ultrarare.space>2025-02-13 21:10:18 +0800
committerHilton Chain <hako@ultrarare.space>2025-02-13 23:39:24 +0800
commitc385e67f7d6fbef0d9f797ecac440b90b8c63d94 (patch)
treea736fe6c9b6969ea7a5317d8329018a8be37b839
parentbd2f475ac64b3c7e2b4f12fa90f617cbee1028e2 (diff)
nongnu: nvidia-driver-beta: Update to 570.86.16.
* nongnu/packages/nvidia.scm (nvidia-driver-snippet): Unbundle egl-x11. (nvidia-driver-beta): Update to 570.86.16. [inputs]: Add egl-x11. [arguments]<#:install-plan>: Install its EGL external platform configurations. Install sandboxutils-filelist.json. <#:phases>: Adjust for egl-x11. (nvidia-settings-beta): Update to 570.86.16.
-rw-r--r--nongnu/packages/nvidia.scm50
1 files changed, 42 insertions, 8 deletions
diff --git a/nongnu/packages/nvidia.scm b/nongnu/packages/nvidia.scm
index d430819..03d2a2a 100644
--- a/nongnu/packages/nvidia.scm
+++ b/nongnu/packages/nvidia.scm
@@ -89,6 +89,9 @@
89 "libnvidia-egl-gbm\\.so\\." 89 "libnvidia-egl-gbm\\.so\\."
90 ;; egl-wayland 90 ;; egl-wayland
91 "libnvidia-egl-wayland\\.so\\." 91 "libnvidia-egl-wayland\\.so\\."
92 ;; egl-x11
93 "libnvidia-egl-xcb\\.so\\."
94 "libnvidia-egl-xlib\\.so\\."
92 ;; libglvnd 95 ;; libglvnd
93 "libEGL\\.so\\." 96 "libEGL\\.so\\."
94 "libGL\\.so\\." 97 "libGL\\.so\\."
@@ -441,29 +444,60 @@ mainly used as a dependency of other packages. For user-facing purpose, use
441 (package 444 (package
442 (inherit nvidia-driver) 445 (inherit nvidia-driver)
443 (name "nvidia-driver-beta") 446 (name "nvidia-driver-beta")
444 (version "565.57.01") 447 (version "570.86.16")
445 (source (nvidia-source 448 (source (nvidia-source
446 version "0yic33xx1b3jbgciphlwh6zqfj21vx9439zm0j45wf2yb17fksvf")) 449 version "1mfbc59g5v1c6dqissg1mfawvaknqrr7r985214py92lnr5ylqs5"))
447 (arguments 450 (arguments
448 (substitute-keyword-arguments (package-arguments nvidia-driver) 451 (substitute-keyword-arguments (package-arguments nvidia-driver)
449 ((#:install-plan plan) 452 ((#:install-plan plan)
450 #~(cons '("nvidia_icd_vksc.json" "etc/vulkansc/icd.d/") 453 #~(append
451 #$plan)) 454 #$plan
455 '(("." "share/egl/egl_external_platform.d/" #:include-regexp ("(xcb|xlib)\\.json$"))
456 ("nvidia_icd_vksc.json" "etc/vulkansc/icd.d/")
457 ("sandboxutils-filelist.json" "share/nvidia/files.d/"))))
452 ((#:phases phases) 458 ((#:phases phases)
453 #~(modify-phases #$phases 459 #~(modify-phases #$phases
454 (add-after 'create-misc-files 'create-misc-files-for-beta 460 (add-after 'create-misc-files 'create-misc-files-for-beta
455 (lambda _ 461 (lambda* (#:key inputs #:allow-other-keys)
462 ;; EGL external platform configuraiton
463 (substitute* '("20_nvidia_xcb.json"
464 "20_nvidia_xlib.json")
465 (("libnvidia-egl-(xcb|xlib)\\.so\\.." all)
466 (search-input-file inputs (string-append "lib/" all))))
456 ;; VulkanSC ICD configuration 467 ;; VulkanSC ICD configuration
457 (substitute* "nvidia_icd_vksc.json" 468 (substitute* "nvidia_icd_vksc.json"
458 (("libnvidia-vksc-core\\.so\\.." all) 469 (("libnvidia-vksc-core\\.so\\.." all)
459 (string-append #$output "/lib/" all))))) 470 (string-append #$output "/lib/" all)))))
471 (add-after 'add-architecture-to-filename 'add-architecture-to-filename-for-beta
472 (lambda _
473 (for-each
474 (lambda (path)
475 (let* ((out #$output)
476 (system #$(or (%current-target-system)
477 (%current-system)))
478 (dash (string-index system #\-))
479 (arch (string-take system dash))
480
481 (dot (string-index-right path #\.))
482 (base (string-take path dot))
483 (ext (string-drop path (+ 1 dot))))
484 ;; <...>/nvidia.icd -> <...>/nvidia.x86_64.icd
485 ;; <...>/nvidia_icd.json -> <...>/nvidia_icd.x86_64.json
486 (rename-file
487 (string-append out path)
488 (string-append out base "." arch "." ext))))
489 '("/share/egl/egl_external_platform.d/20_nvidia_xcb.json"
490 "/share/egl/egl_external_platform.d/20_nvidia_xlib.json"))))
460 (add-after 'install-commands 'install-commands-for-beta 491 (add-after 'install-commands 'install-commands-for-beta
461 (lambda _ 492 (lambda _
462 (when (string-match 493 (when (string-match
463 "x86_64-linux" 494 "x86_64-linux"
464 (or #$(%current-target-system) #$(%current-system))) 495 (or #$(%current-target-system) #$(%current-system)))
465 (install-file "nvidia-pcc" 496 (install-file "nvidia-pcc"
466 (string-append #$output "/bin"))))))))))) 497 (string-append #$output "/bin")))))))))
498 (inputs
499 (modify-inputs (package-inputs nvidia-driver)
500 (prepend egl-x11)))))
467 501
468(define-public nvidia-libs 502(define-public nvidia-libs
469 (deprecated-package "nvidia-libs" nvidia-driver)) 503 (deprecated-package "nvidia-libs" nvidia-driver))
@@ -686,10 +720,10 @@ configuration, creating application profiles, gpu monitoring and more.")
686 (package 720 (package
687 (inherit nvidia-settings) 721 (inherit nvidia-settings)
688 (name "nvidia-settings-beta") 722 (name "nvidia-settings-beta")
689 (version "565.57.01") 723 (version "570.86.16")
690 (source (nvidia-settings-source 724 (source (nvidia-settings-source
691 name version 725 name version
692 "006my5a69689wkzjcg3k1y35ifmizfyfj4n7f02naxhbgrxq9fqz")) 726 "0gs5iml7yp5sd6vybj3alb6cg06ylljn4h7iwp2i1jhkms3nmfzn"))
693 (inputs 727 (inputs
694 (modify-inputs (package-inputs nvidia-settings) 728 (modify-inputs (package-inputs nvidia-settings)
695 (prepend vulkan-headers))))) 729 (prepend vulkan-headers)))))