Viral GPL Misconceptions Elegantly Explained
Scot W. Stevenson writes "Our favorite paralegal Pamela Jones of Groklaw has put together a short FUD-killer on the General Public License that explains why you can't lose your proprietary code if you inadvertently incorporate GPL code. This is not the only text of its kind, but it is so well explained that you might want to bookmark the page for future reference."
It has been proven valid in a court of law.
Not yet, it hasn't. this may change soon, but as of now... Remember that it was written by an OSS hippy, not a lawyer. Sure, lawyers suck, etc etc, but they do know how to write a document so it won't be destroyed by another lawyer. This is similar to the fact that a lawyer may learn to write code, but ti will be inferior to that of a trained developer.
It only grants rights, it doesn't take them away
Well, no. You can reuse teh software as you see fit, sort of. BSD licensing is much superior in this aspect.
The GPL states a single, specific requirement, above all else: that if you create a software program that is a derived work of another software program, then that combined work must be distributed under these terms, no more, no less. Making a derivative work of a software program IS NOT SOMETHING THAT CAN HAPPEN BY ACCIDENT. You, the hypothetical developer of the derived work, receive the program accompanied by its unambiguous terms of use, and IT IS YOUR RESPONSIBILITY TO READ AND FULLY UNDERSTAND THOSE TERMS. If you do not, then that is your fault, and ignorance of the law does not excuse its transgression.
You therefore have a choice. You can use works distributed under the GPL to create your own software and license that under the GPL, or you can NOT USE the GPL software and use any license you want. If the GPL were infectious, then you would have no such choice; since you do have a choice it is clearly not infectious in this regard.
Also remember that the GPL clearly states your rights with respect to parts of a program you write: that the GPL only applies to the combined work as a whole. You retain all rights to do whatever you want with the parts of the program you wrote. Furthermore, if a developer combines a GPL'd program X with a proprietary program Y of which he is not the owner, then the combination does not, and cannot legally affect how Y is licensed. All that happens in this situation is that the developer will be unable to satisfy the conditions of the GPL and the proprietary license at the same time, making any release of the software -- however licensed -- in breach of copyright law. Copyright law is pretty clear on the notion that the owner of a copyrighted work has the sole ability to set the terms of use of his copyright.
New open letter idea: explain how you CAN lose your free code even if you don't incorporate any SCO code into it, as long as SCO keeps saying you have.
The real Ralph Yarro posts as Anonymous Coward. Anyone else is an impostor.
Donate to it! Pamela is FAST approaching sainthood, support her site.
Just one question. Why does slashdot keep 'mirroring' almost every single story from groklaw?
..... :-(
I've been lurking on groklaw for quite a while now, it's stories and replies have always had a high 'standard' and I have to admit: once this 'mirroring' began, the posted comments on groklaw started to lose quality and became more and more superficial.
Thanks slashdot!
For those of you not familiar with that situation, the author borrowed and modified some open source code for a terminal app into a Finder alternative. A bunch of GPL zealots then started a flame war with many actually demanding that he release the entire source code to the world under the GPL! What was worse was that the author had already helped the community by releasing many of the classes he had developed!
While such zealots obviously can't be taken as representative of GPL supporters, it is cases like that which gives the GPL a bad name.
The paralegal got it 1/2 right. There is a difference between a contract and a license, however, the GPL is both.
A license is one thing : permission to use something that isn't yours.
A contract is a set of obligations for two or more parties.
a EULA is a license, given if you comply with the terms of the contract (pay, release code into the GPL).
The license is revoked if you fail to comply with the contract.
But the license is the permission, not the terms.
He is correct, that you would try to suesomeone under copyright law, rather than contract law, but this has nothing to do with which laws are applicable : both are.
However, the remedies available under copyright law are much more stringent, and therefore more useful.
Under contract law, pretty much all you can get are recouped losses, and a nullification of the contract.
In the case of the GPL, the losses are nothing, since nothing was paid, and the nullification of the contract just revokes the license. That gets you back to use of the content without a license, which is handled under copyright law.
This is precisely the point, a license is NOT a contract. It's a completely different thing under law. The fact that you failed to grasp this is why the GPL FUD keeps going, and why EULA are so effective and may not even be legal.
The fact that this is backed up by several quotes from lawyers, seems to have passed you by.
Where are my mod points when I need them!
If a first you don't succeed, your a programmer...
Did you read the article?
The GPL is not some weird contract, some new experiment in copyright law interpretation that requries a test in court.. it is a straightforward license (which is different from a contract). it is, in fact, very clearly a license, not a contract.
It DOES NOT take away any rights: Copyright allows you certain things by default. The GPL grants you other rights IN ADDITION to those allowed under copyright law, under certain conditions.
There is nothing to test in court (any more than any license needs to be tested in court).
We are not talking about freedom here.. or the relative freedom of various licenses..
As people keep saying, it's very, very simple. If the GPL is not valid... then show how you had permission to create a derived work from MY code. Plain and simple. Either you had no license to do so, in which copyright law applies, and what you did was illegal, or you have the GPL, which says you can do this, within limits.
OK, great you can't lose your code if you "accidently" incorporate a bit of GPL code. What if its the other way around. What if you intentionally insert your proprietary code into a GPL program and release the binary?
I kept reading waiting for that new bit of information to process. They nugget to file. I was very dissappointed. Yes it was well written, but it contained no information. Worse, it contained information that seemed to be reassuring at first, but increadibly naive. The rules about contracts versus licenses varies depending on your jursdiction.
Just because law is being discussed on the Internet does not mean the law is influenced by it. Case law varies between countries, and in the case of the US in particular, WITHIN a country.
"Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
Nope. A contract implies a two-way promise. I contract with you to sell me two tons of sugar for five cents a pound. You promise to do something (produce the sugar) and I promise to do something (buy it from you). If either of us defaults on the contract, there are penalties involved.
A license simply allows you to do something you couldn't otherwise do. There's no contract because you don't have to perform any obligations. Simply because you have a driver's license doesn't mean you have to drive a car. (You do have to follow traffic rules but that is a condition of the grant of license, it's not a contractual obligation.)
PJ is not a lawyer, but she knows plenty of lawyers, and is meeting more as time goes on. If she says that the General Public License is a LICENSE, not a contract, she has the opinion of experts to back it up with. Those experts include Eben Moglen, the author of the GPL and a professor of law and legal history at Columbia University. What do you have?
Someone you trust is one of us.
But it's the GPL, not Copyright Act that states the proprietary code needs to be released as GPLed open code. Why couldn't a judge order them to do that? It's not unthinkable.
Actually, it is, because the infringer still has a choice. Either they can agree to the GPL, in which case they have to GPL the derived code, or they can disagree with it, in which case they have to remove the GPL'd code entirely. The judge cannot force someone to agree to the license, the most he can do is force them to stop infringing by using the copyrighted code.
The suit the GPL'd code's author brings will be a copyright violation suit, because that's exactly what the infringer will have done. Used copyrighted code without permission. There's no contract for the GPL'd code's author to enforce. He hasn't gotten their agreement to the GPL. They can always agree to it or disagree to it, as they choose. It's just that whether they are infringing his copyright or not hinges on their agreement or disagreement.
- Give a man a fire and he's warm for a day, but set him on fire and he's warm for the rest of his life.
Yeah, I could not resist the pun, but apparently the moderators could...
How ironic--in a Slashdot story about GPL misconceptions, the biggest misconception is promoted: what the G in GPL stands for.
Only works that specifically state they are covered by the *GENERAL* Public License recieve the protections of that work. A reference to "GNU" Public License could be a reference to ANYTHING.
Actually, it is, because the infringer still has a choice. Either they can agree to the GPL, in which case they have to GPL the derived code, or they can disagree with it, in which case they have to remove the GPL'd code entirely.
One of the defenses I've heard from GPL advocates regarding the SCO scandal is that SCO "gifted" their code because they didn't pull their Linux distribution right away. From what you're saying, it sounds like that wouldn't be the case. However, does that imply that SCO or any other contributer could pull their code since they choose not to abide by the license anymore, either?
This same system is used for proprietary binaries. They give you a pre-compiled binary or library with a set of headers for your code.
That said, the community has always looked unfavorably on binary-only drivers in the Kernel. They only tend to work for the major distros, and they also tend to lack the polish and peer review that goes into the normal bevy of OSS driver.
I for one don't understand why a vendor would only go halfway in supporting Linux. Release a patch and let the community support your device, or always be a day late and a dollar short trying to keep up with the developments in the system.
Ok. I do see one case: where the kernel "implements" a major function of the device in software. Even there a better approach exists. Simply provide the minimal communication hooks in the kernel itself, and devise a user-space program to perform the software control functions. The user space program can be as proprietary as you want, and it won't get stomped on as the kernel changes.
"Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
A licence grants rights in only one direction; a contract grants rights (and obligations) in both directions. Because the GPL is merely a licence, those using GPL code cannot be required to give up the rights to their own code.
One thing that's made me wonder is, if I want to use gcc or another gpl compiler, would the resultant project automatically be gpl'd? Just compiling a "hello world" program would link together several gpl'd libraries would that be considered a derivitive of the original?
Shop smart, Shop S-Mart.
The GPL is not about giving freedom to developers, it's about giving freedom to end users. The BSD license is about giving freedom to developers, including the freedom to screw their end users. The GPL guarantees the end user of a piece of software that they have control over the software that is running on their machines, no matter who modifies that software.
Even though I'm a developer, I still prefer the GPL out of respect for my customers.
Of course, the bidder is free to remove or alter any stipulation he wishes and i'm sure there are many projects on rent-a-coder that are explcitly gpl. however, for my proprietary needs, i'm happy with the no-GPL provision--it makes a lot of business sense in my particular case. i guess what i'm bringing out in this post is the notion that people are aware of the GPL's viral nature (the parent article notwithstanding) and do plan business strategy to avoid it regularly. similar non-gpl provisions are commonplace in many corporate IT departments as well. it's not necessarily foolhardy--it's a choice.
No, you can't do that. You either have to ask the original copyright holder of the contributions permission or re-create the contributed code. Otherwise you would be violating the copyrights of the creator of the contributions. What you do with your own code is of course your own business.
If you look at MySQL for example, they ask every contributor to sign the copyright of the contributions over to MySQL AB. That way they can offer commercial non-GPL licenses and a GPLed version.
The quote you give doesn't in any way contradict what the article says. This quote merely says that, when companies perceive that software subject to the GPL can only be distributed in a certain way, they may choose to distribute it under those terms rather than not distributing it at all.
What the article says is that, if they (accidentally or on purpose) do distribute GPL code under a proprietary license in violation of the terms of the GPL, they cannot be forced to release their code.
The important difference is what people (or corporate entities) choose to do, vs. what they must do. The point that MS et. al try to make about the GPL is that you could lose the right to keep your code proprietary. This, Ms. Jones contends, is simply not true. That doesn't mean that the GPL isn't a way to leverage companies into releasing code that they'd rather keep proprietary, however... which is what Stallman advocates in your snippet.
Don't you wish your girlfriend was a geek like me?
Where's the consideration? There isn't one. It's a pure grant of rights with stipulations/conditions.
A contract only exists if the parties have the legal right to contract. A contract with a minor is voidable by the minor party of the contract. However, the GPL is enforcable against a minor.
I have discovered a truly marvelous sig, unfortunately the sig limit is too small to contain i
Now, would the database schema/design now be GPL or would it be proprietary? It isn't compiled or linked to any 'librarys'. It is just instantiated into a physical instance. So, it should not be GPL'ed should it? What about a bunch of PHP scripts you run on Apache...those aren't GPL'ed are they?
Light travels faster than sound. This is why some people appear bright until you hear them speak.........
You don't need to go any further. The answer is no, the software you develop by merely using the tools does not make your software GPL. Mere use of the GPL'ed program does not make your software GPL.
For example, if I decide to develop, say, a game to run under Linux, using gcc to compile it, XFree libraries to render graphics, and the GIMP to create the graphical images, I can still choose to release that game under any license I choose.
Now, would the database schema/design now be GPL or would it be proprietary? It isn't compiled or linked to any 'librarys'. It is just instantiated into a physical instance. So, it should not be GPL'ed should it? What about a bunch of PHP scripts you run on Apache...those aren't GPL'ed are they?In all of these cases, you are simply using the program or library in question. That does not make it a derivative work. In my example above, there are several libraries that I may link to that are GPL. Linking does not constitute a derivative work, it constitutes merely using the library. Now, if I purposely built an extension to that library, actually recompiled the library with my new code, then in that case, yes, my code would have to be GPL as well.
Karma: Frotzed (mostly due to the Frobozz Magic Karma Company)