Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] Nvidia drivers
@ 2022-01-06 18:26 motorto
  2022-01-26 17:36 ` prateekmedia
                   ` (17 more replies)
  0 siblings, 18 replies; 19+ messages in thread
From: motorto @ 2022-01-06 18:26 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 629 bytes --]

There is a new pull request by motorto against master on the void-packages repository

https://github.com/motorto/void-packages nvidiaDrivers
https://github.com/void-linux/void-packages/pull/34911

Nvidia drivers
Testing the changes

    I tested the changes in this PR: NO

    I built this PR locally for my native architecture, x86_64

Still haven't got the time to test on hardware, but it builds and installs fine .

Testers are welcome, hope I didn't miss anything ...

I closed the other one without intention... #34664 

A patch file from https://github.com/void-linux/void-packages/pull/34911.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-nvidiaDrivers-34911.patch --]
[-- Type: text/x-diff, Size: 18531 bytes --]

From 3a3f51918e4c2ac97ce155e8e3133540722cc599 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Cerqueira?= <acerqueira021@gmail.com>
Date: Wed, 22 Dec 2021 18:08:55 +0000
Subject: [PATCH 1/2] nvidia: update to 495.46.

---
 srcpkgs/nvidia/template | 30 +++++++++++++++++++++---------
 1 file changed, 21 insertions(+), 9 deletions(-)

diff --git a/srcpkgs/nvidia/template b/srcpkgs/nvidia/template
index d64cc8019c86..04b884b6744b 100644
--- a/srcpkgs/nvidia/template
+++ b/srcpkgs/nvidia/template
@@ -3,7 +3,7 @@
 _desc="NVIDIA drivers for linux"
 
 pkgname=nvidia
-version=470.94
+version=495.46
 revision=1
 maintainer="Andrew Benson <abenson+void@gmail.com>"
 license="custom:NVIDIA Proprietary"
@@ -19,7 +19,7 @@ conflicts="xserver-abi-video>24_1"
 
 _pkg="NVIDIA-Linux-x86_64-${version}"
 distfiles="http://uk.download.nvidia.com/XFree86/Linux-x86_64/${version}/${_pkg}.run"
-checksum=9585aa29330ebad9bdf22ce3ca2bac2026c85a9a32f03d7c59f714a7798500eb
+checksum=d83b77d17da0c54667aa5b13d6ea95a5c51304257b1ecf2f8d4a3b5ae31c62f5
 # subpackages need to be processed in this specific order
 subpackages="nvidia-gtklibs nvidia-dkms nvidia-opencl nvidia-libs nvidia-libs-32bit"
 depends="nvidia-libs-${version}_${revision}
