summaryrefslogtreecommitdiff
path: root/nvidia/Pkgfile
blob: 05d14ad52ab8b53d297169d8f240271c44a9b32a (plain)
    1 # Description: NVIDIA Linux Display Driver (long lived branch)
    2 # URL: http://www.nvidia.com/
    3 # Maintainer: Matt Housh, jaeger at crux dot ninja
    4 # Depends on: gtk gtk3 libglvnd
    5 
    6 name=nvidia
    7 version=418.56
    8 release=1
    9 source=(http://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)
   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 	# EGL and OpenGL ES libraries and config
   25 	install -d $PKG/usr/lib
   26 	install -m 0755 libGLESv1_CM_nvidia.so.$version $PKG/usr/lib/
   27 	ln -s libGLESv1_CM_nvidia.so.$version $PKG/usr/lib/libGLESv1_CM_nvidia.so.1
   28 	install -m 0755 libGLESv2_nvidia.so.$version $PKG/usr/lib/
   29 	ln -s libGLESv2_nvidia.so.$version $PKG/usr/lib/libGLESv2_nvidia.so.2
   30 	install -D -m 0644 10_nvidia.json $PKG/usr/share/glvnd/egl_vendor.d/10_nvidia.json
   31 
   32 	# wayland EGL library and config
   33 	#install -d $PKG/usr/share/egl/egl_external_platform.d
   34 	#install -m 0755 libnvidia-egl-wayland.so.1.0.2 $PKG/usr/lib/
   35 	#install -m 0644 10_nvidia_wayland.json $PKG/usr/share/egl/egl_external_platform.d/
   36 
   37 	# GLVND vendor implementation libraries
   38 	install -m 0755 libGLX_nvidia.so.$version $PKG/usr/lib/
   39 	ln -s libGLX_nvidia.so.$version $PKG/usr/lib/libGLX_nvidia.so.0
   40 	install -m 0755 libEGL_nvidia.so.$version $PKG/usr/lib/
   41 	ln -s libEGL_nvidia.so.$version $PKG/usr/lib/libEGL_nvidia.so.0
   42 
   43 	# vulkan ICD config
   44 	install -d $PKG/etc/vulkan/icd.d
   45 	sed -i -e 's,__NV_VK_ICD__,libGLX_nvidia.so.0,g' nvidia_icd.json.template
   46 	install -m 0644 nvidia_icd.json.template $PKG/etc/vulkan/icd.d/nvidia_icd.json
   47 
   48 	# driver component libraries
   49 	install -m 0755 libnvidia-cfg.so.$version $PKG/usr/lib/
   50 	install -m 0755 libnvidia-compiler.so.$version $PKG/usr/lib/
   51 	install -m 0755 libnvidia-eglcore.so.$version $PKG/usr/lib/
   52 	install -m 0755 libnvidia-glcore.so.$version $PKG/usr/lib/
   53 	install -m 0755 libnvidia-glsi.so.$version $PKG/usr/lib/
   54 	install -m 0755 libnvidia-glvkspirv.so.$version $PKG/usr/lib/
   55 	install -m 0755 libnvidia-rtcore.so.$version $PKG/usr/lib/
   56 	install -m 0755 libnvidia-cbl.so.$version $PKG/usr/lib/
   57 
   58 	# vendor VDPAU library
   59 	install -D -m 0755 libvdpau_nvidia.so.$version $PKG/usr/lib/vdpau/libvdpau_nvidia.so.$version
   60 	ln -s libvdpau_nvidia.so.$version $PKG/usr/lib/vdpau/libvdpau_nvidia.so.1
   61 	ln -s libvdpau_nvidia.so.$version $PKG/usr/lib/vdpau/libvdpau_nvidia.so
   62 
   63 	# CUDA libraries
   64 	install -m 0755 libcuda.so.$version $PKG/usr/lib/
   65 	ln -s libcuda.so.$version $PKG/usr/lib/libcuda.so.1
   66 	ln -s libcuda.so.$version $PKG/usr/lib/libcuda.so
   67 	install -m 0755 libnvidia-fatbinaryloader.so.$version $PKG/usr/lib/
   68 	install -m 0755 libnvidia-ptxjitcompiler.so.$version $PKG/usr/lib/
   69 	ln -s libnvidia-ptxjitcompiler.so.$version $PKG/usr/lib/libnvidia-ptxjitcompiler.so.1
   70 	ln -s libnvidia-ptxjitcompiler.so.$version $PKG/usr/lib/libnvidia-ptxjitcompiler.so
   71 
   72 	# OpenCL libraries and config
   73 	install -m 0755 libOpenCL.so.1.0.0 $PKG/usr/lib/
   74 	install -m 0755 libnvidia-opencl.so.$version $PKG/usr/lib/
   75 	ln -s libnvidia-opencl.so.$version $PKG/usr/lib/libnvidia-opencl.so.1
   76 	ln -s libnvidia-opencl.so.$version $PKG/usr/lib/libnvidia-opencl.so
   77 	install -D -m 0644 nvidia.icd $PKG/etc/OpenCL/vendors/nvidia.icd
   78 
   79 	# CUDA MPI applications
   80 	install -d $PKG/usr/bin
   81 	install -m 0755 nvidia-cuda-mps-control $PKG/usr/bin/
   82 	install -m 0755 nvidia-cuda-mps-server $PKG/usr/bin/
   83 
   84 	# TLS libraries
   85 	install -m 0755 libnvidia-tls.so.$version $PKG/usr/lib/
   86 
   87 	# monitoring and management API library
   88 	install -m 0755 libnvidia-ml.so.$version $PKG/usr/lib/
   89 
   90 	# applications
   91 	install -m 4755 nvidia-modprobe $PKG/usr/bin/
   92 	install -m 0755 nvidia-{xconfig,settings,smi,debugdump,persistenced} \
   93 		$PKG/usr/bin/
   94 
   95 	# nvidia-settings UI libraries
   96 	install -m 0755 libnvidia-gtk{2,3}.so.$version $PKG/usr/lib/
   97 
   98 	# encoding/decoding libraries
   99 	install -m 0755 libnvcuvid.so.$version $PKG/usr/lib/
  100 	install -m 0755 libnvidia-encode.so.$version $PKG/usr/lib/
  101 	install -m 0755 libnvidia-ifr.so.$version $PKG/usr/lib/
  102 	install -m 0755 libnvidia-fbc.so.$version $PKG/usr/lib/
  103 
  104 	# OptiX ray tracing engine
  105 	install -m 0755 libnvoptix.so.$version $PKG/usr/lib/
  106 	ln -s libnvoptix.so.$version $PKG/usr/lib/libnvoptix.so.1
  107 	ln -s libnvoptix.so.$version $PKG/usr/lib/libnvoptix.so
  108 
  109 	# Optical Flow library
  110 	install -m 0755 libnvidia-opticalflow.so.$version $PKG/usr/lib/
  111 	ln -s libnvidia-opticalflow.so.$version $PKG/usr/lib/libnvidia-opticalflow.so.1
  112 	ln -s libnvidia-opticalflow.so.$version $PKG/usr/lib/libnvidia-opticalflow.so
  113 
  114 	# X driver config
  115 	install -D -m 0644 $SRC/10-nvidia-drm-outputclass.conf \
  116 		$PKG/usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf
  117 
  118 	# application profile keys and documentation
  119 	install -d -m 0755 $PKG/usr/share/nvidia
  120 	install -m 0644 nvidia-application-profiles-$version-rc $PKG/usr/share/nvidia/
  121 	install -m 0644 nvidia-application-profiles-$version-key-documentation $PKG/usr/share/nvidia/
  122 
  123 	# desktop file and icon
  124 	install -d $PKG/usr/share/{applications,pixmaps}
  125 	sed -i -e 's,__UTILS_PATH__,/usr/bin,' -e 's,__PIXMAP_PATH__,/usr/share/pixmaps,' nvidia-settings.desktop
  126 	install -m 0644 nvidia-settings.desktop $PKG/usr/share/applications/
  127 	install -m 0644 nvidia-settings.png $PKG/usr/share/pixmaps/
  128 
  129 	# nvidia-uvm udev rules file
  130 	install -D -m 0644 $SRC/90-nvidia-uvm.rules $PKG/lib/udev/rules.d/90-nvidia-uvm.rules
  131 
  132 	# kernel modules
  133 	cd kernel
  134 	IGNORE_CC_MISMATCH=1 make module
  135 	install -d $PKG/lib/modules/$(uname -r)/extra
  136 	install -m 0644 *.ko $PKG/lib/modules/$(uname -r)/extra/
  137 }

Generated by cgit