diff --git a/kernel/drivers/module-nvidia-current/actions.py b/kernel/drivers/module-nvidia-current/actions.py index 24a1ebfa93..f9bfbe95b8 100644 --- a/kernel/drivers/module-nvidia-current/actions.py +++ b/kernel/drivers/module-nvidia-current/actions.py @@ -27,8 +27,8 @@ def setup(): shelltools.move("tmp/*", ".") # Our libc is TLS enabled so use TLS library - shelltools.unlink("*-tls.so*") - shelltools.move("tls/*", ".") + #shelltools.unlink("*-tls.so*") + #shelltools.move("tls/*", ".") # xorg-server provides libwfb.so shelltools.unlink("libnvidia-wfb.so.*") @@ -53,26 +53,49 @@ def install(): if not get.buildTYPE() == 'emul32': # Kernel driver - pisitools.insinto("/lib/modules/%s/extra/nvidia" % KDIR, + pisitools.insinto("/lib/modules/%s/extra" % KDIR, "kernel/nvidia.ko") - pisitools.insinto("/lib/modules/%s/extra/nvidia" % KDIR, + pisitools.insinto("/lib/modules/%s/extra" % KDIR, "kernel/nvidia-uvm.ko") + pisitools.insinto("/lib/modules/%s/extra" % KDIR, + "kernel/nvidia-modeset.ko") # Command line tools and their man pages pisitools.dobin("nvidia-smi") pisitools.doman("nvidia-smi.1.gz") - + pisitools.dobin("nvidia-debugdump") + pisitools.dobin("nvidia-xconfig") + pisitools.doman("nvidia-xconfig.1.gz") + pisitools.dobin("nvidia-bug-report.sh") + pisitools.dobin("nvidia-cuda-mps-server") + pisitools.dobin("nvidia-cuda-mps-control") + pisitools.doman("nvidia-cuda-mps-control.1.gz") + pisitools.dobin("nvidia-modprobe") + pisitools.doman("nvidia-modprobe.1.gz") pisitools.dobin("nvidia-persistenced") + pisitools.doman("nvidia-persistenced.1.gz") + pisitools.dobin("nvidia-settings") + pisitools.doman("nvidia-settings.1.gz") ### Libraries # OpenGl library pisitools.dolib("libGL.so.%s" % version, nvlibdir) pisitools.dosym("libGL.so.%s" % version, "%s/libGL.so.1.2.0" % nvlibdir) + pisitools.dolib("libGL.so.%s" % version, libdir) + + pisitools.dolib("libEGL.so.1", nvlibdir) + pisitools.dolib("libEGL_nvidia.so.%s" % version, libdir) + pisitools.dolib("libGLESv1_CM_nvidia.so.%s" % version, libdir) + pisitools.dolib("libGLESv2_nvidia.so.%s" % version, libdir) # OpenCL + pisitools.insinto("/etc/OpenCL/vendors", "nvidia.icd") + pisitools.dolib("libnvidia-compiler.so.%s" % version, libdir) + pisitools.dosym("libnvidia-compiler.so.%s" % version, "%s/libnvidia-compiler.so.1" % libdir) + pisitools.dolib("libOpenCL.so.1.0.0", libdir) pisitools.dosym("libOpenCL.so.1.0.0", "%s/libOpenCL.so.1.0" % libdir) pisitools.dosym("libOpenCL.so.1.0", "%s/libOpenCL.so.1" % libdir) @@ -99,8 +122,7 @@ def install(): pisitools.dolib("libnvidia-cfg.so.%s" % version, libdir) pisitools.dosym("libnvidia-cfg.so.%s" % version, "%s/libnvidia-cfg.so.1" % libdir) - pisitools.dolib("libnvidia-compiler.so.%s" % version, libdir) - pisitools.dosym("libnvidia-compiler.so.%s" % version, "%s/libnvidia-compiler.so.1" % libdir) + # OpenGL core library and others for lib in ("glcore", "tls", "encode", "fbc", "glsi", "ifr", "eglcore"): @@ -108,22 +130,40 @@ def install(): pisitools.dosym("libnvidia-%s.so.%s" % (lib, version), "%s/libnvidia-%s.so.1" %(libdir, lib)) # VDPAU driver - pisitools.dolib("libvdpau_nvidia.so.%s" % version, "%s/vdpau" % nvlibdir) - pisitools.dosym("../nvidia-current/vdpau/libvdpau_nvidia.so.%s" % version, "%s/vdpau/libvdpau_nvidia.so.1" % nvlibdir.strip(driver_dir_name)) + pisitools.dolib("libvdpau_nvidia.so.%s" % version, "%s/vdpau" % libdir) + pisitools.dosym("libvdpau_nvidia.so.%s" % version, "%s/libvdpau_nvidia.so" % libdir) + + # nvidia-tls library + pisitools.dolib("libnvidia-tls.so.%s" % version, libdir) + pisitools.dolib("tls/libnvidia-tls.so.%s" % version, "%s/tls" % libdir) # X modules - pisitools.dolib("nvidia_drv.so", "%s/modules/drivers" % nvlibdir) - pisitools.dosym("%s/modules/drivers/nvidia_drv.so" % nvlibdir, "%s/modules/drivers/nvidia_drv.so" % xorglibdir) - pisitools.dolib("libglx.so.%s" % version, "%s/modules/extensions" % nvlibdir) - pisitools.dosym("libglx.so.%s" % version, "%s/modules/extensions/libglx.so" % nvlibdir) + pisitools.dolib("nvidia_drv.so", "%s/modules/drivers" % xorglibdir) + pisitools.dolib("libglx.so.%s" % version, "%s/modules/extensions" % xorglibdir) + pisitools.dosym("libglx.so.%s" % version, "%s/modules/extensions/libglx.so.1" % xorglibdir) + + pisitools.dolib("libGLX_nvidia.so.%s" % version, libdir) + pisitools.dosym("libGLX_nvidia.so.%s" % version, "%s/libGLX_indirect.so.0" % libdir) + + # PTX JIT Compiler (Parallel Thread Execution (PTX) is a pseudo-assembly language for CUDA) + pisitools.dolib("libnvidia-ptxjitcompiler.so.%s" % version, libdir) + + # Fat (multiarchitecture) binary loader + pisitools.dolib("libnvidia-fatbinaryloader.so.%s" % version, libdir) + + pisitools.insinto("/usr/share/X11/xorg.conf.d", "nvidia-drm-outputclass.conf") + pisitools.insinto("/usr/share/nvidia", "nvidia-application-profiles-361.28-rc") + pisitools.insinto("/usr/share/nvidia", "nvidia-application-profiles-361.28-key-documentation") + pisitools.insinto("/usr/share/pixmaps", "nvidia-settings.png") + + pisitools.dolib("libnvidia-gtk2.so.%s" % version, libdir) + pisitools.dolib("libnvidia-gtk3.so.%s" % version, libdir) # Exit time for emul32 build if get.buildTYPE() == 'emul32': pisitools.insinto(datadir, "ld.so.conf", "32bit-ld.so.conf") return - pisitools.insinto("/etc/OpenCL/vendors", "nvidia.icd") - pisitools.insinto(datadir, "ld.so.conf") pisitools.insinto(datadir, "XvMCConfig") @@ -137,7 +177,3 @@ def install(): # we have seperate packages for each of them. Nvidia provides tarballs for # these binaries. Don't forget to update these package with each NVIDIA # driver update. - - # Nvidia-bug-report - # Comes with our own nvidia-xcfonig package - # pisitools.dobin("nvidia-bug-report.sh") diff --git a/kernel/drivers/module-nvidia-current/files/modprobe.conf b/kernel/drivers/module-nvidia-current/files/modprobe.conf index b84fe20d0a..3ae4f6c2a4 100644 --- a/kernel/drivers/module-nvidia-current/files/modprobe.conf +++ b/kernel/drivers/module-nvidia-current/files/modprobe.conf @@ -1,8 +1,5 @@ -# Blacklist by default since nvidia* modules have the same aliases -blacklist nvidia-current - -# Fail if nouveau loaded -install nvidia-current if /bin/grep -qw "^nouveau" /proc/modules; then /bin/false; else /sbin/modprobe -i nvidia-current $CMDLINE_OPTS; fi - -# Load the right module when requested with the name "nvidia" -install nvidia M=$(/bin/readlink /etc/alternatives/libGL | /usr/bin/cut -d/ -f4 | /bin/grep nvidia) && /sbin/modprobe $M $CMDLINE_OPTS +blacklist nouveau +blacklist lbm-nouveau +options nouveau modeset=0 +alias nouveau off +alias lbm-nouveau off diff --git a/kernel/drivers/module-nvidia-current/files/nvidia-settings.desktop b/kernel/drivers/module-nvidia-current/files/nvidia-settings.desktop new file mode 100644 index 0000000000..f3dee42865 --- /dev/null +++ b/kernel/drivers/module-nvidia-current/files/nvidia-settings.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Type=Application +Encoding=UTF-8 +Name=NVIDIA X Server Settings +Comment=Configure NVIDIA X Server Settings +Exec=/usr/bin/nvidia-settings +Icon=/usr/share/pixmaps/nvidia-settings.png +Categories=Application;Settings; + diff --git a/kernel/drivers/module-nvidia-current/pspec.xml b/kernel/drivers/module-nvidia-current/pspec.xml index adcf924fb2..f2456077b5 100644 --- a/kernel/drivers/module-nvidia-current/pspec.xml +++ b/kernel/drivers/module-nvidia-current/pspec.xml @@ -11,11 +11,13 @@ NVIDIA NVIDIA drivers for GeForce 6xxx and newer GPUs NVIDIA graphics drivers provide optimized 2D/3D performance. - ftp://download.nvidia.com/XFree86/Linux-x86/358.16/NVIDIA-Linux-x86-358.16.run - ftp://download.nvidia.com/XFree86/Linux-x86_64/358.16/NVIDIA-Linux-x86_64-358.16.run + ftp://download.nvidia.com/XFree86/Linux-x86/361.28/NVIDIA-Linux-x86-361.28.run + ftp://download.nvidia.com/XFree86/Linux-x86_64/361.28/NVIDIA-Linux-x86_64-361.28.run kernel-module-headers libX11-devel + gtk2-devel + gtk3-devel @@ -25,6 +27,7 @@ Kernel module for current NVIDIA graphics driver releases kernel + module-nvidia-current-userspace /lib/modules @@ -33,6 +36,62 @@ noDelta + + + module-nvidia-current-userspace + data + Modprobe rules for nvidia-current kernel driver + + /etc/modprobe.d + + + modprobe.conf + + + + + nvidia-settings + app:gui + hardware.graphics + Settings for nvidia-current kernel driver + + atk + gtk2 + gtk3 + cairo + glib2 + pango + libX11 + libXext + gdk-pixbuf + module-nvidia-current + + + /usr/bin/nvidia-settings + /usr/share/man/man1/nvidia-settings.1 + /usr/lib/libnvidia-gtk* + /usr/share/applications + /usr/share/pixmaps + /usr/share/nvidia + + + nvidia-settings.desktop + + + + + nvidia-xconfig + app:console + hardware.graphics + Xconfig file for nvidia-current kernel driver + + module-nvidia-current + + + /usr/bin/nvidia-xconfig + /usr/share/man/man1/nvidia-xconfig.1 + + xorg-video-nvidia-current @@ -49,7 +108,8 @@ /etc/OpenCL /usr/bin /usr/lib - /usr/share + /usr/share/X11 + /usr/share/nvidia-current /usr/share/doc /usr/share/man @@ -72,6 +132,7 @@ zlib-32bit mesa-32bit + glibc-32bit libX11-32bit libXext-32bit xorg-video-nvidia-current @@ -89,6 +150,13 @@ + + 2016-02-25 + 361.28 + Version bump + Alihan Öztürk + alihan@pisilinux.org + 2016-02-04 358.16 @@ -461,4 +529,4 @@ marcin@pisilinux.org - \ No newline at end of file +