# How do you install the CORRECT nvidia-driver?



## PhenomII (Jun 6, 2010)

Greetings,
 I've struggled with the decision of which driver to choose for my nvidia cards over the
years (which driver; xorg nv, nouveau, or the "official" nvidia blobs).
Xorg nv, and nouveau worked ok. But didn't provide any more performance than one would
get from a run-of-the-mill video card. Given that I have a few newer Nvidia cards, I would
eventually attempt to install the drivers from nvidia. This, more often than not, resulted
in alot of trouble, an/or "glitches". So I'd ultimately need to return to the nv, or nouveau
drivers for stability.

Well, I just picked up some new hardware that I've been wanting to get for a l-o-n-g time
(see sig for details).
So now that it's been awhile, and nvidia seems to have been a bit more forthcoming with
*NIX drivers. I find myself looking in the x11 category in my ports tree again to see how
the new drivers might work on my new hardware. But after looking at all the Make files, I
find myself asking: how does the port nvidia-driver know *which* of the versions is
correct for my card? Must I choose ahead of time, and if that's the case, what's the point
of the nvidia-driver port?

In short, is simply: [CMD=""]cd /usr/ports/x11/nvidia-driver; make && make install; make clean[/CMD]
All there is to iy?

Thank you for all yout time and consideration.


----------



## hydra (Jun 6, 2010)

cd /usr/ports/x11/nvidia-driver ; make install clean

Next, load the kernel module or add nvidia_load="YES" to /boot/loader.conf and reboot.


----------



## sossego (Jun 6, 2010)

Nouveau is the  OpenSource replacement driver, nvidia is the official, nv is the formerly supported by nvidia driver- see the first part of this sentence.
You see if the driver supports your card by searching google with a selective boolean algorithm. 
I would assume that the program is written to have the install paths within it.


----------



## PhenomII (Jun 6, 2010)

hydra said:
			
		

> cd /usr/ports/x11/nvidia-driver ; make install clean
> 
> Next, load the kernel module or add nvidia_load="YES" to /boot/loader.conf.



Greetings Hydra, and thank you for your response.
I imagined that that would be the proceedure. BUT, what really need to know is how
will doing that insure that I get the correct version of the driver? As I asked in the OP;
Does make decide which version is correct, or must I specify the version I want/need to
install. After all /usr/ports/x11/nvidia-driver is simply a meta-port of one of the
available nvidia-driver-versions in the x11 tree.

I hope I was clearer this time. 

Thanks again for your reply.


----------



## PhenomII (Jun 6, 2010)

sossego said:
			
		

> Nouveau is the  OpenSource replacement driver, nvidia is the official, nv is the formerly supported by nvidia driver- see the first part of this sentence.
> You see if the driver supports your card by searching google with a selective boolean algorithm.
> I would assume that the program is written to have the install paths within it.



Thank you for the thoughtful reply, sossego.

I am aware of how the posts system works. But what I really need to discover is how can
I know *which* version of the Nvidia blob will get installed. If you look at:
/usr/ports/x11/nvidia-driver you will discover that it is a meta-port. Each of the other
nvidia-driver ports all have a version number appended to the name (nvidia-driver-173) for
example. If you choose nvidia-driver-173, the make file will pull it's needed information
from ../nvidia-driver. Do you see what I mean?

Thanks again for the reply.


----------



## zeiz (Jun 6, 2010)

If you used to browse the port collection then in /usr/ports/x11 you saw four nvidia drivers: 71,96,173 and just nvidia-driver that is the latest version (195 - you looked in Makefile, don't you?) Each driver supports a bunch of cards. If you have newer and newest cards then the latest version is right for you. But only you know your cards, we don't, so sossego advised you to google. For example: http://www.nvidia.com/object/unix.html
As soon as you find your driver just follow exactly what hydra advised. 
Along with nvidia-driver you may want to install also x11/nvidia-xconfig. Then instead of manual editing of /etc/x11/xorg.conf just type in console:
`# nvidia-xconfig`
and reboot to Nvidia World 

In general ports system knows nothing about your cards: you are the Master. But for example 
vesa driver will support almost any card perfectly though without fancy effects.


----------



## PhenomII (Jun 7, 2010)

Greetings zeiz, and thank you for your reply.
OK then, that get's it. As I had already spent quite some time @ the nvforums && the nvidia
site. I know that the newest driver is the one I need, I was hoping that simply:
[CMD=""]cd /usr/ports/x11/nvidia-driver; make install clean[/CMD] would get it, as I see that the newest version
offered by it is 195.36.15 - not 195.36.24 (the one I need). It looks like I'll need to do it
*manually* as per instructions provided @ the Nvidia site.

I really appreciate all the thoughtful responses - thanks, and best wishes.

P.S. Yes, the nvidia-xconfig *is* a "must have".


----------



## hydra (Jun 7, 2010)

I would install the latest driver (x11/nvidia-drivers). If it doesn't work, simply try the other (older) ones (x11/nvidia-driver-173, x11/nvidia-driver-96, x11/nvidia-driver-71, in this order).


----------



## PhenomII (Jun 7, 2010)

Greetings hydra, and thanks for your response.
Well, I went the way of the newest dirver available on the Nvidia site. The FreeBSD version was announced on the nvforums. So as My card is reasonably new and pretty darn fast. I decided to go w/it. While I *did* read the entire documentation for it. The process did not go without some issues. I was able to iron the whole thing out with little effort. So that was good. 
The only thing I notice now, is upon reboot, occasionally the system panics at about the time it attempts to mount root r/w. I'm not sure if it's the Linux ABI I decided to enable, or not. But I'm pretty darn sure it is. As that's the only significant change to the system I did. Prior I didn't have linux_enable="YES", and I hadn't installed the emulators/linux_base-f10 "linuxulator" either. It's not that big a deal since this is just a "testbed" for evaluating this hardware as a potential for the 78 FreeBSD servers I currently own and operate. I won't have the Nvidia card I'm using on this one on any of the servers, and I also will not likely be using the Linux ABI either. So if I run into a panic once-and-awhile on this workstation, no big deal. 

Thanks again hydra, for taking the time to respond.


----------

