nvidia340: fix issues after libglvnd introduction

install EGL and GLES too and make it provider of them
install glx module into separate folder
replace libglvnd and provide it
provide INSTALL.msg with useful info
This commit is contained in:
Stefano Ragni 2019-12-09 20:04:46 +01:00 committed by Juan RP
parent d3c0c6abc4
commit 78b1dbbc6b
3 changed files with 40 additions and 9 deletions

View file

@ -0,0 +1,15 @@
> Remove from your /etc/X11/xorg.conf blocks like this:
Section "Files"
...
EndSection
This is known to happen when the configuration is generated by nvidia-xconfig.
Such a section interferes with the "Files" Section provided by the package.
-------------------------------------------------------------------------------
> If you wish to go back to nouveau:
# xbps-remove nvidia340 nvidia340-dkms
# xbps-install libglvnd

View file

@ -0,0 +1,4 @@
Section "Files"
ModulePath "/usr/lib/nvidia/xorg"
ModulePath "/usr/lib/xorg/modules"
EndSection

View file

@ -4,7 +4,7 @@ _desc="NVIDIA drivers (GeForce 8, 9, 9M, 100, 100M, 200, 300 series)"
pkgname=nvidia340
version=340.107
revision=6
revision=7
maintainer="Orphaned <orphan@voidlinux.org>"
license="custom:NVIDIA proprietary"
homepage="http://www.nvidia.com"
@ -53,14 +53,25 @@ do_install() {
vinstall nvidia_drv.so 755 usr/lib/xorg/modules/drivers
# GLX extension module for X
vinstall libglx.so.${version} 755 usr/lib/xorg/modules/extensions
ln -sf libglx.so.${version} ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx.so
ln -sf libglx.so.${version} ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx.so.1
vinstall libglx.so.${version} 755 usr/lib/nvidia/xorg
ln -sf libglx.so.${version} ${DESTDIR}/usr/lib/nvidia/xorg/libglx.so.1
ln -sf libglx.so.${version} ${DESTDIR}/usr/lib/nvidia/xorg/libglx.so
# Override default ModulePath to load nvidia's glx instead of xorg's
vinstall ${FILESDIR}/nvidia-glx.conf 644 /usr/share/X11/xorg.conf.d 10-nvidia-glx.conf
# OpenGL library
# OpenGL libraries (GL, EGL and GLES)
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
ln -sf libGL.so.${version} ${DESTDIR}/usr/lib/libGL.so
vinstall libEGL.so.${version} 755 usr/lib
ln -sf libEGL.so.${version} ${DESTDIR}/usr/lib/libEGL.so.1
ln -sf libEGL.so.${version} ${DESTDIR}/usr/lib/libEGL.so
vinstall libGLESv1_CM.so.${version} 755 usr/lib
ln -sf libGLESv1_CM.so.${version} ${DESTDIR}/usr/lib/libGLESv1_CM.so.1
ln -sf libGLESv1_CM.so.${version} ${DESTDIR}/usr/lib/libGLESv1_CM.so
vinstall libGLESv2.so.${version} 755 usr/lib
ln -sf libGLESv2.so.${version} ${DESTDIR}/usr/lib/libGLESv2.so.2
ln -sf libGLESv2.so.${version} ${DESTDIR}/usr/lib/libGLESv2.so
# OpenGL core library
vinstall libnvidia-glcore.so.${version} 755 usr/lib
@ -95,6 +106,8 @@ do_install() {
ln -sf libnvidia-fbc.so.${version} ${DESTDIR}/usr/lib/libnvidia-fbc.so
ln -sf libnvidia-fbc.so.${version} ${DESTDIR}/usr/lib/libnvidia-fbc.so.1
vinstall libnvidia-glsi.so.${version} 755 usr/lib
# CUDA
vbin nvidia-cuda-mps-control
vbin nvidia-cuda-mps-server
@ -202,9 +215,8 @@ nvidia340-opencl_package() {
}
nvidia340-libs_package() {
short_desc="${_desc} - libraries"
conflicts="libglvnd>=0"
provides="libGL-${version}_${revision}"
replaces="libGL>=0"
provides="libGL-7.11_1 libEGL-7.11_1 libGLES-7.11_1 libglvnd-1.3.0_1"
replaces="libGL>=0 libEGL>=0 libGLES>=0 libglvnd>=0"
pkg_install() {
vmove usr/lib
}