How to install NVIDIA graphics drivers.
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
-
- Posts: 10
- Joined: Sun 10 Jul 2005, 20:42
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
usr_devx.sfs is here ftp://ibiblio.org/pub/linux/distributions/puppylinux/
You don't need Xorg development files ... they're about 400MB.
You don't need Xorg development files ... they're about 400MB.
- BionicCommando
- Posts: 21
- Joined: Sat 19 Nov 2005, 11:43
- Location: Devon,UK
I'd just like to say thanks to Pizzas...
I don't know what was wrong with the way my Puppy was set up (my install was a hybrid of a standard NTFS partition pup001 file and an ext2 partition which puppy took over and used as home when I deleted th pup001 from my NTFS partition).
..anyway either way. I'd just like to say that this installer has now worked perfectly on two puppy pcs!. one of which was a full hard drive installed puppy 1.08 too.
..now all i gotta do is find some apps that'll let me test my 3d out!
Can anyone recommend any improvements i can make to puppy in this respect?
my gfx card is a cheap old 64mb geforce mx400 btw.
I don't know what was wrong with the way my Puppy was set up (my install was a hybrid of a standard NTFS partition pup001 file and an ext2 partition which puppy took over and used as home when I deleted th pup001 from my NTFS partition).
..anyway either way. I'd just like to say that this installer has now worked perfectly on two puppy pcs!. one of which was a full hard drive installed puppy 1.08 too.
..now all i gotta do is find some apps that'll let me test my 3d out!
Can anyone recommend any improvements i can make to puppy in this respect?
my gfx card is a cheap old 64mb geforce mx400 btw.
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
If you have properly enabled the DRI features of your new nVidia driver, graphics performance is as good as it can get in Linux.
To confirm this, open /var/log/Xorg.0.log in Beaver and check that it reports direct rendering enabled.
Now you can try MU's collection of games for Puppy -
http://www.murga.org/~puppy/viewtopic.php?t=5164
To confirm this, open /var/log/Xorg.0.log in Beaver and check that it reports direct rendering enabled.
Now you can try MU's collection of games for Puppy -
http://www.murga.org/~puppy/viewtopic.php?t=5164
- BionicCommando
- Posts: 21
- Joined: Sat 19 Nov 2005, 11:43
- Location: Devon,UK
temp,
I had a look at my xorg.0.log but couldn't see anything about direct rendering. Its quite a messy log too which doesn't help.
i also had a look at MU's guide to DRI - but I couldn't see anything that relates to DRI on nvidia cards. Is this definately something that I can do?... I was hoping to get MU's window shadow trick to work
I had a look at my xorg.0.log but couldn't see anything about direct rendering. Its quite a messy log too which doesn't help.
i also had a look at MU's guide to DRI - but I couldn't see anything that relates to DRI on nvidia cards. Is this definately something that I can do?... I was hoping to get MU's window shadow trick to work
Windowshadows works without DRI, just not so fast.
Add these lines in the end of xorg.conf with an editor:
And install this Dotpup with xcompmgr and transset, I forgot to add it to Enlightenment:
http://dotpups.de/dotpups/XServer/transparency-demo.pup
Now the menu-entries should work.
Mark
Add these lines in the end of xorg.conf with an editor:
Code: Select all
Section "Extensions"
Option "Composite" "Enable"
Option "RENDER" "Enable"
EndSection
http://dotpups.de/dotpups/XServer/transparency-demo.pup
Now the menu-entries should work.
Mark
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
I'm no expert on nVidia, but I see some potential problems with Pizzasgood's instructions.
The nvidia.o module is made permanent, but it may not necessarily get loaded at each boot. Same problem with agpgart.
1. Run "lsmod". You should see agpgart and nvidia listed. If not, load them now -
modprobe agpgart
modprobe nvidia
and add these commands to /etc/rc.d/rc.local so it will happen at each boot.
Regarding your xorg.conf, I think these lines should all be necessary in Section "Module" -
Load "dbe"
Load "glx"
Load "dri"
Now referring back to MU's post about DRI http://www.murga.org/~puppy/viewtopic.p ... 44&start=0
you also need to have libGL files installed. Get my more recent libGL package here http://www.murga.org/%7Epuppy/viewtopic ... 4&start=32
Restart the Xserver (ctl-alt-backspace, then startx) and hopefully DRI will be working.
The nvidia.o module is made permanent, but it may not necessarily get loaded at each boot. Same problem with agpgart.
1. Run "lsmod". You should see agpgart and nvidia listed. If not, load them now -
modprobe agpgart
modprobe nvidia
and add these commands to /etc/rc.d/rc.local so it will happen at each boot.
Regarding your xorg.conf, I think these lines should all be necessary in Section "Module" -
Load "dbe"
Load "glx"
Load "dri"
Now referring back to MU's post about DRI http://www.murga.org/~puppy/viewtopic.p ... 44&start=0
you also need to have libGL files installed. Get my more recent libGL package here http://www.murga.org/%7Epuppy/viewtopic ... 4&start=32
Restart the Xserver (ctl-alt-backspace, then startx) and hopefully DRI will be working.
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
Hmmm.... that all sounds about right, but what's agpgart? Is it for a certain type of port, like pci? Or is this some other thing?
Also, at least on my system, nvidia was loaded. I think the Xorg deal causes that.
I'll edit the instructions to make sure they leave the "load dri" part in, and I'll mention the libgl thing too. I also need to add that the instructions to copy the stuff back need to recreate that directory because it doesn't seem to exist by default anymore (at least on mine). I'm not sure about what the agpgart part is, so I'm going to wait for that.
Also, at least on my system, nvidia was loaded. I think the Xorg deal causes that.
I'll edit the instructions to make sure they leave the "load dri" part in, and I'll mention the libgl thing too. I also need to add that the instructions to copy the stuff back need to recreate that directory because it doesn't seem to exist by default anymore (at least on mine). I'm not sure about what the agpgart part is, so I'm going to wait for that.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
agpgart is a Kernelmodule, that is needed for accessing the AGP-slot I think.
The free X.org-Drivers need it for DRI.
But for example the proprietary ATI-Driver does not need it, the docs eve say it should be unloaded, because ATI has its own drivers for that.
Might be the same with Nvidia.
By default, they are not loaded in Puppy.
Mark
The free X.org-Drivers need it for DRI.
But for example the proprietary ATI-Driver does not need it, the docs eve say it should be unloaded, because ATI has its own drivers for that.
Might be the same with Nvidia.
By default, they are not loaded in Puppy.
Mark
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
OK, shared knowledge is good! I now realise that there are a different set of rules for proprietary drivers. Please ignore most of what I said above.
I did some reading on the subject and I see that nVidia has its own libGL, and the nvidia kernel module possibly has inbuilt AGP functions that make the agpgart module unnecessary.
So my amended suggestions are:
- make sure the nvidia module is loaded. This is the DRI/DRM module and accelerated performance won't happen without it. Installers typically try to automate things like this by putting a boot script in /etc/rc.d ... but this won't work in Puppy. So if "lsmod" does not show nvidia is loaded, then "modprobe nvidia" should be added to /etc/rc.d/rc.local (after "/sbin/depmod -aq").
- make sure that xorg.conf is set up correctly. According to several pages I found on the web, as well as removing "Load "GLcore"", it's also necessary to remove "Load "dri"". Apparently this otherwise attempts to load the open source DRI libraries, which would conflict with the proprietary nvidia libraries.
"Load "glx"" is correct.
And in Section "Screen", DefaultDepth needs to be 16 or 24.
It would be interesting to see the xorg.conf generated by the installer.
Now after restarting the Xserver, glxinfo should show "direct rendering: Yes", and /var/log/Xorg.0.log should report something positive.
I did some reading on the subject and I see that nVidia has its own libGL, and the nvidia kernel module possibly has inbuilt AGP functions that make the agpgart module unnecessary.
So my amended suggestions are:
- make sure the nvidia module is loaded. This is the DRI/DRM module and accelerated performance won't happen without it. Installers typically try to automate things like this by putting a boot script in /etc/rc.d ... but this won't work in Puppy. So if "lsmod" does not show nvidia is loaded, then "modprobe nvidia" should be added to /etc/rc.d/rc.local (after "/sbin/depmod -aq").
- make sure that xorg.conf is set up correctly. According to several pages I found on the web, as well as removing "Load "GLcore"", it's also necessary to remove "Load "dri"". Apparently this otherwise attempts to load the open source DRI libraries, which would conflict with the proprietary nvidia libraries.
"Load "glx"" is correct.
And in Section "Screen", DefaultDepth needs to be 16 or 24.
It would be interesting to see the xorg.conf generated by the installer.
Now after restarting the Xserver, glxinfo should show "direct rendering: Yes", and /var/log/Xorg.0.log should report something positive.
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
Well, like I said, mine gets loaded automatically. I suspect the line in xorg.conf that says Driver "nvidia" takes care of it.- make sure the nvidia module is loaded. This is the DRI/DRM module and accelerated performance won't happen without it. Installers typically try to automate things like this by putting a boot script in /etc/rc.d ... but this won't work in Puppy. So if "lsmod" does not show nvidia is loaded, then "modprobe nvidia" should be added to /etc/rc.d/rc.local (after "/sbin/depmod -aq").
Okay, I guess I had it right the first time. I'll go back and fix that.- make sure that xorg.conf is set up correctly. According to several pages I found on the web, as well as removing "Load "GLcore"", it's also necessary to remove "Load "dri"". Apparently this otherwise attempts to load the open source DRI libraries, which would conflict with the proprietary nvidia libraries.
"Load "glx"" is correct.
That's what I've been thinking. I'm going to set up a fresh pupfile and see what it does. Plus, that way I can see what my pre-driver speeds were.It would be interesting to see the xorg.conf generated by the installer.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
Well, it seems to me that Puppy automatically comes with most of the right stuff as far as the dbe and glx and dri things go (at least mine did) in the xorg.conf file. The installer mostly just moved some things around and replaced the driver setting for whatever was already set to "nvidia". So, in the config file, it might still say "vesa frame-buffer" or whatever for the identification, but it will use the "nvidia" driver. Not the cleanest method, but it works.
If you run it gives you options, and if you do it will extract itself so you can see what it has inside.
If you run
Code: Select all
sh NVIDIAblablalba -h
Code: Select all
sh NVIDIAblablalba -x
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
I put some info about some of the things the driver comes with in the instructions. Also, the readme I found verified that the driver loads the kernal module itself (unless you disable that ability).
Pizzasgood wrote:After it's all installed, you can go to /usr/share/doc/NVIDIA_GLX-1.0/ to find a manual with a bunch of information. The readme has a list of extra settings you can add to xorg.conf to alter the setup. One of them lets you skip the splash screen. You addto /etc/X11/xorg.conf in the Device section.Code: Select all
Option "NoLogo" "true"
There's also a program that comes with it that can change the screen colors and such. It is called nvidia-settings.desktop and can be found in /usr/share/applications/.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
OK, that makes sense. It's a shame the Xorg drivers don't do the same.Pizzasgood wrote:the readme I found verified that the driver loads the kernel module
So does glxinfo and /var/log/Xorg.0.log indicate that direct rendering is working?
And can you tell us what your frame rate is ... does the nvidia package install glxgears?
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
Yep.So does glxinfo and /var/log/Xorg.0.log indicate that direct rendering is working?
It doesn't come with glxgears. I get 404.8 or so fps on a 64 MB GeForce4 and a 450MHz PIII processor with glxgears.And can you tell us what your frame rate is ... does the nvidia package install glxgears?
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
Thanks for the howto...
I tried it with a TNT2 pro card and the 7174 driver. Works fine...
Let me suggest some addition for this fine howto. Maybe it'll be easier to follow it step by step for a newbie like me...
So you should clarify
- 'the development addon' means 'usr_devx.sfs' file
- 'usr_devx.sfs' can be found here: ftp://ibiblio.org/pub/linux/distributions/puppylinux/
- the downloaded usr_devx.sfs file should be placed to
a) the same directory like the pup001 (when you boot from CD/pendrive)
b) the / directory (case of hd install)
- after it you should reboot the system (important!)
- now you can start the installation by running the proper NVIDIA graphics driver's .run file that had been downloaded before.
The further steps were clear for me.
PS.: I found when you had installed puppy to hd, the script to rc.local was not necessary. Please check it.
I know the suggested items can be found in the thread but summarizing it in the first post should be useful.
Let me ask a post-install question.
I understand the NVIDIA-installer.run file can be deleted. Can we get rid of the 'usr_devx.sfs' file with its 44Mbyte size after installation? And what about the 313Mbyte size /.usr_devx directory?
Thanks in advance.
eMeRy
I tried it with a TNT2 pro card and the 7174 driver. Works fine...
Let me suggest some addition for this fine howto. Maybe it'll be easier to follow it step by step for a newbie like me...
So you should clarify
- 'the development addon' means 'usr_devx.sfs' file
- 'usr_devx.sfs' can be found here: ftp://ibiblio.org/pub/linux/distributions/puppylinux/
- the downloaded usr_devx.sfs file should be placed to
a) the same directory like the pup001 (when you boot from CD/pendrive)
b) the / directory (case of hd install)
- after it you should reboot the system (important!)
- now you can start the installation by running the proper NVIDIA graphics driver's .run file that had been downloaded before.
The further steps were clear for me.
PS.: I found when you had installed puppy to hd, the script to rc.local was not necessary. Please check it.
I know the suggested items can be found in the thread but summarizing it in the first post should be useful.
Let me ask a post-install question.
I understand the NVIDIA-installer.run file can be deleted. Can we get rid of the 'usr_devx.sfs' file with its 44Mbyte size after installation? And what about the 313Mbyte size /.usr_devx directory?
Thanks in advance.
eMeRy