NVIDIA dkms srpms

Matthias Saou thias at spam.spam.spam.spam.spam.spam.spam.egg.and.spam.freshrpms.net
Thu Oct 5 17:26:42 UTC 2006


Richard Hughes wrote :

[...]
> So, advice required from you guys: is this legal (assuming the binary
> rpm's are never distributed, only the SRPM) and is this sane? I can
> upload the SRPM to my private webspace (as long as I'm not doing
> anything illegal in doing so) if people want.

Richard has been kind enough to share his srpm, and I must admit that
for 3rd party kernel modules, the dkms approach seems easy. Much easier
than any kind of rpm packaging, as :
- Naming kernel module packages is hell.
- Keeping up with kernel packages updates is hell (Rawhide is worse).
- Keeping old kernels around to build against is hell.

... you get the idea :-)

Sure, with dkms the modules in /lib/modules/ aren't in the rpmdb, but
there is a package installed that indicates the presence of a dkms
module, which for me is far better than any kind of manual install,
since modules will be rebuilt automatically for new kernels as needed.

I've put an nvidia-x11-drv package in the FC6 section of my
repository, which works great for me on FC5, but not yet on FC6 since
disabling the loading of the dri module is trickier now that the
modules section of xorg.conf has gone away by default.

Richard's concerns are still valid, though :
- Fedora can't be affiliated with this in any way (obviously).
- We shouldn't encourage the use of 3rd party kernel modules, especially
not binary ones (which are a GPL violation).
- The NVIDIA license has restrictions, but seems to permit this :

(faint of heart, please stop reading now!)

--
[...]
2.1.1  Rights.  Customer may install and use one copy of the SOFTWARE
on a single computer, and except for making one back-up copy of
the Software, may not otherwise copy the SOFTWARE.  This LICENSE
of SOFTWARE may not be shared or used concurrently on different
computers.

2.1.2  Linux/FreeBSD Exception.  Notwithstanding the foregoing terms
of Section 2.1.1, SOFTWARE designed exclusively for use on the Linux or
FreeBSD operating systems, or other operating systems derived from the
source code to these operating systems, may be copied and redistributed,
provided that the binary files thereof are not modified in any way
(except for unzipping of compressed files).

2.1.3  Limitations.

No Reverse Engineering.  Customer may not reverse engineer,
decompile, or disassemble the SOFTWARE, nor attempt in any other
manner to obtain the source code.

No Separation of Components.  The SOFTWARE is licensed as a
single product.  Its component parts may not be separated for use
on more than one computer, nor otherwise used separately from the
other parts.

No Rental.  Customer may not rent or lease the SOFTWARE to someone
else.
[...]
--

Yeah, it's all evil, evil and even more evil. But since the binary
files aren't modified and that "parts aren't separated" (then again, I
do drop all the pre-compiled modules, the headers and the static lib...
that can be interpreted as separating parts...), redistribution should
be okay. But if NVIDIA ever contacts me regarding a possible
infringement, I won't think twice before removing the files.

Anyway, I'm now definitely interested in making similar packages for
other kernel modules, most notably madwifi, lirc (this one could even
go into Extras) and tiacx. Any help is very welcome ;-)

Matthias

-- 
Clean custom Red Hat Linux rpm packages : http://freshrpms.net/
Fedora Core release 5.92 (FC6 Test3) - Linux kernel 2.6.18-1.2726.fc6
Load : 0.28 0.26 0.31




More information about the fedora-devel-list mailing list