@@ -69,10 +69,6 @@ _install_libs() {
 	ln -sf libnvidia-encode.so.${version} ${DESTDIR}/${libdir}/libnvidia-encode.so
 	ln -sf libnvidia-encode.so.${version} ${DESTDIR}/${libdir}/libnvidia-encode.so.1
 
-	vinstall libnvidia-ifr.so.${version} 755 ${libdir}
-	ln -sf libnvidia-ifr.so.${version} ${DESTDIR}/${libdir}/libnvidia-ifr.so
-	ln -sf libnvidia-ifr.so.${version} ${DESTDIR}/${libdir}/libnvidia-ifr.so.1
-
 	vinstall libnvidia-fbc.so.${version} 755 ${libdir}
 	ln -sf libnvidia-fbc.so.${version} ${DESTDIR}/${libdir}/libnvidia-fbc.so
 	ln -sf libnvidia-fbc.so.${version} ${DESTDIR}/${libdir}/libnvidia-fbc.so.1
@@ -128,9 +124,20 @@ do_install() {
 	ln -sf libglxserver_nvidia.so.${version} \
 		${DESTDIR}/usr/lib/nvidia/xorg/libglxserver_nvidia.so.1
 
-	vinstall libnvidia-egl-wayland.so.1.1.7 755 usr/lib
-	ln -sf libnvidia-egl-wayland.so.1.1.7 \
+	# Wayland/GBM
+	vinstall libnvidia-egl-wayland.so.1.1.9 755 usr/lib
+	ln -sf libnvidia-egl-wayland.so.1.1.9 \
 		${DESTDIR}/usr/lib/libnvidia-egl-wayland.so.1
+	vinstall libnvidia-egl-gbm.so.1.1.0 755 usr/lib
+	ln -sf libnvidia-egl-gbm.so.1.1.0 \
+		${DESTDIR}/usr/lib/libnvidia-egl-gbm.so.1
+
+	vmkdir usr/share/glvnd/egl_vendor.d
+	vinstall 15_nvidia_gbm.json 755 usr/share/glvnd/egl_vendor.d
+
+	vmkdir usr/lib/gbm
+	ln -sf libnvidia-allocator.so.${version} \
+		${DESTDIR}/usr/lib/gbm/nvidia-drm_gbm.so
 
 	vinstall 10_nvidia.json 755 usr/share/glvnd/egl_vendor.d
 	vinstall 10_nvidia_wayland.json \
@@ -204,7 +211,12 @@ do_install() {
 
 	# vulkan real-time ray tracing extensions
 	vinstall libnvidia-rtcore.so.${version} 755 usr/lib
-	vinstall libnvidia-cbl.so.${version} 755 usr/lib
+
+	vinstall libnvidia-vulkan-producer.so.${version} 755 usr/lib
+	ln -sf libnvidia-vulkan-producer.so.${version} \
+		${DESTDIR}/usr/lib/libnvidia-vulkan-producer.so
+	ln -sf libnvidia-vulkan-producer.so.${version} \
+		${DESTDIR}/usr/lib/libnvidia-vulkan-producer.so.1
 
 	# ngx
 	vbin nvidia-ngx-updater

From 42f9bb6b7565f0832c521ba76e3462f26da0ab0c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Cerqueira?= <acerqueira021@gmail.com>
Date: Tue, 4 Jan 2022 18:23:11 +0000
Subject: [PATCH 2/2] New package: nvidia470-470.94

---
 srcpkgs/nvidia470-dkms                        |   1 +
 srcpkgs/nvidia470-gtklibs                     |   1 +
 srcpkgs/nvidia470-libs                        |   1 +
 srcpkgs/nvidia470-libs-32bit                  |   1 +
 srcpkgs/nvidia470-opencl                      |   1 +
 srcpkgs/nvidia470/INSTALL                     |   3 +
 srcpkgs/nvidia470/files/dkms.conf             |  19 ++
 .../files/nvidia-drm-outputclass.conf         |  18 +
 srcpkgs/nvidia470/files/prime-run             |   5 +
 srcpkgs/nvidia470/template                    | 311 ++++++++++++++++++
 srcpkgs/nvidia470/update                      |   2 +
 11 files changed, 363 insertions(+)
 create mode 120000 srcpkgs/nvidia470-dkms
 create mode 120000 srcpkgs/nvidia470-gtklibs
 create mode 120000 srcpkgs/nvidia470-libs
 create mode 120000 srcpkgs/nvidia470-libs-32bit
 create mode 120000 srcpkgs/nvidia470-opencl
 create mode 100644 srcpkgs/nvidia470/INSTALL
 create mode 100644 srcpkgs/nvidia470/files/dkms.conf
 create mode 100644 srcpkgs/nvidia470/files/nvidia-drm-outputclass.conf
 create mode 100644 srcpkgs/nvidia470/files/prime-run
 create mode 100644 srcpkgs/nvidia470/template
 create mode 100644 srcpkgs/nvidia470/update

diff --git a/srcpkgs/nvidia470-dkms b/srcpkgs/nvidia470-dkms
new file mode 120000
index 000000000000..f69702e946ca
--- /dev/null
+++ b/srcpkgs/nvidia470-dkms
@@ -0,0 +1 @@
+nvidia470
\ No newline at end of file
diff --git a/srcpkgs/nvidia470-gtklibs b/srcpkgs/nvidia470-gtklibs
new file mode 120000
index 000000000000..f69702e946ca
--- /dev/null
+++ b/srcpkgs/nvidia470-gtklibs
@@ -0,0 +1 @@
+nvidia470
\ No newline at end of file
diff --git a/srcpkgs/nvidia470-libs b/srcpkgs/nvidia470-libs
new file mode 120000
index 000000000000..f69702e946ca
--- /dev/null
+++ b/srcpkgs/nvidia470-libs
@@ -0,0 +1 @@
+nvidia470
\ No newline at end of file
diff --git a/srcpkgs/nvidia470-libs-32bit b/srcpkgs/nvidia470-libs-32bit
new file mode 120000
index 000000000000..f69702e946ca
--- /dev/null
+++ b/srcpkgs/nvidia470-libs-32bit
@@ -0,0 +1 @@
+nvidia470
\ No newline at end of file
diff --git a/srcpkgs/nvidia470-opencl b/srcpkgs/nvidia470-opencl
new file mode 120000
index 000000000000..f69702e946ca
--- /dev/null
+++ b/srcpkgs/nvidia470-opencl
@@ -0,0 +1 @@
+nvidia470
\ No newline at end of file
diff --git a/srcpkgs/nvidia470/INSTALL b/srcpkgs/nvidia470/INSTALL
new file mode 100644
index 000000000000..2461dca609f6
--- /dev/null
+++ b/srcpkgs/nvidia470/INSTALL
@@ -0,0 +1,3 @@
+case "${ACTION}" in
+post) ldconfig -X || : ;;
+esac
diff --git a/srcpkgs/nvidia470/files/dkms.conf b/srcpkgs/nvidia470/files/dkms.conf
new file mode 100644
index 000000000000..ec795dbdc635
--- /dev/null
+++ b/srcpkgs/nvidia470/files/dkms.conf
@@ -0,0 +1,19 @@
+PACKAGE_NAME="nvidia470"
+PACKAGE_VERSION="__PKGVER"
+AUTOINSTALL="yes"
+
+# By default, DKMS will add KERNELRELEASE to the make command line; however,
+# this will cause the kernel module build to infer that it was invoked via
+# Kbuild directly instead of DKMS. The dkms(8) manual page recommends quoting
+# the 'make' command name to suppress this behavior.
+MAKE[0]="'make' __MAKEJOBS NV_EXCLUDE_BUILD_MODULES='' KERNEL_UNAME=${kernelver} modules"
+
+# The list of kernel modules was generated by nvidia-installer at runtime.
+BUILT_MODULE_NAME[0]="nvidia"
+DEST_MODULE_LOCATION[0]="/kernel/drivers/video"
+BUILT_MODULE_NAME[1]="nvidia-uvm"
+DEST_MODULE_LOCATION[1]="/kernel/drivers/video"
+BUILT_MODULE_NAME[2]="nvidia-modeset"
+DEST_MODULE_LOCATION[2]="/kernel/drivers/video"
+BUILT_MODULE_NAME[3]="nvidia-drm"
+DEST_MODULE_LOCATION[3]="/kernel/drivers/video"
diff --git a/srcpkgs/nvidia470/files/nvidia-drm-outputclass.conf b/srcpkgs/nvidia470/files/nvidia-drm-outputclass.conf
new file mode 100644
index 000000000000..65e3fd38622c
--- /dev/null
+++ b/srcpkgs/nvidia470/files/nvidia-drm-outputclass.conf
@@ -0,0 +1,18 @@
+Section "ServerLayout"
+  Identifier "layout"
+  Option "AllowNVIDIAGPUScreens"
+EndSection
+
+Section "OutputClass"
+    Identifier "intel"
+    MatchDriver "i915"
+    Driver "modesetting"
+EndSection
+
+Section "OutputClass"
+    Identifier "nvidia"
+    MatchDriver "nvidia-drm"
+    Driver "nvidia"
+    Option "AllowEmptyInitialConfiguration"
+    ModulePath "/usr/lib/nvidia/xorg"
+EndSection
diff --git a/srcpkgs/nvidia470/files/prime-run b/srcpkgs/nvidia470/files/prime-run
new file mode 100644
index 000000000000..fc8752fc36c1
--- /dev/null
+++ b/srcpkgs/nvidia470/files/prime-run
@@ -0,0 +1,5 @@
+#!/bin/sh
+export __NV_PRIME_RENDER_OFFLOAD=1
+export __GLX_VENDOR_LIBRARY_NAME=nvidia
+export __VK_LAYER_NV_optimus=NVIDIA_only
+exec "$@"
diff --git a/srcpkgs/nvidia470/template b/srcpkgs/nvidia470/template
new file mode 100644
index 000000000000..909e3f6f4c61
--- /dev/null
+++ b/srcpkgs/nvidia470/template
@@ -0,0 +1,311 @@
+# Template file for 'nvidia470'
+
+_desc="NVIDIA drivers (GKxxx “Kepler”)"
+
+pkgname=nvidia470
+version=470.94
+revision=1
+maintainer="Andrew Benson <abenson+void@gmail.com>"
+license="custom:NVIDIA Proprietary"
+homepage="https://www.nvidia.com"
+
+archs="x86_64"
+nopie=yes
+repository="nonfree"
+create_wrksrc=yes
+short_desc="${_desc} - Libraries and Utilities"
+hostmakedepends="tar"
+conflicts="xserver-abi-video>24_1"
+
+_pkg="NVIDIA-Linux-x86_64-${version}"
+distfiles="http://uk.download.nvidia.com/XFree86/Linux-x86_64/${version}/${_pkg}.run"
+checksum=9585aa29330ebad9bdf22ce3ca2bac2026c85a9a32f03d7c59f714a7798500eb
+# subpackages need to be processed in this specific order
+subpackages="nvidia470-gtklibs nvidia470-dkms nvidia470-opencl nvidia470-libs nvidia470-libs-32bit"
+depends="nvidia470-libs-${version}_${revision}
+ nvidia470-gtklibs-${version}_${revision}
+ nvidia470-dkms-${version}_${revision}"
+
+_install_libs() {
+	local libdir=$1
+
+	# GLX client libs
+	# Required for GLVND option
+	vinstall libGLX_nvidia.so.${version} 755 ${libdir}
+	ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/${libdir}/libGLX_nvidia.so.0
+	ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/${libdir}/libGLX_indirect.so.0
+
+	# OpenGL core library
+	vinstall libnvidia-glcore.so.${version} 755 ${libdir}
+	vinstall libnvidia-eglcore.so.${version} 755 ${libdir}
+	vinstall libnvidia-glsi.so.${version} 755 ${libdir}
+
+	# Vulkan core library
+	vinstall libnvidia-glvkspirv.so.${version} 755 ${libdir}
+
+	vinstall libEGL_nvidia.so.${version} 755 ${libdir}
+	ln -sf libEGL_nvidia.so.${version} ${DESTDIR}/${libdir}/libEGL_nvidia.so.0
+
+	vinstall libGLESv1_CM_nvidia.so.${version} 755 ${libdir}
+	ln -sf libGLESv1_CM_nvidia.so.${version} \
+		${DESTDIR}/${libdir}/libGLESv1_CM_nvidia.so.1
+
+	vinstall libGLESv2_nvidia.so.${version} 755 ${libdir}
+	ln -sf libGLESv2_nvidia.so.${version} ${DESTDIR}/${libdir}/libGLESv2_nvidia.so.2
+
+	# Thread Local Storage
+	vinstall libnvidia-tls.so.${version} 755 ${libdir}
+
+	# VDPAU
+	vinstall libvdpau_nvidia.so.${version} 755 ${libdir}/vdpau
+	ln -sf libvdpau_nvidia.so.${version} \
+		${DESTDIR}/${libdir}/vdpau/libvdpau_nvidia.so.1
+
+	vinstall libnvidia-ml.so.${version} 755 ${libdir}
+	ln -sf libnvidia-ml.so.${version} ${DESTDIR}/${libdir}/libnvidia-ml.so
+	ln -sf libnvidia-ml.so.${version} ${DESTDIR}/${libdir}/libnvidia-ml.so.1
+
+	vinstall libnvidia-encode.so.${version} 755 ${libdir}
+	ln -sf libnvidia-encode.so.${version} ${DESTDIR}/${libdir}/libnvidia-encode.so
+	ln -sf libnvidia-encode.so.${version} ${DESTDIR}/${libdir}/libnvidia-encode.so.1
+
+	vinstall libnvidia-ifr.so.${version} 755 ${libdir}
+	ln -sf libnvidia-ifr.so.${version} ${DESTDIR}/${libdir}/libnvidia-ifr.so
+	ln -sf libnvidia-ifr.so.${version} ${DESTDIR}/${libdir}/libnvidia-ifr.so.1
+
+	vinstall libnvidia-fbc.so.${version} 755 ${libdir}
+	ln -sf libnvidia-fbc.so.${version} ${DESTDIR}/${libdir}/libnvidia-fbc.so
+	ln -sf libnvidia-fbc.so.${version} ${DESTDIR}/${libdir}/libnvidia-fbc.so.1
+
+	# CUDA
+	vinstall libcuda.so.${version} 755 ${libdir}
+	ln -sf libcuda.so.${version} ${DESTDIR}/${libdir}/libcuda.so
+	ln -sf libcuda.so.${version} ${DESTDIR}/${libdir}/libcuda.so.1
+
+	vinstall libnvcuvid.so.${version} 755 ${libdir}
+	ln -sf libnvcuvid.so.${version} ${DESTDIR}/${libdir}/libnvcuvid.so
+	ln -sf libnvcuvid.so.${version} ${DESTDIR}/${libdir}/libnvcuvid.so.1
+
+	vinstall libnvidia-opticalflow.so.${version} 755 ${libdir}
+	ln -sf libnvidia-opticalflow.so.${version} \
+		${DESTDIR}/${libdir}/libnvidia-opticalflow.so
+	ln -sf libnvidia-opticalflow.so.${version} \
+		${DESTDIR}/${libdir}/libnvidia-opticalflow.so.1
+
+	vinstall libnvidia-ptxjitcompiler.so.${version} 755 ${libdir}
+	ln -sf libnvidia-ptxjitcompiler.so.${version} \
+		${DESTDIR}/${libdir}/libnvidia-ptxjitcompiler.so.1
+	ln -sf libnvidia-ptxjitcompiler.so.1 \
+		${DESTDIR}/${libdir}/libnvidia-ptxjitcompiler.so
+
+	vinstall libnvidia-allocator.so.${version} 755 ${libdir}
+	ln -sf libnvidia-allocator.so.${version} \
+		${DESTDIR}/${libdir}/libnvidia-allocator.so.1
+	ln -sf libnvidia-allocator.so.1 \
+		${DESTDIR}/${libdir}/libnvidia-allocator.so
+}
+
+do_extract() {
+	install -m755 ${XBPS_SRCDISTDIR}/${pkgname}-${version}/${_pkg}.run ${wrksrc}
+	cd ${wrksrc}
+	./${_pkg}.run --extract-only
+	rm -f ${_pkg}.run
+}
+
+do_install() {
+	cd ${_pkg}
+
+	# X driver
+	vinstall nvidia_drv.so 755 usr/lib/xorg/modules/drivers
+
+	# firmware
+	vinstall firmware/gsp.bin 644 usr/lib/firmware/nvidia/${version}
+
+	# GLX extension module for X
+	vinstall libglxserver_nvidia.so.${version} 755 usr/lib/nvidia/xorg
+	ln -sf libglxserver_nvidia.so.${version} \
+		${DESTDIR}/usr/lib/nvidia/xorg/libglxserver_nvidia.so
+	ln -sf libglxserver_nvidia.so.${version} \
+		${DESTDIR}/usr/lib/nvidia/xorg/libglxserver_nvidia.so.1
+
+	vinstall libnvidia-egl-wayland.so.1.1.7 755 usr/lib
+	ln -sf libnvidia-egl-wayland.so.1.1.7 \
+		${DESTDIR}/usr/lib/libnvidia-egl-wayland.so.1
+
+	vinstall 10_nvidia.json 755 usr/share/glvnd/egl_vendor.d
+	vinstall 10_nvidia_wayland.json \
+		755 usr/share/egl/egl_external_platform.d
+
+	vinstall libnvidia-cfg.so.${version} 755 usr/lib
+	ln -sf libnvidia-cfg.so.${version} ${DESTDIR}/usr/lib/libnvidia-cfg.so
+	ln -sf libnvidia-cfg.so.${version} ${DESTDIR}/usr/lib/libnvidia-cfg.so.1
+
+	vbin nvidia-cuda-mps-control
+	vbin nvidia-cuda-mps-server
+	gzip -d nvidia-cuda-mps-control.1.gz
+	vman nvidia-cuda-mps-control.1
+
+	# nvidia-xconfig
+	vbin nvidia-xconfig
+	gzip -d nvidia-xconfig.1.gz
+	vman nvidia-xconfig.1
+
+	# nvidia-settings
+	vbin nvidia-settings
+	gzip -d nvidia-settings.1.gz
+	vman nvidia-settings.1
+	vinstall nvidia-settings.desktop 644 usr/share/applications
+	vinstall nvidia-settings.png 644 usr/share/pixmaps
+	sed -e 's:__UTILS_PATH__:/usr/bin:' \
+		-e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' \
+		-i ${DESTDIR}/usr/share/applications/nvidia-settings.desktop
+
+	vinstall libnvidia-gtk3.so.${version} 755 usr/lib
+	vinstall libnvidia-gtk2.so.${version} 755 usr/lib
+
+	# application profiles (needed by nvidia-settings)
+	vinstall nvidia-application-profiles-${version}-key-documentation \
+		644 usr/share/nvidia
+	vinstall nvidia-application-profiles-${version}-rc 644 usr/share/nvidia
+
+	# nvidia-bug-report
+	vbin nvidia-bug-report.sh nvidia-bug-report
+	vbin nvidia-debugdump
+
+	# nvidia-smi
+	vbin nvidia-smi
+	gzip -d nvidia-smi.1.gz
+	vman nvidia-smi.1
+
+	# nvidia-modprobe
+	vinstall nvidia-modprobe 4755 usr/bin
+	gzip -d nvidia-modprobe.1.gz
+	vman nvidia-modprobe.1
+
+	# nvidia-persistenced
+	vinstall nvidia-persistenced 4755 usr/bin
+	gzip -d nvidia-persistenced.1.gz
+	vman nvidia-persistenced.1
+
+	# opencl pkg
+	vinstall nvidia.icd 644 etc/OpenCL/vendors
+	vinstall nvidia_layers.json 644 usr/share/vulkan/implicit_layer.d
+
+	vinstall libnvidia-compiler.so.${version} 755 usr/lib
+
+	vinstall libnvidia-opencl.so.${version} 755 usr/lib
+	ln -sf libnvidia-opencl.so.${version} \
+		${DESTDIR}/usr/lib/libnvidia-opencl.so
+	ln -sf libnvidia-opencl.so.${version} \
+		${DESTDIR}/usr/lib/libnvidia-opencl.so.1
+
+	# vulkan icd
+	vinstall nvidia_icd.json 644 usr/share/vulkan/icd.d
+
+	# vulkan real-time ray tracing extensions
+	vinstall libnvidia-rtcore.so.${version} 755 usr/lib
+	vinstall libnvidia-cbl.so.${version} 755 usr/lib
+
+	# ngx
+	vbin nvidia-ngx-updater
+	vinstall libnvidia-ngx.so.${version} 755 usr/lib
+	ln -sf libnvidia-ngx.so.${version} \
+		${DESTDIR}/usr/lib/libnvidia-ngx.so.1
+	ln -sf libnvidia-ngx.so.1 \
+		${DESTDIR}/usr/lib/libnvidia-ngx.so
+
+	vinstall _nvngx.dll 755 usr/lib/nvidia/wine
+	vinstall nvngx.dll 755 usr/lib/nvidia/wine
+
+	# optix ray racing engine
+	vinstall libnvoptix.so.${version} 755 usr/lib
+	ln -sf libnvoptix.so.${version} /usr/lib/libnvoptix.so
+	ln -sf libnvoptix.so.${version} /usr/lib/libnvoptix.so.1
+
+	# dkms pkg
+	vmkdir usr/src/nvidia-${version}
+	vcopy "kernel/*" usr/src/nvidia-${version}
+	vcopy ${FILESDIR}/dkms.conf usr/src/nvidia-${version}
+	sed -e "s/__PKGVER/${version}/g" \
+		-e 's/__MAKEJOBS/-j$(nproc)/g' \
+		-i ${DESTDIR}/usr/src/nvidia-${version}/dkms.conf
+
+	# Xorg conf for PRIME
+	vmkdir /usr/share/X11/xorg.conf.d/
+	vinstall ${FILESDIR}/nvidia-drm-outputclass.conf 644 \
+		/usr/share/X11/xorg.conf.d 10-nvidia-drm-outputclass.conf
+
+	vbin ${FILESDIR}/prime-run
+
+	# Blacklist nouveau
+	vmkdir usr/lib/modprobe.d
+	echo "blacklist nouveau" > ${DESTDIR}/usr/lib/modprobe.d/nvidia.conf
+	chmod 644 ${DESTDIR}/usr/lib/modprobe.d/nvidia.conf
+
+	# License and documentation
+	vlicense LICENSE
+	vdoc README.txt README
+	vdoc NVIDIA_Changelog
+
+	# nvvm compiler
+	vinstall libnvidia-nvvm.so.4.0.0 755 usr/lib
+	ln -sf libnvidia-nvvm.so.4.0.0 \
+		${DESTDIR}/usr/lib/libnvidia-nvvm.so.4
+	ln -sf libnvidia-nvvm.so.4 \
+		${DESTDIR}/usr/lib/libnvidia-nvvm.so
+
+	# Libraries (64bit)
+	_install_libs usr/lib
+	cd 32
+	# Libraries (32bit)
+	_install_libs usr/lib32
+}
+
+nvidia470-gtklibs_package() {
+	short_desc="${_desc} - GTK+ libraries"
+	pkg_install() {
+		vmove "usr/lib/lib*gtk*.so*"
+	}
+}
+
+nvidia470-libs-32bit_package() {
+	short_desc="${_desc} - common libraries (32bit)"
+	# manually set 32bit depends for libglvnd
+	depends="glibc-32bit>=0 libX11-32bit>=0 libXext-32bit>=0 libglvnd-32bit>=0"
+	repository="multilib/nonfree"
+	pkg_install() {
+		vmove usr/lib32
+	}
+}
+
+nvidia470-libs_package() {
+	short_desc="${_desc} - common libraries"
+	depends="libglvnd"
+	nostrip_files="gsp.bin"
+	pkg_install() {
+		vmove usr/lib
+	}
+}
+
+nvidia470-dkms_package() {
+	short_desc="${_desc} - DKMS kernel module"
+	depends="dkms xbps-triggers>=0.121_1"
+	dkms_modules="nvidia ${version}"
+	# dkms must be before initramfs-regenerate to build modules before images
+	triggers="dkms initramfs-regenerate"
+
+	pkg_install() {
+		vmove usr/src
+		vmove usr/lib/modprobe.d
+	}
+}
+
+nvidia470-opencl_package() {
+	short_desc="${_desc} - OpenCL implementation"
+	depends="ocl-icd"
+	pkg_install() {
+		vmove "usr/lib/libnvidia-compiler*"
+		vmove "usr/lib/libnvidia-opencl*"
+		vmove etc/OpenCL
+	}
+}
diff --git a/srcpkgs/nvidia470/update b/srcpkgs/nvidia470/update
new file mode 100644
index 000000000000..d33b1d9a141f
--- /dev/null
+++ b/srcpkgs/nvidia470/update
@@ -0,0 +1,2 @@
+site="http://www.nvidia.com/object/unix.html"
+pattern='Branch Version.+>\K[\d.]+(?=</A>)'

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2022-02-04 14:59 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-06 18:26 [PR PATCH] Nvidia drivers motorto
2022-01-26 17:36 ` prateekmedia
2022-01-26 21:32 ` motorto
2022-01-28 16:17 ` wael444
2022-01-28 17:32 ` wael444
2022-01-28 21:50 ` abenson
2022-01-28 22:14 ` [PR PATCH] [Updated] " abenson
2022-01-28 22:16 ` abenson
2022-02-02 13:05 ` Lolzen
2022-02-03  4:03 ` [PR PATCH] [Updated] " abenson
2022-02-03  4:07 ` abenson
2022-02-03  4:08 ` abenson
2022-02-03  4:14 ` abenson
2022-02-03 14:24 ` Lolzen
2022-02-03 22:02 ` motorto
2022-02-04  4:31 ` Lolzen
2022-02-04  5:33 ` [PR PATCH] [Closed]: " abenson
2022-02-04 12:18 ` wael444
2022-02-04 14:59 ` abenson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).