Comment 25 for bug 98641

Here is the solution to the bug and the source code.

First of all, the libnvidia-wfb.so.1.0.9755, available only in the latest driver 9755 (in the nvidia-glx-new package) was being not copied by the packaging scripts to /usr/lib/xorg/modules/ therefore I added the following lines at line 964 of the debian/rules :

  if [ "$$this_ver" = "$(nv_new_version)" ]; then \
   install $$this_dir/usr/X11R6/lib/modules/libnvidia-wfb.so.$$this_ver \
    $(CURDIR)/debian/nvidia-glx$${nv_flav}/usr/lib/xorg/modules/; \
  fi;

If the driver is the latest version then the file is copied, otherwise nothing will happen (as other versions do not have the wfb module).

Another important step was that to make the packaging script create a symlink to modules/libnvidia-wfb.so.$$this_ver (e.g. libnvidia-wfb.so.1.0.9755) named libwfb.so in /usr/lib/xorg/modules/ . Therefore I edited both the debian/nvidia-glx.links.in and the debian/nvidia-glx.links.amd64.in adding only the following line:

usr/lib/xorg/modules/libnvidia-wfb.so.@@VERSION@@ usr/lib/xorg/modules/libwfb.so

And that's all. Now the users of Geforce 8800 will be able to use the nvdia driver.

Here you will find the entire source code made with pbuilder.

You will only have to edit the debian/changelog and bump the version of the linux-restricted-modules package.

http://albertomilone.com/ubuntu/nvidia/bugfix/linux-restricted-modules-2.6.20_2.6.20.5-15.20.tar.gz
http://albertomilone.com/ubuntu/nvidia/bugfix/linux-restricted-modules-2.6.20_2.6.20.5-15.20.dsc
http://albertomilone.com/ubuntu/nvidia/bugfix/linux-restricted-modules-2.6.20_2.6.20.5-15.20_i386.changes

Regards

Alberto Milone