summaryrefslogtreecommitdiff
path: root/nvidia/Pkgfile
blob: 2bf1bebe2a615db4b147cfed42e6ae01de830d3b (plain)
    1 # Description: NVIDIA Linux Display Driver (production branch)
    2 # URL: https://www.nvidia.com/
    3 # Maintainer: Matt Housh, jaeger at crux dot ninja
    4 # Depends on: gtk gtk3 libglvnd
    5 
    6 name=nvidia
    7 version=525.60.11
    8 release=1
    9 source=(https://us.download.nvidia.com/XFree86/Linux-x86_64/$version/NVIDIA-Linux-x86_64-$version.run \
   10 	90-nvidia-uvm.rules 10-nvidia-drm-outputclass.conf nvidia-powerd.rc)
   11 
   12 build() {
   13 	sh NVIDIA-Linux-x86_64-$version.run --extract-only
   14 	cd NVIDIA-Linux-x86_64-$version
   15 
   16 	# X driver and GLX extension
   17 	install -d $PKG/usr/lib/xorg/modules/{drivers,extensions}
   18 	install -m 0755 nvidia_drv.so $PKG/usr/lib/xorg/modules/drivers/
   19 	install -d -m 0755 $PKG/usr/lib/nvidia/xorg
   20 	install -m 0755 libglxserver_nvidia.so.$version $PKG/usr/lib/nvidia/xorg/
   21 	ln -s libglxserver_nvidia.so.$version $PKG/usr/lib/nvidia/xorg/libglxserver_nvidia.so
   22 	ln -s libglxserver_nvidia.so.$version $PKG/usr/lib/nvidia/xorg/libglxserver_nvidia.so.1
   23 
   24 	install -d $PKG/usr/lib
   25 
   26 	# EGL and OpenGL ES libraries and config
   27 	install -m 0755 libGLESv1_CM_nvidia.so.$version $PKG/usr/lib/
   28 	ln -s libGLESv1_CM_nvidia.so.$version $PKG/usr/lib/libGLESv1_CM_nvidia.so.1
   29 	install -m 0755 libGLESv2_nvidia.so.$version $PKG/usr/lib/
   30 	ln -s libGLESv2_nvidia.so.$version $PKG/usr/lib/libGLESv2_nvidia.so.2
   31 	install -D -m 0644 10_nvidia.json $PKG/usr/share/glvnd/egl_vendor.d/10_nvidia.json
   32 
   33 	# GBM libraries and config
   34 	install -m 0755 libnvidia-egl-gbm.so.1.1.0 $PKG/usr/lib/
   35 	ln -s libnvidia-egl-gbm.so.1.1.0 $PKG/usr/lib/libnvidia-egl-gbm.so.1
   36 	ln -s libnvidia-egl-gbm.so.1.1.0 $PKG/usr/lib/libnvidia-egl-gbm.so
   37 	install -D -m 0644 15_nvidia_gbm.json $PKG/usr/share/egl/egl_external_platform.d/15_nvidia_gbm.json
   38 	ln -s libnvidia-allocator.so.$version $PKG/usr/lib/nvidia-drm_gbm.so
   39 
   40 	# wayland EGL library and config
   41 	if [ $(prt-get isinst wayland > /dev/null) -ne 0 ]; then
   42 		install -d $PKG/usr/share/egl/egl_external_platform.d
   43 		install -m 0755 libnvidia-egl-wayland.so.1.0.2 $PKG/usr/lib/
   44 		install -m 0644 10_nvidia_wayland.json $PKG/usr/share/egl/egl_external_platform.d/
   45 	fi
   46 
   47 	# GLVND vendor implementation libraries
   48 	install -m 0755 libGLX_nvidia.so.$version $PKG/usr/lib/
   49 	ln -s libGLX_nvidia.so.$version $PKG/usr/lib/libGLX_nvidia.so.0
   50 	install -m 0755 libEGL_nvidia.so.$version $PKG/usr/lib/
   51 	ln -s libEGL_nvidia.so.$version $PKG/usr/lib/libEGL_nvidia.so.0
   52 
   53 	# vulkan ICD config
   54 	install -d $PKG/etc/vulkan/icd.d
   55 	install -m 0644 nvidia_icd.json $PKG/etc/vulkan/icd.d/
   56 
   57 	# driver component libraries
   58 	install -m 0755 libnvidia-cfg.so.$version $PKG/usr/lib/
   59 	install -m 0755 libnvidia-compiler.so.$version $PKG/usr/lib/
   60 	install -m 0755 libnvidia-eglcore.so.$version $PKG/usr/lib/
   61 	install -m 0755 libnvidia-glcore.so.$version $PKG/usr/lib/
   62 	install -m 0755 libnvidia-glsi.so.$version $PKG/usr/lib/
   63 	install -m 0755 libnvidia-glvkspirv.so.$version $PKG/usr/lib/
   64 	install -m 0755 libnvidia-rtcore.so.$version $PKG/usr/lib/
   65 
   66 	# vendor VDPAU library
   67 	install -D -m 0755 libvdpau_nvidia.so.$version $PKG/usr/lib/vdpau/libvdpau_nvidia.so.$version
   68 	ln -s libvdpau_nvidia.so.$version $PKG/usr/lib/vdpau/libvdpau_nvidia.so.1
   69 	ln -s libvdpau_nvidia.so.$version $PKG/usr/lib/vdpau/libvdpau_nvidia.so
   70 
   71 	# CUDA libraries
   72 	install -m 0755 libcuda.so.$version $PKG/usr/lib/
   73 	ln -s libcuda.so.$version $PKG/usr/lib/libcuda.so.1
   74 	ln -s libcuda.so.$version $PKG/usr/lib/libcuda.so
   75 	install -m 0755 libcudadebugger.so.$version $PKG/usr/lib/
   76 	ln -s libcudadebugger.so.$version $PKG/usr/lib/libcudadebugger.so.1
   77 	ln -s libcudadebugger.so.$version $PKG/usr/lib/libcudadebugger.so
   78 	install -m 0755 libnvidia-ptxjitcompiler.so.$version $PKG/usr/lib/
   79 	ln -s libnvidia-ptxjitcompiler.so.$version $PKG/usr/lib/libnvidia-ptxjitcompiler.so.1
   80 	ln -s libnvidia-ptxjitcompiler.so.$version $PKG/usr/lib/libnvidia-ptxjitcompiler.so
   81 
   82 	# OpenCL libraries and config
   83 	install -m 0755 libOpenCL.so.1.0.0 $PKG/usr/lib/
   84 	install -m 0755 libnvidia-opencl.so.$version $PKG/usr/lib/
   85 	ln -s libnvidia-opencl.so.$version $PKG/usr/lib/libnvidia-opencl.so.1
   86 	ln -s libnvidia-opencl.so.$version $PKG/usr/lib/libnvidia-opencl.so
   87 	install -D -m 0644 nvidia.icd $PKG/etc/OpenCL/vendors/nvidia.icd
   88 
   89 	# CUDA MPI applications
   90 	install -d $PKG/usr/bin
   91 	install -m 0755 nvidia-cuda-mps-control $PKG/usr/bin/
   92 	install -m 0755 nvidia-cuda-mps-server $PKG/usr/bin/
   93 
   94 	# TLS libraries
   95 	install -m 0755 libnvidia-tls.so.$version $PKG/usr/lib/
   96 
   97 	# monitoring and management API library
   98 	install -m 0755 libnvidia-ml.so.$version $PKG/usr/lib/
   99 	ln -s libnvidia-ml.so.$version $PKG/usr/lib/libnvidia-ml.so.1
  100 	ln -s libnvidia-ml.so.$version $PKG/usr/lib/libnvidia-ml.so
  101 
  102 	# applications
  103 	install -m 4755 nvidia-modprobe $PKG/usr/bin/
  104 	install -m 0755 nvidia-{xconfig,settings,smi,debugdump,persistenced,powerd} \
  105 		$PKG/usr/bin/
  106 	install -D -m 0755 $SRC/nvidia-powerd.rc $PKG/etc/rc.d/nvidia-powerd
  107 
  108 	# nvidia-settings UI libraries
  109 	install -m 0755 libnvidia-gtk{2,3}.so.$version $PKG/usr/lib/
  110 
  111 	# encoding/decoding libraries
  112 	install -m 0755 libnvcuvid.so.$version $PKG/usr/lib/
  113 	install -m 0755 libnvidia-encode.so.$version $PKG/usr/lib/
  114 	install -m 0755 libnvidia-fbc.so.$version $PKG/usr/lib/
  115 
  116 	# OptiX ray tracing engine
  117 	install -m 0755 libnvoptix.so.$version $PKG/usr/lib/
  118 	ln -s libnvoptix.so.$version $PKG/usr/lib/libnvoptix.so.1
  119 	ln -s libnvoptix.so.$version $PKG/usr/lib/libnvoptix.so
  120 
  121 	# Optical Flow library
  122 	install -m 0755 libnvidia-opticalflow.so.$version $PKG/usr/lib/
  123 	ln -s libnvidia-opticalflow.so.$version $PKG/usr/lib/libnvidia-opticalflow.so.1
  124 	ln -s libnvidia-opticalflow.so.$version $PKG/usr/lib/libnvidia-opticalflow.so
  125 
  126 	# NGX library
  127 	install -m 0755 libnvidia-ngx.so.$version $PKG/usr/lib/
  128 	ln -s libnvidia-ngx.so.$version $PKG/usr/lib/libnvidia-ngx.so.1
  129 	ln -s libnvidia-ngx.so.$version $PKG/usr/lib/libnvidia-ngx.so
  130 
  131 	# X driver config
  132 	install -D -m 0644 $SRC/10-nvidia-drm-outputclass.conf \
  133 		$PKG/usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf
  134 
  135 	# application profile keys and documentation
  136 	install -d -m 0755 $PKG/usr/share/nvidia
  137 	install -m 0644 nvidia-application-profiles-$version-rc $PKG/usr/share/nvidia/
  138 	install -m 0644 nvidia-application-profiles-$version-key-documentation $PKG/usr/share/nvidia/
  139 
  140 	# desktop file and icon
  141 	install -d $PKG/usr/share/{applications,pixmaps}
  142 	sed -i -e 's,__UTILS_PATH__,/usr/bin,' -e 's,__PIXMAP_PATH__,/usr/share/pixmaps,' nvidia-settings.desktop
  143 	install -m 0644 nvidia-settings.desktop $PKG/usr/share/applications/
  144 	install -m 0644 nvidia-settings.png $PKG/usr/share/pixmaps/
  145 
  146 	# nvidia-uvm udev rules file
  147 	install -D -m 0644 $SRC/90-nvidia-uvm.rules $PKG/lib/udev/rules.d/90-nvidia-uvm.rules
  148 
  149 	# kernel modules
  150 	cd kernel
  151 	IGNORE_CC_MISMATCH=1 make module
  152 	install -d $PKG/lib/modules/$(uname -r)/extra
  153 	install -m 0644 *.ko $PKG/lib/modules/$(uname -r)/extra/
  154 }

Generated by cgit