Skip to content

Instantly share code, notes, and snippets.

@therealromster
Created March 11, 2023 13:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save therealromster/47c72282750661b83d46324aade79deb to your computer and use it in GitHub Desktop.
Save therealromster/47c72282750661b83d46324aade79deb to your computer and use it in GitHub Desktop.
Nvidia fix for firmware and wayland
diff --git a/nvidia/Pkgfile b/nvidia/Pkgfile
index 122bb90cb..f43423b4a 100644
--- a/nvidia/Pkgfile
+++ b/nvidia/Pkgfile
@@ -38,9 +38,9 @@ build() {
ln -s libnvidia-allocator.so.$version $PKG/usr/lib/nvidia-drm_gbm.so
# wayland EGL library and config
- if [ $(prt-get isinst wayland > /dev/null) -ne 0 ]; then
+ if [ $(prt-get isinst wayland > /dev/null; echo $?) -eq 0 ]; then
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 0755 libnvidia-egl-wayland.so.1.1.10 $PKG/usr/lib/
install -m 0644 10_nvidia_wayland.json $PKG/usr/share/egl/egl_external_platform.d/
fi
@@ -51,8 +51,12 @@ 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 $PKG/usr/share/vulkan/icd.d/
+ install -m 0644 nvidia_icd.json $PKG/usr/share/vulkan/icd.d/
+
+ # vulkan layers config
+ install -d $PKG/usr/share/vulkan/implicit_layer.d/
+ install -m 0644 nvidia_layers.json $PKG/usr/share/vulkan/implicit_layer.d/
# driver component libraries
install -m 0755 libnvidia-cfg.so.$version $PKG/usr/lib/
@@ -91,7 +95,7 @@ build() {
install -m 0755 nvidia-cuda-mps-control $PKG/usr/bin/
install -m 0755 nvidia-cuda-mps-server $PKG/usr/bin/
- # TLS libraries
+ # Thread Local Storage
install -m 0755 libnvidia-tls.so.$version $PKG/usr/lib/
# monitoring and management API library
@@ -111,7 +115,11 @@ build() {
# encoding/decoding libraries
install -m 0755 libnvcuvid.so.$version $PKG/usr/lib/
install -m 0755 libnvidia-encode.so.$version $PKG/usr/lib/
+ ln -sf libnvidia-encode.so.${version} ${PKG}/usr/lib/libnvidia-encode.so
+ ln -sf libnvidia-encode.so.${version} ${PKG}/usr/lib/libnvidia-encode.so.1
install -m 0755 libnvidia-fbc.so.$version $PKG/usr/lib/
+ ln -sf libnvidia-fbc.so.${version} ${PKG}/usr/lib/libnvidia-fbc.so
+ ln -sf libnvidia-fbc.so.${version} ${PKG}/usr/lib/libnvidia-fbc.so.1
# OptiX ray tracing engine
install -m 0755 libnvoptix.so.$version $PKG/usr/lib/
@@ -128,10 +136,22 @@ build() {
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
+ # wine
+ if [ $(prt-get isinst wine > /dev/null; echo $?) -eq 0 ]; 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
+
# X driver config
install -D -m 0644 $SRC/10-nvidia-drm-outputclass.conf \
$PKG/usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf
+ # firmware
+ # offloads tasks from the CPU to the GPU
+ install -d $PKG/lib/firmware/nvidia/$version
+ install -D -m 0644 firmware/*.bin $PKG/lib/firmware/nvidia/$version/
+
# application profile keys and documentation
install -d -m 0755 $PKG/usr/share/nvidia
install -m 0644 nvidia-application-profiles-$version-rc $PKG/usr/share/nvidia/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment