xopher

Revision 1 as of 2006-11-19 23:05:03

Clear message

How to include a newer NVIDIA driver into the linux-restricted-modules package

First add source entries into your /etc/apt/sources.list

eg. deb-src http://fi.archive.ubuntu.com/ubuntu edgy main restricted universe multiverse

Then get the source: apt-get source nvidia-glx

Lets get the dependencies for building: sudo apt-get build-dep nvidia-glx

Now, lets download the new driver packages:

http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9742/NVIDIA-Linux-x86-1.0-9742-pkg1.run http://us.download.nvidia.com/XFree86/Linux-x86_64/1.0-9742/NVIDIA-Linux-x86_64-1.0-9742-pkg2.run

You need both.

Allright, open the linux-restricted-modules-2.6.17_2.6.17.6.orig.tar.gz in e.g. file-roller. Go to /linux-restricted-modules-2.6.17-2.6.17.6.orig/nvidia/ (in fileroller) and delete the drivers you want to replace, leave the nvidia legacy drivers intact. After this, you just drag the files you downloaded to the archive and wait for it to finish. VoilĂ , the main archive is finished.

Lets move on to the linux-restricted-modules-2.6.17_2.6.17.6-1.1.diff.gz file. Extract the contents, then open the .diff file in your favorite text editor. 1. Find and replace all instances of 8776 with 9742 - The 8776 in the changelog does not need to be changed. 2. Find and replace: $(nv_dirname)/usr/X11R6/lib/modules/drivers/nvidia_drv.o with $(nv_dirname)/usr/X11R6/lib/modules/drivers/nvidia_drv.so 3. Find: +linux-restricted-modules-2.6.17 (2.6.17.6-1.1) edgy-security; urgency=low

Add this section above it (to bump the version number and update the changelog):

+linux-restricted-modules-2.6.17 (2.6.17.6-1.2) edgy-security; urgency=low + + * Updated the NVIDIA driver to version 9742. + + -- Christoffer Karvonen <mail@yourhost.com> Mon, 20 Nov 2006 02:46:43 +0200 +

As we have added six (6) lines to the file, the above line must be altered from: @@ -0,0 +1,1319 @@ to @@ -0,0 +1,1325 @@

Instead of my name and email you can of course put your own.

Allright, all the hard stuff is done. Save the file. Then rename the file to linux-restricted-modules-2.6.17_2.6.17.6-1.2.diff and gzip it.

Now all we have to do is edit linux-restricted-modules-2.6.17_2.6.17.6-1.1.dsc, again, open it with your favorite text editor.

Find and replace: Version: 2.6.17.6-1.1 with Version: 2.6.17.6-1.2 linux-restricted-modules-2.6.17_2.6.17.6-1.1.diff.gz with linux-restricted-modules-2.6.17_2.6.17.6-1.2.diff.gz

Now we need to replace the MD5SUM's and sizes in the .dsc with new one's. Commands to do this are: md5sum <filename> ls -lh <filename>

Be sure you get the sums of the correct files; linux-restricted-modules-2.6.17_2.6.17.6.orig.tar.gz and linux-restricted-modules-2.6.17_2.6.17.6-1.2.diff.gz

Rename linux-restricted-modules-2.6.17_2.6.17.6-1.1.dsc to linux-restricted-modules-2.6.17_2.6.17.6-1.2.dsc and we're set to go.

To build it either with pbuilder:

sudo pbuilder build linux-restricted-modules-2.6.17_2.6.17.6-1.1.dsc

or without it:

&&& Extract the source with dpkg-source -x, change to the directory it was exdtracted in and run dpkg-buildpackage -rfakeroot

It takes a while to compile, but eventually finishes Wink ;)

Enjoy your brand new l-r-m and nvidia-glx debs!