From fe7dd52d82923bc19852eae675317f7477e27ec7 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Sun, 1 Dec 2019 15:54:24 +0100 Subject: [PATCH] nvidia: update to 440.36 and switch to glvnd --- srcpkgs/nvidia/template | 81 ++++++++--------------------------------- 1 file changed, 15 insertions(+), 66 deletions(-) diff --git a/srcpkgs/nvidia/template b/srcpkgs/nvidia/template index f9734e83b03..ac0eed76856 100644 --- a/srcpkgs/nvidia/template +++ b/srcpkgs/nvidia/template @@ -3,10 +3,10 @@ _desc="NVIDIA drivers for linux" pkgname=nvidia -version=430.40 +version=440.36 revision=1 maintainer="Orphaned " -license="Proprietary NVIDIA license" +license="custom:NVIDIA Proprietary" homepage="http://www.nvidia.com" archs="i686 x86_64" @@ -16,25 +16,21 @@ create_wrksrc=yes short_desc="${_desc} - Libraries and Utilities" conflicts="catalyst>=0 xserver-abi-video>24_1" -build_options="glvnd" -desc_option_glvnd="Add support for NVIDIA's GL Vendor Neutral Dispatch implementation" -build_options_default="glvnd" - if [ "$XBPS_TARGET_MACHINE" = "x86_64" ]; then _pkg="NVIDIA-Linux-x86_64-${version}-no-compat32" distfiles="http://uk.download.nvidia.com/XFree86/Linux-x86_64/${version}/${_pkg}.run" - checksum=669ff38532ff05c78e1edc3c6df2055fd96437107f5919b6e5a774c3a495501b - subpackages="nvidia-gtklibs nvidia-dkms - nvidia-opencl nvidia-libs" + checksum=1d25b67e70e59db0d0604a1ddbffbd3fe42cd6bd8184630b9807ac457f734eab + subpackages="nvidia-gtklibs nvidia-dkms nvidia-opencl nvidia-libs" depends="nvidia-libs-${version}_${revision} nvidia-gtklibs-${version}_${revision} - nvidia-dkms-${version}_${revision} pkgconf" + nvidia-dkms-${version}_${revision} pkgconf libglvnd" else _pkg="NVIDIA-Linux-x86_64-${version}" distfiles="http://uk.download.nvidia.com/XFree86/Linux-x86_64/${version}/${_pkg}.run" - checksum=f700899f48ba711b7e1598014e8db9a93537d7baa3d6a64067ed08578387dfd7 + checksum=50086254101fc662c928194315b12d1fc773c3f21667d0091700ad1f79a36d59 subpackages="nvidia-libs" - depends="pkgconf" + depends="pkgconf libglvnd" + build_style=meta fi do_extract() { @@ -44,12 +40,6 @@ do_extract() { rm -f ${_pkg}.run } -pre_install() { - cd ${_pkg} - cp nvidia_icd.json.template nvidia_icd.json - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json -} - do_install() { cd ${_pkg} @@ -64,8 +54,8 @@ do_install() { ln -sf libglxserver_nvidia.so.${version} \ ${DESTDIR}/usr/lib/xorg/modules/extensions/libglxserver_nvidia.so.1 - vinstall libnvidia-egl-wayland.so.1.1.2 755 usr/lib - ln -sf libnvidia-egl-wayland.so.1.1.2 \ + vinstall libnvidia-egl-wayland.so.1.1.4 755 usr/lib + ln -sf libnvidia-egl-wayland.so.1.1.4 \ ${DESTDIR}/usr/lib/libnvidia-egl-wayland.so.1 vinstall 10_nvidia.json 755 usr/share/glvnd/egl_vendor.d @@ -172,31 +162,10 @@ do_install() { # Following libs are common between x86_64 and i686 # GLX client libs - if [ "${build_option_glvnd}" ]; then - # ----- Also provided by the libglvnd package (todo) - vinstall libGL.so.1.7.0 755 usr/lib - ln -sf libGL.so.1.7.0 ${DESTDIR}/usr/lib/libGL.so - ln -sf libGL.so.1.7.0 ${DESTDIR}/usr/lib/libGL.so.1 - - vinstall libGLX.so.0 755 usr/lib - ln -sf libGLX.so.0 ${DESTDIR}/usr/lib/libGLX.so - # -------------------------------------------------- - - # Required for GLVND option - vinstall libGLX_nvidia.so.${version} 755 usr/lib - ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/usr/lib/libGLX_nvidia.so.0 - ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/usr/lib/libGLX_indirect.so.0 - else - vinstall libGL.so.${version} 755 usr/lib - ln -sf libGL.so.${version} ${DESTDIR}/usr/lib/libGL.so - ln -sf libGL.so.${version} ${DESTDIR}/usr/lib/libGL.so.1 - - # Not required for non-GLVND option but recommended - # more info: https://devtalk.nvidia.com/default/topic/915640/multiple-glx-client-libraries-in-the-nvidia-linux-driver-installer-package/ - vinstall libGLX_nvidia.so.${version} 755 usr/lib - ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/usr/lib/libGLX_nvidia.so.0 - ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/usr/lib/libGLX_indirect.so.0 - fi + # Required for GLVND option + vinstall libGLX_nvidia.so.${version} 755 usr/lib + ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/usr/lib/libGLX_nvidia.so.0 + ln -sf libGLX_nvidia.so.${version} ${DESTDIR}/usr/lib/libGLX_indirect.so.0 # OpenGL core library vinstall libnvidia-glcore.so.${version} 755 usr/lib @@ -206,24 +175,6 @@ do_install() { # Vulkan core library vinstall libnvidia-glvkspirv.so.${version} 755 usr/lib - # EGL - vinstall libOpenGL.so.0 755 usr/lib - ln -sf libOpenGL.so.0 ${DESTDIR}/usr/lib/libOpenGL.so - - vinstall libGLdispatch.so.0 755 usr/lib - - vinstall libGLESv1_CM.so.1.2.0 755 usr/lib - ln -sf libGLESv1_CM.so.1.2.0 ${DESTDIR}/usr/lib/libGLESv1_CM.so - ln -sf libGLESv1_CM.so.1.2.0 ${DESTDIR}/usr/lib/libGLESv1_CM.so.1 - - vinstall libGLESv2.so.2.1.0 755 usr/lib - ln -sf libGLESv2.so.2.1.0 ${DESTDIR}/usr/lib/libGLESv2.so - ln -sf libGLESv2.so.2.1.0 ${DESTDIR}/usr/lib/libGLESv2.so.2 - - vinstall libEGL.so.1.1.0 755 usr/lib - ln -sf libEGL.so.1.1.0 ${DESTDIR}/usr/lib/libEGL.so - ln -sf libEGL.so.1.1.0 ${DESTDIR}/usr/lib/libEGL.so.1 - vinstall libEGL_nvidia.so.${version} 755 usr/lib ln -sf libEGL_nvidia.so.${version} ${DESTDIR}/usr/lib/libEGL_nvidia.so.0 @@ -298,9 +249,7 @@ nvidia-gtklibs_package() { } nvidia-libs_package() { short_desc="${_desc} - common libraries" - provides="libEGL-${version}_${revision} - libGL-${version}_${revision} libGLES-${version}_${revision}" - replaces="libEGL>=0 libGL>=0 libGLES>=0" + conflicts="libGL>10_1<19.2.5_2 libEGL>10_1<19.2.5_2 libGLES>10_1<19.2.5_2" pkg_install() { vmove usr/lib }