The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Difference between revisions of "Package:NVIDIA Linux Display Drivers"
m (trying to head off more trouble at the pass) |
m (sorry, more clarification) |
||
Line 8: | Line 8: | ||
{{warning|If you installed debian-sources with the binary USE flag you will need to blacklist the nouveau module | {{warning|If you installed debian-sources with the binary USE flag you will need to blacklist the nouveau module | ||
<console> ###i## echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf </console>}} | <console> ###i## echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf </console>}} | ||
{{fancynote|The proprietary nvidia driver typically lags kernel development, more often than not requiring the use of patches to "shoehorn" it in on recent/current kernels. This is beyond the control of Funtoo (or any distro for that matter) as the conflict occurs upstream. These changes occur too rapidly for this wiki page to keep up with them, best bet is utilize your favorite search engine. This is particularly acute with minor kernel version changes, i.e. 4.2.x to 4.3.0, etc. Please do not file bugs for a driver not installing in these cases, rather seek assistance on the forum if you are stumped or using the open source driver can also be a good option as it rarely has a problem}} | {{fancynote|The proprietary nvidia driver typically lags kernel development, more often than not requiring the use of patches to "shoehorn" it in on recent/current kernels. This is beyond the control of Funtoo (or any distro for that matter) as the conflict occurs upstream. These changes occur too rapidly for this wiki page to keep up with them, best bet is utilize your favorite search engine. This is particularly acute with minor kernel version changes, i.e. 4.2.x to 4.3.0, etc. Please do not file bugs for a driver not installing in these cases, rather seek assistance on the forum if you are stumped or using the open source [[Package:Nouveau_Video_Drivers_(Open_Source)|Nouveau]] driver can also be a good option as it rarely has a problem}} | ||
== Preparing to Install == | == Preparing to Install == | ||
=== Hardware compatibility and driver versions === | === Hardware compatibility and driver versions === |
Revision as of 00:07, January 15, 2016
NVIDIA Linux Display Drivers
We welcome improvements to this page. To edit this page, Create a Funtoo account. Then log in and then click here to edit this page. See our editing guidelines to becoming a wiki-editing pro.
Introduction
NVIDIA have proprietary graphics drivers for Linux under binary blob. The alternative open source driver is x11-drivers/xf86-video-nouveau.
If you installed debian-sources with the binary USE flag you will need to blacklist the nouveau module
# echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
The proprietary nvidia driver typically lags kernel development, more often than not requiring the use of patches to "shoehorn" it in on recent/current kernels. This is beyond the control of Funtoo (or any distro for that matter) as the conflict occurs upstream. These changes occur too rapidly for this wiki page to keep up with them, best bet is utilize your favorite search engine. This is particularly acute with minor kernel version changes, i.e. 4.2.x to 4.3.0, etc. Please do not file bugs for a driver not installing in these cases, rather seek assistance on the forum if you are stumped or using the open source Nouveau driver can also be a good option as it rarely has a problem
Preparing to Install
Hardware compatibility and driver versions
Currently, there are five versions of meta NVIDIA Linux drivers, each of which supports a specific group of GPUs. To check the type of driver that is related to your video card, check out the official page of the NVIDIA complete list of supported GPUs.
If you have identified as your driver version 337.25, for example, you need the mask(s) driver(s) latest(s) to which you want to install.
root # echo “>x11-drivers/nvidia-drivers-340” >> /etc/portage/package.mask
The required kernel options
[*] Enable loadable module support
[*] MTRR (Memory Type Range Register) support
To we made a successful compilation of the legacy NVIDIA driver, we set before the removal of the native framebuffer drivers into the kernel in order to avoid conflicts for x86 and AMD64 processors, in this case.
Device Drivers ---> Graphics support ---> <*> Support for frame buffer devices ---> <> NVIDIA Framebuffer Support <> NVIDIA Riva support
An alternative is to uvesafb framebuffer, or vesa framebuffer which can be installed in parallel with nvidia-drivers
Installation
Upgrade and/or configure VIDEO_CARDS
variable to nvidia
in /etc/make.conf
. This will serve to while you are installing the Server X, the correct version of nvidia-drivers to be provided for you.
root # nano /etc/make.conf VIDEO_CARDS="nvidia"
Installing to the driver with the option in gtk use flags will make it installed the media-video/nvidia-settings
which is a graphical tool for monitoring and various settings for your video card
Emerging the package
root # emerge x11-drivers/nvidia-drivers
When the installation is complete run modprobe nvidia module to read kernel memory.
root # lsmod | grep nvidia
If an update before remove the old module
root # rmmod nvidia root # modprobe nvidia
Testing your Video Card
To test your video card run the glxinfo program, which is part of the mesa-progs package. This will check if direct rendering is enabled.
user $ glxinfo | grep direct user $ direct rendering: yes
Configuring
Loading at boot
To automate the loading of the module when you boot your system, add nvidia in modules variable.
root # nano /etc/conf.d/modules modules="nvidia"
Integration with X Server
When your X server is installed find, and there's /etc/X11/xorg.conf
you can run the nvidia-xconfig which will set in xorg.conf to identify the video card among other possible configurations.
root # nvidia-xconfig
/etc/X11/xorg.conf
Section "Device"
Identifier "nvidia"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "[Name] [Model]"
EndSection
Enabling NVIDIA Support
Include the use flag in nvidia in /etc/make.conf
so due to applications that make use of this advantage may withdraw.
root # nano /etc/make.conf USE="nvidia"
Enabling OpenGL/OpenCL
As a requirement, make sure that the Xorg server is not in use during this change. To enable OpenGL and OpenCL.
root # eselect opengl set nvidia root # eselect opencl set nvidia
Building tips with newer linux kernel
This is unofficial way for building nvidia-drivers on very latest linux kernel releases. First of all, know your hardware and a version of nvidia-drivers your video card supported with. Let's assume we using nvidia-drivers 355.11. Portage provides ability to use custom patches, which can be applied to ebuilds by using epatch
feature. Let's try. First, we create a patch directory with a correct version of nvidia-drivers:
root # mkdir -p /etc/portage/patches/x11-drivers/nvidia-drivers-355.11-r2/
Now, we are going to try Arch Linux patch for kernel-4.3.0.
root # wget https://projects.archlinux.org/svntogit/packages.git/plain/nvidia/trunk/nvidia-4.3-build.patch -O /etc/portage/patches/x11-drivers/nvidia-drivers-355.11-r2/nvidia-4.3-build.patch
During emerge, this patch should be applied automatically and allow building of nvidia-drivers on latest kernel. Notice, that this workarounds a build procedure and gives no guarantee about potential runtime problems one may experience. For a stability reasons, we are strongly recommend to stay on a kernel releases, nvidia-drivers are known to build against.