This is an exploration of the various OSS licenses by Dov Scherzer (a lawyer in this field). The main thing - virtually no jurisprudence yet. Only one US case, some evolving ones in Germany. The US case (Progress Software vs. MySQL AB) was settled. To be clear, he explains that OSS is not:
- Proprietary software
- Freeware
- Shareware
- Public domain
Boy, there are a lot of interesting questions from the government people, and a bunch of assumptions based on regulations I'm not familiar with :) Apparently, some section of US code has something to do with public domain and government code, or people here think it does.
So what's the reason for the LGPL? It's intended to allow libraries that don't "infect" applications. The idea is that an LGPL library can be used with a proprietary program, and not "infect" it. Again, the whole issue revolves around the concept of linking, and the notions used in the LGPL and GPL make a lot of C/C++ assumptions. Gosh knows what this means in the world of languages like Smalltalk, Lisp, or even Java.
Is the GPL a binding contract? It's "clickwrap", not an actual contract. It's included with the sources, possibly as a separate file. On many sites, there's no explicit mention of the GPL other than in the source listings. So is it binding? Current jurisprudence states that Clickwrap, Shrinkwrap, and Browsewrap licenses are valid only if the user has made some kind of affirmative act to agree to the terms.
So what do the license terms that claim to push any derived work under the GPL mean?
- GPL vs. the Copyright act
- Hypo - what if I take 2 GPL lines and stuff them into a huge app?
- The GPL says boom - derivative work Ii.e., it's been opened)
- The copyright act differs (does not call it a derivative work).
A question here - what does copyright's "fair use" mean here? 2 lines? 100 lines? What? Under copyright law, it's not a derivative work unless it has substantially copied from a prior work. What this means in terms of source code is not clear (at least to me :) ). Current case work is pretty much on artistic work (art, text, music). Is using a small module different? What makes two pieces of code combined? Same storage media, but separated? Not combined. Same executable? Combined. [ed] - but even there, it's not clear - what about a Java JAR file or a Smalltalk parcel? The "same executable" standard seems to imply a problem here. Here's an interesting example - he addresses plugins, and states that it depends on how the plugin is used/invoked.
Again, I'd say that some court is going to have a ball with this some day. Another example from the slide deck: Load a GPL library into a non-GPL code base. Derive a subclass of one of the loaded classes - according to the FSF FAQ, that opens the entire application. The bottom line according to Dov: at present, you need both a lawyer and a technical expert to decipher the GPL FAQs. At present, none of this has been tested in court. We just don't know.