nvidia: egl/wayland fixes and tweaks, added NGX wine/proton DLLs and updater, GSP firmware

This commit is contained in:
Matt Housh 2023-03-21 23:05:51 -05:00
parent d701cb40a4
commit 4cdb6f38f4
4 changed files with 85 additions and 27 deletions

View File

@ -4,10 +4,12 @@ drwxr-xr-x root/root etc/OpenCL/vendors/
-rw-r--r-- root/root etc/OpenCL/vendors/nvidia.icd
drwxr-xr-x root/root etc/rc.d/
-rwxr-xr-x root/root etc/rc.d/nvidia-powerd
drwxr-xr-x root/root etc/vulkan/
drwxr-xr-x root/root etc/vulkan/icd.d/
-rw-r--r-- root/root etc/vulkan/icd.d/nvidia_icd.json
drwxr-xr-x root/root lib/
drwxr-xr-x root/root lib/firmware/
drwxr-xr-x root/root lib/firmware/nvidia/
drwxr-xr-x root/root lib/firmware/nvidia/525.89.02/
-rw-r--r-- root/root lib/firmware/nvidia/525.89.02/gsp_ad10x.bin
-rw-r--r-- root/root lib/firmware/nvidia/525.89.02/gsp_tu10x.bin
drwxr-xr-x root/root lib/modules/
drwxr-xr-x root/root lib/modules/<kernel-version>/
drwxr-xr-x root/root lib/modules/<kernel-version>/extra/
@ -25,12 +27,15 @@ drwxr-xr-x root/root usr/bin/
-rwxr-xr-x root/root usr/bin/nvidia-cuda-mps-server
-rwxr-xr-x root/root usr/bin/nvidia-debugdump
-rwsr-xr-x root/root usr/bin/nvidia-modprobe
-rwxr-xr-x root/root usr/bin/nvidia-ngx-updater
-rwxr-xr-x root/root usr/bin/nvidia-persistenced
-rwxr-xr-x root/root usr/bin/nvidia-powerd
-rwxr-xr-x root/root usr/bin/nvidia-settings
-rwxr-xr-x root/root usr/bin/nvidia-smi
-rwxr-xr-x root/root usr/bin/nvidia-xconfig
drwxr-xr-x root/root usr/lib/
drwxr-xr-x root/root usr/lib/gbm/
lrwxrwxrwx root/root usr/lib/gbm/nvidia-drm_gbm.so -> libnvidia-allocator.so.525.89.02
lrwxrwxrwx root/root usr/lib/libEGL_nvidia.so.0 -> libEGL_nvidia.so.525.89.02
-rwxr-xr-x root/root usr/lib/libEGL_nvidia.so.525.89.02
lrwxrwxrwx root/root usr/lib/libGLESv1_CM_nvidia.so.1 -> libGLESv1_CM_nvidia.so.525.89.02
@ -46,17 +51,38 @@ lrwxrwxrwx root/root usr/lib/libcuda.so.1 -> libcuda.so.525.89.02
lrwxrwxrwx root/root usr/lib/libcudadebugger.so -> libcudadebugger.so.525.89.02
lrwxrwxrwx root/root usr/lib/libcudadebugger.so.1 -> libcudadebugger.so.525.89.02
-rwxr-xr-x root/root usr/lib/libcudadebugger.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvcuvid.so -> libnvcuvid.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvcuvid.so.1 -> libnvcuvid.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvcuvid.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-allocator.so -> libnvidia-allocator.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-allocator.so.1 -> libnvidia-allocator.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-allocator.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-cfg.so -> libnvidia-cfg.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-cfg.so.1 -> libnvidia-cfg.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-cfg.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-compiler.so -> libnvidia-compiler.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-compiler.so.1 -> libnvidia-compiler.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-compiler.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-egl-gbm.so -> libnvidia-egl-gbm.so.1.1.0
lrwxrwxrwx root/root usr/lib/libnvidia-egl-gbm.so.1 -> libnvidia-egl-gbm.so.1.1.0
-rwxr-xr-x root/root usr/lib/libnvidia-egl-gbm.so.1.1.0
lrwxrwxrwx root/root usr/lib/libnvidia-eglcore.so -> libnvidia-eglcore.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-eglcore.so.1 -> libnvidia-eglcore.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-eglcore.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-encode.so -> libnvidia-encode.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-encode.so.1 -> libnvidia-encode.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-encode.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-fbc.so -> libnvidia-fbc.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-fbc.so.1 -> libnvidia-fbc.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-fbc.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-glcore.so -> libnvidia-glcore.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-glcore.so.1 -> libnvidia-glcore.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-glcore.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-glsi.so -> libnvidia-glsi.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-glsi.so.1 -> libnvidia-glsi.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-glsi.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-glvkspirv.so -> libnvidia-glvkspirv.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-glvkspirv.so.1 -> libnvidia-glvkspirv.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-glvkspirv.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-gtk2.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-gtk3.so.525.89.02
@ -75,13 +101,17 @@ lrwxrwxrwx root/root usr/lib/libnvidia-opticalflow.so.1 -> libnvidia-opticalflow
lrwxrwxrwx root/root usr/lib/libnvidia-ptxjitcompiler.so -> libnvidia-ptxjitcompiler.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-ptxjitcompiler.so.1 -> libnvidia-ptxjitcompiler.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-ptxjitcompiler.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-rtcore.so -> libnvidia-rtcore.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvidia-rtcore.so.1 -> libnvidia-rtcore.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-rtcore.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvidia-tls.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvoptix.so -> libnvoptix.so.525.89.02
lrwxrwxrwx root/root usr/lib/libnvoptix.so.1 -> libnvoptix.so.525.89.02
-rwxr-xr-x root/root usr/lib/libnvoptix.so.525.89.02
lrwxrwxrwx root/root usr/lib/nvidia-drm_gbm.so -> libnvidia-allocator.so.525.89.02
drwxr-xr-x root/root usr/lib/nvidia/
drwxr-xr-x root/root usr/lib/nvidia/wine/
-rwxr-xr-x root/root usr/lib/nvidia/wine/_nvngx.dll
-rwxr-xr-x root/root usr/lib/nvidia/wine/nvngx.dll
drwxr-xr-x root/root usr/lib/nvidia/xorg/
lrwxrwxrwx root/root usr/lib/nvidia/xorg/libglxserver_nvidia.so -> libglxserver_nvidia.so.525.89.02
lrwxrwxrwx root/root usr/lib/nvidia/xorg/libglxserver_nvidia.so.1 -> libglxserver_nvidia.so.525.89.02
@ -112,3 +142,8 @@ drwxr-xr-x root/root usr/share/nvidia/
-rw-r--r-- root/root usr/share/nvidia/nvidia-application-profiles-525.89.02-rc
drwxr-xr-x root/root usr/share/pixmaps/
-rw-r--r-- root/root usr/share/pixmaps/nvidia-settings.png
drwxr-xr-x root/root usr/share/vulkan/
drwxr-xr-x root/root usr/share/vulkan/icd.d/
-rw-r--r-- root/root usr/share/vulkan/icd.d/nvidia_icd.json
drwxr-xr-x root/root usr/share/vulkan/implicit_layer.d/
-rw-r--r-- root/root usr/share/vulkan/implicit_layer.d/nvidia_layers.json

