Theo de Raadt Responds to Linux Licensing Issues
bsdphx writes "While Theo may have a reputation of being "difficult" in some circles, this response to the recent relicensing controversy is thoughtful and well penned. Through this whole process I've learned some new things about both GPL and BSD licensing, and especially about combining the two."
Exactly the same thing happened with the Compiz/Beryl farce.
The Beryl developers took the BSD code and GPL'd it without the original authors permission. The exact same reasons of 'evil companies' will steal BSD code was given, but the 'evil' Beryl developers were the only ones taking but not giving back.
People should learn that even though this is open source they still have to respect other peoples rights.
He says that you cannotmodify a file to remove a license without permission, but he fails to acknowledge that a dual licensed file gives you that permission with the other license. If the GPL gives me permission to modify a file, then I can remove the BSD license from that file. If the BSD license gives me permission to modify a file, then I can remove the GPL license from that file. So long as I comply with the remaining license, I have permission to distribute the result, as the remaining license is what gives me legal permission from the copyright holder.
GPL fans said the great problem we would face is that companies would take our BSD code, modify it, and not give back. Nope -- the great problem we face is that people would wrap the GPL around our code, and lock us out in the same way that these supposed companies would lock us out. Just like the Linux community, we have many companies giving us code back, all the time. But once the code is GPL'd, we cannot get it back. Ironic.
No, not ironic. Just dishonest. You say all along that taking without giving back is the ultimate freedom, you criticise the GPL for not allowing more of this, you allow it for proprietary software, but just as soon as GPL software does something you consider to be similar (even though the source is still out there, it's unusable to you), then you have a problem? You can't get the code back from proprietary software either, but you don't bitch and moan when proprietary software does it, in fact you criticise the GPL for not allowing it. This just looks like you have a problem with the GPL, hold it to a higher standard than everybody else, including yourself.
It's weird how Theo de Raadt writes about GPLd code:
"Thanks for what you wrote, but this is a one-way street, you give us code, and we take it, we give you you nothing back. screw off."
I agree with Theo it would be somewhat rude to extend the driver with GPL-only additions, which is possible and seems to have been proposed. But still, I wouldn't exactly call publishing GPLd code to be "giving nothing back". At least you can see the code, and the community is free to use it within the GPL limitations.
If you wish for everyone to remain friends, you should give code back.
That means (at some ethical or friendliness level) you probably do
not want to put a GPL at the top of a BSD or ISC file, because you
would be telling the people who wrote the BSD or ISC file:
"Thanks for what you wrote, but this is a one-way street, you give
us code, and we take it, we give you you nothing back. screw off."
It's not true: he can modify and distribute under BSD the original code that was released under BSD, he can't distribute as BSD whatever was added and licensed under GPL. So none is stealing his work, they are just licensing their intellectual work as they feel it's better.
Exactly as Theo did when he decided to use BSD license: he choose BSD for a number of reasons, one of these was apparently that he thought that this kind of behavior is acceptable, as BSD license allows it.
So, why doesn't he change openBSD's license to something that he actually likes?
RMS and TdR have something in common...
The intent of the GPL is to be a one-way trip. The idea is to create a large pool of identically-licensed code so that projects msy mix and match, borrow and steal from each other.
Don't piss off The Angry Economist
It's not true: he can modify and distribute under BSD the original code that was released under BSD, he can't distribute as BSD whatever was added and licensed under GPL. So none is stealing his work, they are just licensing their intellectual work as they feel it's better.
They can only do that if they are the copyright holders for the entire work.
If the work is licensed under the BDSL then he CAN NOT remove that fact by *relicensing* it under the GPL. In combining the GPL code with the BSDL code he has created a *dual licensed* work. There's no way around that.
If this was not true then (a) there wouldn't be any BSD, because this is what the USL violated that made them back down in the USL-CSRG case, and (b) Linux might also be in trouble, because in the aftermath of the USL-CSRG case a lot of old AT&T code was released, and that code was a hugely effective part of the smackdown laid on SCO in the SCO-Linux case.
all just get along? Seriously, I find any impropriety or the suggestion of in regards to licensing issues to be counter productive to the linux cause. I also find any infighting less than professional. Linux has long moved from the hobbyist arena to prime time. Although this "news" is hardly front page material, it does tend to reflect negatively on a product that already has it's work cut out it for general acceptance as a legitimate product. Hopefully it won't become fodder for power struggles and holy wars...oops - too late.
Try, "publicly, he's an asshole and routinely uses ad hominem."
From discussion of the very issue, Slightly more annoyed, Pièce de résistance, FLAME ON!
Pretty funny to then read, further down in the thread:
Theo didn't make the initial post about the BSD violation. Theo could have chosen to respond quite publicly, but instead he chose to respond on the OpenBSD mailing list. He did not go nuclear. He is not openly attacking anyone. He isn't even making a big fuss out of this, users on both sides are. Neither did he claim the Linux developers of being thieves.
Alluding that Linux kernel developers "must have failed gradeschool because you can't read" (paraphrasing only slightly) on a public website isn't "publicly attacking someone"?
The man doesn't know when to keep his mouth shut or how to be civil. It looks like (thankfully) people in the OpenBSD project are telling him to shut the fuck up and let them handle things:
I stopped making public statements in the recent controversy because Eben Moglen started working behind the scenes to 'improve' what Linux people are doing wrong with licensing, and he asked me to give him pause, so his team could work.
Please help metamoderate.
The difference is that commercial entities which modify BSD code, compile it, and distribute binary-only distributions are not pretending to own the share and share alike happy friendly community open source high ground. The Linux community does try to own this high ground, really to the point where BSD gets no credit for having the less restrictive (more "open" and more "free") license. What Theo is saying is that if the Linux community wants to maintain its hold on this high ground, they should play fair with code they get from BSD, and share back with that project. Good in the world would be reduced if this turned into a war. Imagine BSD projects getting relicensed as a lever against Linux, say some sort of clause which prohibits dual licensing, and requires non-commercial entities to share code back to BSD. It could get uglier than that, but it probably won't, since the BSD camp has a long history of being the most open and free of free open source licenses, it's unlikely they would start using their license as a weapon at this point.
If you mod me down, I shall become more powerful than you could possibly imagine.
The problem is that a file with the BSD license removed cannot be shared back with the BSD project, from whence it came in the discussion before us. Removing the BSD license makes the code less free, it binds it in the shackles of the GPL, so the code can flow only one way, out of BSD to GNU/Linux. All Theo is saying is give peace a chance.
If you mod me down, I shall become more powerful than you could possibly imagine.
http://marc.info/?l=openssh-unix-dev&m=1143162246
You can't get much direct than that. I suggest you visit the link and read the rest of his mail.
-- Using the preview button since 2005
The point is, the code from inception was organized by the developer as 'either GPL or BSD'. Anyone contributing code to that should recognize that. If someone choses to follow GPL, devs shouldn't get offended, they knew what they were getting into. If you don't want to play by the rules of a segment of a project, go away. Claiming that people cannot strip the BSD license on a redistribution is like saying because one of the licenses is GPL, you must always ship the source code. It's ok to dual-license something, but you have to recognize that each license explicitly grants rights that the other may preclude (i.e. BSD explicitly grants the right to rip code and use as you see fit, without source, which the GPL explicitly forbids). If a project choses to use the code under one license or the other, you simply shouldn't take offense. If you didn't want the code to be distributed under GPL, you shouldn't say it's ok in the first place. If it is more of a 'you must follow the rules of both', it kinda blows up and can't be used in either world. BSD as a whole is setup such that a third party should be able to use it with impunity, and code which may have the GPL apply precludes that. The same people bitching about BSD license being stripped would be happy to see the code redistributed as a binary.
XML is like violence. If it doesn't solve the problem, use more.
because it is a legal document.
It is not "illegal" if the license permits it. The license says:
Now, if someone makes the tiniest change to the code and only licenses their change under the GPLv2, then the entirety of the software can only be distributed under the GPLv2, which means that the portions of the BSD license simply are not applicable anymore.
The usual way of doing this would be not to alter the existing copyright notice, but to add a second copyright comment that says something like: "Portions of this code are copyrighted by John Smith and are licensed under the GPLv2. Please note that as a consequence, the entirety of this file may only be distributed under the terms of the GPLv2."
The effect is, however, the same: the file can only be distributed under the GPLv2, and the result is perhaps more confusing to users, which is why deleting the now inapplicable part of the original license is probably better.
The fundamental issue that this kind of dual-licensed BSD/GPLv2 code can be turned into GPLv2 code is unavoidable, however: that's the purpose and intent of dual licensing. Note that the reverse is also possible: someone can make additions to the code and only license those under the BSD license, killing the GPLv2 portion of the license.
(I won't even comment on Theo's use of terms like "illegal" and "breaking the law" other than to say that it's inflammatory bullshit.)
GPL fans said the great problem we would face is that companies would
take our BSD code, modify it, and not give back. Nope -- the great
problem we face is that people would wrap the GPL around our code, and
lock us out in the same way that these supposed companies would lock
us out. Just like the Linux community, we have many companies giving
us code back, all the time. But once the code is GPL'd, we cannot get
it back. Ironic.
I don't see anything "ironic" about it at all. The ability to take BSD code and use it without being forced to give it back is what BSD licenses are all about. If GPL'ed projects find it preferable to fork, lock out, and not give back, that's no worse than if commercial companies do it--the reasons of a GPL project to do this are just as valid as those of the many commercial companies who do this.
Apparently, Theo wants to have his cake and eat it, too: on the one hand, he considers "locking out" a bad thing, on the other hand, he refuses to adopt licenses that prevent others from locking people out. He is merely hoping that "locking out" doesn't happen. Well, looks like he is wrong.
As for Theo's implication that open source developers have special obligations to be nice to each other and cooperate, all I can say is that he should think about starting with that at home. The endless criticisms and allegations of virality by members of the BSD community of the GPL license, as well as his own strong language and flames hardly motivate GPL developers to go beyond the minimally legally necessary requirements when dealing with BSD or BSD code. If Theo wants GPL developers to take into account his wishes, rather than just BSD's legal requirements, he needs to become a whole lot nicer first (or, better yet, just step down and let someone else take over).
At the very moment Shylock is about to cut Antonio with his knife, Portia points out a flaw in the contract (see Quibble (plot device)). The bond only allows Shylock to remove the flesh, not blood, of Antonio. If Shylock were to shed any drop of Antonio's blood in doing so, his "lands and goods" will be forfeited under Venetian laws. You can't strip a license without also taking the blood. With the license stripped, the code is rendered dead to the purpose under debate. See Quibble (I'm-smarter-than-you device).
Don't dual license code. Especially when you have to deal with not one, but two, bullheaded people.
Once you have the dual-licensed code, you can do with it what you want, so long as you respect ONE of the TWO licenses. However any derivative of this work must also have BOTH licenses included. The linux people are way off on this. Dual licensing does not mean pick one license and go with it, it means proceed with both licenses, obey one. The onus is on you to prove that you have the right to remove one of those licenses without proper permission. Why even have dual licensing if this is the case?
Secondly, the concept of community and sharing. Since both gpl and bsd have similar ideals (open the source), a certain amount of camaraderie and back scratching is nice. Each camp has similar goals. What pisses off the openbsd people in this case is that the gpl people acted in bad faith and removed a license illegally. Theo is 100% right about this.
If you want your work to be GPL only, separate it out and place under GPL only, and leave the dual licensed code alone, which would be legal. But as Theo says, this will reflect badly on the spirit of cooperation between the two license camps, and probably mean less inclination to support dual licenses in the future.
Theo's position apparently is: if you take my code, make your changes, and never tell me what you did -- never even show me the changes -- that's your freedom. Enjoy it. The BSD license rocks. BUT, if you take my code, make your changes, and I find out what they are and can't reuse them myself, then you've abused the freedom I've given you.
Problem: that's an ethical argument, an argument about how one should or should not play the game of open source software. The BSD license is a work of law -- how the game may or may not be played, regardless on intention. IANAL, but the law probably supports the return of the BSD license text. Beyond that, the license did its job -- the code was indeed given away.
I think the confusion here is coming from using one term to mean two things. I think most everyone here is considering dual-licensed code to be one complete work which is available under a choice of licenses.
Theo however seems to be talking about a composite work consisting of code available under two different licenses, requiring the whole to be distributed under both simultaneously.
As to which case we're talking about here? Who the hell has time to rtfa and figure that out..
What does this button d$#%* NO CARRIER
It is truly shocking to see the attitudes of SOME within the GPL club.
This was SUPPOSED to be about FREEDOM. I started thinking that there was something else going on when I saw the debate over GPLv3. It seems that SOME in the GPL crowd are determined to steal the works of others and ram their preferences down other people's throats. This is like the difference between those of us who want unencrypted music and movies so we can use what we bought in any way we want, and those who oppose encryption because they want theft to be easier. SOME of us want full sources to software so we can run it on any machine we own and modify it to better suit our needs, but SOME seem to want source so that nobody can make a living writing code.
If GPL supporters will not respect the licenses of others, then nobody should respect the GPL and GPL supporters should not become symbols of hypocracy-writ-large by getting mad about it.
If you want others to share code, make it mandatory and use the GPL.
So much for freedom...apparently nobody is free to use another license. This attitude is part of what makes the GPL viral.
Because they offered THEIR users even more freedom than the GPL would. The BSD license not only lets people do what they want with the code, but it also imposes no extra burdens on the user, OTHER THAN THAT THEY NOT RE-LICENSE THE CODE SO THAT BSD USERS CANNOT USE IT. There is nothing in the BSD license that says "you are hereby licensed to remove this license from this code"
Read my lips: you wanted it that way. The BSD license allows for this and you knew it
Nope. The BSD license does NOT allow you to change the license. As for giving back code, well I guess the GPL people are not as nice as they want to be seen. Are you saying that the only reason you give back code is that the GPL MAKES you do it? Are you saying that, left to their own devices, the GPL programmers would never give back any code? So much for moral superiority.
To share it with the BSD coders, they would also have to share it with the lock up coders.
OK, then stop using BSD code. If you are unwilling to be tainted by the impure users of BSD code, then take it out of your system. Do not use it. BSD license users are not implying that you are immoral by using your license of choice, but some GPL people like to make the accusation against BSD license users. OK, go for it. Get all the BSD and MIT stuff out of your Linux build. Be pure-and-clean-as-the-GPL-driven-snow... and enjoy your command line. Personally, I will continue to use and support BOTH licenses and try not to abuse EITHER ONE. Again, I thought that GPL advocates were all about freedom and sharing, but I guess they only wanna share with PURE people who will never try to earn a living. We cannot ALL make a living going around lecturing and giving speeches. Some people actually need to MAKE things.
but he fails to acknowledge that a dual licensed file gives you that permission with the other license.
Dude, you are dangerous. Nobody with that attitude and that poor understanding of licenses is safe to employ in software development. That attitude will get you into serious legal trouble someday. You do not get to just pick and choose your license and delete the other license from the code. I THOUGHT that GPL advocates HATED that form of intellectual property abuse. Do you advocate removing other programmer's names from comments in code too?
A lot of people here seem to be missing the point
The GPL was supposed to be (among other things) about passing on to others the rights you had when you got the code. When you got the (dual licensed) code, it had BOTH licenses and you had the freedom to use it EITHER WAY, but when you strip the BSD license from it and the rights to use it as the BSD license allowed it to be used, you violated your own Prime Directive. What you then passed-on to