On Sat, Dec 11, 2004 at 04:43:48PM -0800, Bruce Perens wrote: > What about the rest of the driver? I think that if you remove the BLOB, > it's Free Software. It talks to a bus interface, which is a natural > demarcation between our Free Software and the proprietary hardware > design. It loads an arbitrary firmware file into the device. The device > might not work without the BLOB, but the driver's still free as long as > it does not incorporate the BLOB.
It's free, but it has a non-optional dependency on non-free software, which means contrib, not main. In reality, it doesn't talk to an arbitrary firmware file; it has to talk to a functional one, or the driver is not going to do anything useful. In practice, these types of drivers are not going to work on their own; they'll have a README that says "go download the firmware from the vendor's site, or this driver won't work". That type of notice is a big hint that something belongs in contrib, IMO; the real effects are the same as saying "go download and install this non-free JRE". One or two people have argued that these drivers still have a use, even when the firmware is not available: it can be used as a starting point for implementing a free firmware; and so it should go in main. I think that's akin to saying, "this program that requires a non-free shared library can be used as a starting point for reimplementing the library, so it should go in main". That's bogus; by that logic, everything in contrib would be allowed in main. -- Glenn Maynard