View File

@ -1,7 +1,7 @@
untrusted comment: verify with /etc/ports/opt.pub
RWSE3ohX2g5d/XUiTdFk2obH/wDOaqCRK4HnROiBXT62/fK3FtxgrH9K/sLRRmZWKFte88mUsyIRK753yQnfaUbq9iZGTixtKAg=
SHA256 (Pkgfile) = 7493bd971ecb9fc349d6cba99356d7f5f59ae58d03cc07d0c260121d66c20e71
SHA256 (.footprint) = b1a3fc660fc513144d0d4b3a39fdb9be90b691d7f6c53f92d8d927f742c2514e
RWSE3ohX2g5d/UEcUXFZZJbgVWibCJwpDJ2oEDMjc1DMQf5QRnDFIfOZrVzDFYhcjENMbudZwuDqSz21aLvsU3CawPL6mdnEVgE=
SHA256 (Pkgfile) = c1e01622c45bbb4e8b4b9218d4e363f7cbabd7ff3282015c2b615024008c19b3
SHA256 (.footprint) = c8249bbe8afe3a13f569c5ab64d40c888544c4d271aeff129dc64ee46c60c6fa
SHA256 (NVIDIA-Linux-x86_64-525.89.02.run) = 0e412c88c5bd98f842a839a6f64614f20e4c0950ef7cffb12b158a71633593e9
SHA256 (90-nvidia-uvm.rules) = c35c61cebf5bf9a112ac06539bdc670a388afa4b50a7f8223a114fbeafedb140
SHA256 (10-nvidia-drm-outputclass.conf) = 4a72c70d7e348102f8c159b3f58973218bc740de1d86830f7cbee1c40744929c

View File

