btilly wrote:Good grief.
The FSF does not hold a gun to your head and say, "Use our license!" While the FSF wants you to say "GPL v3 or later" they can't make you. If you prefer the GPL v2, you're free to do that. Similarly nobody makes you put GPLed code in your codebase, forcing you to GPL your code.
These are all choices that you're free to make. If you don't like them, don't make them. If you do like them, do make them. Either way you really have nothing to complain about.
In the open source world, I'd equate the GPL and the other viral, incompatible licenses to cell phone carriers. There's a huge barrier to entry, they don't work with each other, and you have to agree to their contract whether it includes terms you like it or not because it's snowballed into this huge, massive community of like-minded people using this license that basically has a trojan horse in it. I totally agree that no one forces me to agree to the GPL or put it on my code, or to do anything related to it. Likewise, people are in no way required to agree to any of the numerous and painfully long cell phone contracts. Yet, I bet you own a cell phone. I do. Yet pretty much every cell phone contract includes an unfair and legality-yet-to-be-decided-upon clause about binding arbitration wherein you give up your right to sue the cell phone carrier.
This is kind of like that, I understand it's a weak metaphor, but the parts that are important are there: ubiquity of the agreement, a limited number of choices in the market (community) and user lock-in once you give in and agree to it. The moment you agree to CDDL, GPL, or any of a number of agreements, you're pretty tied down the moment someone else contributes an edit. When you're the sole copyright holder, everything is easy, when you're not... those viral licenses make it extremely easy for code to fracture, that is, for forks to be required. And once your beautiful megalicensed work forks into a dozen different licensed versions, it's illegal to merge any two without getting a whole lot of people's approval.
Hey, the FSF hasn't forced me to GPL any of my code, and they never will. But at one point or another, due to the nature of the open source community as it is, I'm going to have to either agree to use the GPL for some of my code or just not code at all. Given that I like to be able to assert my rights, I choose the latter. If the GPL included a 'this work can be considered public domain x years after copyright' where x was sufficiently small, I'd use it in a heartbeat. But as it is, the FSF is asserting greater bargaining rights than I have when I GPL my code unless I remove the "future version" clause. Regrettably, if I remove that clause my code is no longer entirely GPL compatible. It's a sad state of affairs.
btilly wrote:Secondly the benefit of doing things the FSF's way is that when new versions of the GPL come out, you're free to move to them. Contrary to your claim that more freedoms can only be given, the GPL v3 has several restrictions that were not in the GPL v2. There are developers that are very glad that it is easy now to switch licenses to get a stronger license.
You misinterpreted me and that's ok. I am referring to application of the "future versions" clause. The restrictions of the GPLv3 do not apply retroactively, that is, if I take GPLv2 with "or later version" software and convert it to GPLv3, I do not gain patent protection from all previous contributors. That is what I am referring to. The "Or later version" clause can only grant more freedom to modify the code and distribute it, because the obligations of the new license will not apply retroactively. The GPL's "or later version" clause can never result in a greater restriction upon the original distribution of the code, so you just have to wait until a GPL comes out that favors your use. So far, the FSF has only increased restrictions, but if they ever go lax on them, then that GPL version could be used to subvert the author's intentions from before. So long as contributors to the project continue to stamp everything GPLv2, you cannot hold GPLv3 restrictions against them. If, however, GPLv4 is the BSD license, you can remove restrictions willy-nilly and continue to use any new contributions to the code.
I would like to quote the FSF GPL FAQ:
FSF wrote:Suppose a program says "Version 3 of the GPL or any later version" and a new version of the GPL is released. If the new GPL version gives additional permission, that permission will be available immediately to all the users of the program. But if the new GPL version has a tighter requirement, it will not restrict use of the current version of the program, because it can still be used under GPL version 3. When a program says "Version 3 of the GPL or any later version", users will always be permitted to use it, and even change it, according to the terms of GPL version 3—even after later versions of the GPL are available.
Btilly, I think you have grossly misinterpreted my argument here as being 'against' the FSF, they haven't yet done anything to hurt me or my family or my cats, so I don't really have any reason to hate them. Nor do I think that it was an intentional act upon their part to put in a clause that could, if the FSF chose to, subvert the copyright of the owners. I do not feel like I am required to use the GPL, however, if I am to participate actively in the open source community eventually... heh... Using the GPL will be like those cell phone contracts. Either that or I have to come up with my own, unique license that will undoubtedly be incompatible, in which case, I've just become a minor carrier with my own contract according to my own metaphor. It's not a good situation.