@ -5,7 +5,7 @@
name=nvidia
version=525.89.02
release=1
release=2
source=(https://us.download.nvidia.com/XFree86/Linux-x86_64/$version/NVIDIA-Linux-x86_64-$version.run \
90-nvidia-uvm.rules 10-nvidia-drm-outputclass.conf nvidia-powerd.rc)
@ -35,12 +35,15 @@ build() {
ln -s libnvidia-egl-gbm.so.1.1.0 $PKG/usr/lib/libnvidia-egl-gbm.so.1
ln -s libnvidia-egl-gbm.so.1.1.0 $PKG/usr/lib/libnvidia-egl-gbm.so
install -D -m 0644 15_nvidia_gbm.json $PKG/usr/share/egl/egl_external_platform.d/15_nvidia_gbm.json
ln -s libnvidia-allocator.so.$version $PKG/usr/lib/nvidia-drm_gbm.so
install -d -m 0755 $PKG/usr/lib/gbm
ln -s libnvidia-allocator.so.$version $PKG/usr/lib/gbm/nvidia-drm_gbm.so
# wayland EGL library and config
if [ $(prt-get isinst wayland > /dev/null) -ne 0 ]; then
# wayland config
if prt-get isinst wayland > /dev/null; then
# let egl-wayland handle the library
echo -e "\n\nINFO: wayland is installed; if nvidia eglstream support is desired/needed, install 'egl-wayland'!\n\n"
sleep 5
install -d $PKG/usr/share/egl/egl_external_platform.d
install -m 0755 libnvidia-egl-wayland.so.1.0.2 $PKG/usr/lib/
install -m 0644 10_nvidia_wayland.json $PKG/usr/share/egl/egl_external_platform.d/
fi
@ -51,17 +54,17 @@ build() {
ln -s libEGL_nvidia.so.$version $PKG/usr/lib/libEGL_nvidia.so.0
# vulkan ICD config
install -d $PKG/etc/vulkan/icd.d
install -m 0644 nvidia_icd.json $PKG/etc/vulkan/icd.d/
install -D -m 0644 nvidia_icd.json $PKG/usr/share/vulkan/icd.d/nvidia_icd.json
# vulkan layer config
install -D -m 0644 nvidia_layers.json $PKG/usr/share/vulkan/implicit_layer.d/nvidia_layers.json
# driver component libraries
install -m 0755 libnvidia-cfg.so.$version $PKG/usr/lib/
install -m 0755 libnvidia-compiler.so.$version $PKG/usr/lib/
install -m 0755 libnvidia-eglcore.so.$version $PKG/usr/lib/
install -m 0755 libnvidia-glcore.so.$version $PKG/usr/lib/
install -m 0755 libnvidia-glsi.so.$version $PKG/usr/lib/
install -m 0755 libnvidia-glvkspirv.so.$version $PKG/usr/lib/
install -m 0755 libnvidia-rtcore.so.$version $PKG/usr/lib/
for C in cfg compiler {e,}glcore gl{si,vkspirv} rtcore allocator; do
install -m 0755 libnvidia-${C}.so.$version $PKG/usr/lib/
ln -s libnvidia-${C}.so.$version $PKG/usr/lib/libnvidia-${C}.so.1
ln -s libnvidia-${C}.so.$version $PKG/usr/lib/libnvidia-${C}.so
done
# vendor VDPAU library
install -D -m 0755 libvdpau_nvidia.so.$version $PKG/usr/lib/vdpau/libvdpau_nvidia.so.$version
@ -110,8 +113,14 @@ build() {
# encoding/decoding libraries
install -m 0755 libnvcuvid.so.$version $PKG/usr/lib/
ln -s libnvcuvid.so.$version $PKG/usr/lib/libnvcuvid.so.1
ln -s libnvcuvid.so.$version $PKG/usr/lib/libnvcuvid.so
install -m 0755 libnvidia-encode.so.$version $PKG/usr/lib/
ln -s libnvidia-encode.so.$version $PKG/usr/lib/libnvidia-encode.so.1
ln -s libnvidia-encode.so.$version $PKG/usr/lib/libnvidia-encode.so
install -m 0755 libnvidia-fbc.so.$version $PKG/usr/lib/
ln -s libnvidia-fbc.so.$version $PKG/usr/lib/libnvidia-fbc.so.1
ln -s libnvidia-fbc.so.$version $PKG/usr/lib/libnvidia-fbc.so
# OptiX ray tracing engine
install -m 0755 libnvoptix.so.$version $PKG/usr/lib/
@ -123,10 +132,22 @@ build() {
ln -s libnvidia-opticalflow.so.$version $PKG/usr/lib/libnvidia-opticalflow.so.1
ln -s libnvidia-opticalflow.so.$version $PKG/usr/lib/libnvidia-opticalflow.so
# NGX library
# NGX library and updater
install -m 0755 libnvidia-ngx.so.$version $PKG/usr/lib/
ln -s libnvidia-ngx.so.$version $PKG/usr/lib/libnvidia-ngx.so.1
ln -s libnvidia-ngx.so.$version $PKG/usr/lib/libnvidia-ngx.so
install -m 0755 nvidia-ngx-updater $PKG/usr/bin/
# NGX for wine/proton
if prt-get listinst --regex '^wine' >/dev/null 2>&1; then
install -d $PKG/usr/lib/nvidia/wine
install -m 0755 nvngx.dll $PKG/usr/lib/nvidia/wine/
install -m 0755 _nvngx.dll $PKG/usr/lib/nvidia/wine/
fi
# GSP firmware
install -d $PKG/lib/firmware/$name/$version
install -m 0644 firmware/gsp_*.bin $PKG/lib/firmware/$name/$version/
# X driver config
install -D -m 0644 $SRC/10-nvidia-drm-outputclass.conf \

View File

@ -1,9 +1,11 @@
README for nvidia 1xx.xx+
NOTE about groups and device permissions:
Add your user to the "video" group to be able to
use the nvidia devices required for 3D to function properly.
NOTE about wayland and eglstream:
*** NOTE for nvidia with udev ***
If using udev, add your user to the "video" group to be able to
use the nvidia devices required for 3d to function properly.
If wayland is installed and eglstream support is desired/needed,
additionally install the 'egl-wayland' port.