LWN.net Logo

Again, forking is not deciding

Again, forking is not deciding

Posted Oct 2, 2006 13:19 UTC (Mon) by man_ls (subscriber, #15091)
In reply to: Linux follows an open decision process, and you can fork it if you dont like it by mingo
Parent article: Busy busy busybox

Ok, I will reply here then. So you think the decision process is open because fear of forking keeps Torvalds honest. Or even because people can keep separate branches; somehow separate branches (or even forks) make the decision process open. Even though only Linus Torvalds gets to decide what goes into the official kernel.

To me that is like saying that "this basketball game is open because I get to decide who plays here; and if you don't like it there are plenty of basketball courts. It is open because if you didn't like my decisions, you might go and play somewhere else."

I disagree. Keeping Torvalds honest and sharp is a consequence of Linux being free software; you made an accurate description not of an open decision process, but of an open development process. One person gets to make the decisions nevertheless, like it or not. Might be a fine point, but it is the one discussed here.


(Log in to post comments)

forking code /is/ deciding - except for the GPL itself

Posted Oct 2, 2006 13:44 UTC (Mon) by mingo (subscriber, #31122) [Link]

Ok, I will reply here then.

thanks!

So you think the decision process is open because fear of forking keeps Torvalds honest. Or even because people can keep separate branches; somehow separate branches (or even forks) make the decision process open. Even though only Linus Torvalds gets to decide what goes into the official kernel.

Actually, Linus delegates much of that "decision power" to others. Why does he do it? Because he has no real decision power! He is only the maintainer of Linux because his decisions make sense. Linus has no legal power to keep Linux from forking - and he knows it and acts according to that fact!

As a result a large number of Linux kernel forks emerged (and eclipsed) over the years, and the only reason why a fork did not take over his maintainership was that Linus was able to renew and he was able to stay ahead of the pack. Will that continue to be the case in the future? Certainly not, Linus will eventually get old and senile, like most of us. Or if he messes up earlier then he could be succeeded by whoever does it better: be that Alan Cox or Andrew Morton or someone else who is still in primary school today. And that's perfectly fine and well understood by everyone involved.

(Also, you did not reply to my fundamental question: you claimed that it would be just as easy to fork the GPL as it would be to fork the Linux kernel. I pointed out the it's just not true and that RMS has unprecedented legal power that Linus does not have - but you left those points unreplied. Should i take them as conceded?)

I disagree. Keeping Torvalds honest and sharp is a consequence of Linux being free software; you made an accurate description not of an open decision process, but of an open development process. One person gets to make the decisions nevertheless, like it or not. Might be a fine point, but it is the one discussed here.

No, what keeps Linus sharp and honest is the fact that he has no legal power to keep forks from happening. The GPLv2 license itself is an expression of that fact. The president of the FSF on the other hand has no such "danger of competition" hanging over his head. He can put into the GPL what he thinks is right and release it, and it instantly and retroactively affects the contribution dynamics of 350+ million lines of code. No other person on this planet has this power. On the other hand anyone can fork Linux (and many try and do) and continue from that base and leave Linus behind. Linus has no legal power to keep that from happening, and that is very much by design.

Let's all develop just by forking

Posted Oct 2, 2006 17:09 UTC (Mon) by man_ls (subscriber, #15091) [Link]

thanks!
You are welcome :D
Also, you did not reply to my fundamental question: you claimed that it would be just as easy to fork the GPL as it would be to fork the Linux kernel. I pointed out the it's just not true and that RMS has unprecedented legal power that Linus does not have - but you left those points unreplied. Should i take them as conceded?
I did not claim that you could fork the GPL, it was somebody else. In fact I don't think that the GPL can be forked at all; the FSF keeps copyright on it, so you cannot change it. You can create a similar license with equivalent terms.

As to the unprecedented legal power: that power is voided if nobody will ever take advantage of the "at your option" clause and choose the GPLv3. In fact, almost every recipient of v2 code will have that option. Linux kernel developers and users will not.

Now, as it happens the Linux kernel developers (who are not affected by it) are the ones most vocally arguing against the GPLv3. Odd.

No, what keeps Linus sharp and honest is the fact that he has no legal power to keep forks from happening.
Whatever. No way to verify that statement to good effect.
The president of the FSF on the other hand has no such "danger of competition" hanging over his head. He can put into the GPL what he thinks is right and release it, and it instantly and retroactively affects the contribution dynamics of 350+ million lines of code.
That is his prerrogative. After you create a license which is used by hundreds of thousands of developers, you have to concede that many of them trust the man to create a good successor to v2. Those who don't trust him should remove the "at your option" clause anyway. Those in between should confort in the fact that they can stick to v2 and remove the clause, if they don't like v3.

Let's all develop just by forking

Posted Oct 2, 2006 20:45 UTC (Mon) by mingo (subscriber, #31122) [Link]

As to the unprecedented legal power: that power is voided if nobody will ever take advantage of the "at your option" clause and choose the GPLv3.

It is not voided because once it has been used, and if the resulting GPLv3 license is backwards-incompatible with the GPLv2, any GPLv3 project can take any GPLv2-or-later code and incorporate it - but changes might not be backmergable into the original GPLv2 codebase!

Please think about it. It is a huge factor. It changes the whole ballgame.

It is also very unfair to those who created the "GPLv2 or later" code to begin with, and who wanted the basic Quid Pro Quo (which is also one of the 4 freedoms): I give you my source, you give back yours. Now the GPLv3 might change that to: "I take your source code, but you can only take it back if you change your project to GPLv3."

Is it your position that it's "that developer's fault, for having released it under 'GPLv2 or a later version' license"? Is it your position that because RMS has the legal power to create such a situation, that it is automatically fine, no matter what RMS's decision ends up to be?

That is why i call it unprecedented legal power, and only a single person on this planet has this legal power: Richard Stallman. There is no equivalent power Linus has in the Linux kernel space. He does not even come close. All the "power" he has is his technical experience and maintainance skills.

So your previous points of trying to claim that Linus has a similar legal position in the Linux kernel space as RMS has in the GPL license space is materially false. (Which i kind of see conceded by you implicitly, because you did not advance that point any further.)

Let's all develop just by forking

Posted Oct 2, 2006 21:30 UTC (Mon) by man_ls (subscriber, #15091) [Link]

Is it your position that because RMS has the legal power to create such a situation, that it is automatically fine, no matter what RMS's decision ends up to be?
No, of course not. If the license was unfair or inconsistent I would complain loudly. I just don't see how banning DRM (which is a bad thing, as I tried to explain on other pages) can be that bad -- especially for a group of people which aren't threatened by the GPLv3 update.
So your previous points of trying to claim that Linus has a similar legal position in the Linux kernel space as RMS has in the GPL license space is materially false.
I assure you I'm not trying to win my arguments blindly. The previous point was that GPLv3 drafting was as closed a process as Linux development. Linus has the same "benevolent dictator" status for Linux as Stallman for GPL. Their legal positions are as you say very different, since one is developing software and the other one updating a license.

Let's all develop just by forking

Posted Oct 2, 2006 21:56 UTC (Mon) by mingo (subscriber, #31122) [Link]

I assure you I'm not trying to win my arguments blindly. The previous point was that GPLv3 drafting was as closed a process as Linux development. Linus has the same "benevolent dictator" status for Linux as Stallman for GPL. Their legal positions are as you say very different, since one is developing software and the other one updating a license.

I tried to answer this before, but lets try another approach to get my point across:

Linux decision process: anyone can replace Linus, Linus has no legal power to decide what goes into Linux. Hence he has no choice but to be open about every decision. He delegates "merging decisions" to subsystem maintainers and generally keeps an open mind about stuff. (i have proven this with an actual incident of Linus strongly opposing something and then merging it anyway. I could show many other similar incidents too.) If the Linux decision process were dictatorial then you'd sure be able to cite me at least one example of Linus arbitrarily rejecting a change?

GPL decision process: no-one can replace RMS, and RMS has the sole legal power to unilaterally decide what goes into the GPL. There's little outside pressure on RMS to change or adapt.

How you can claim that the Linux decision process is "closed as the FSF decision process" and in fact how you can claim that the two decision processes are similar in any way, is beyond my cognitive capabilities :-)

Control over the kernel

Posted Oct 3, 2006 9:33 UTC (Tue) by man_ls (subscriber, #15091) [Link]

Linus has no legal power to decide what goes into Linux.
In fact he does: below this same page you can read:
Linux is a registered trademark of Linus Torvalds
It is not a fine legal point; he may not use that power, but that is his prerrogative. He has de iure control on Linux. Besides he publishes the kernel.org main kernels, so he also has de facto control.
He delegates "merging decisions" to subsystem maintainers and generally keeps an open mind about stuff.
He chooses to do so, sometimes. There are counter-examples like micro-kernel design and alternative security frameworks, as I gather from LWN.
If the Linux decision process were dictatorial then you'd sure be able to cite me at least one example of Linus arbitrarily rejecting a change?
Those mentioned above, or his unillateral decision of using a proprietary tool (BitKeeper) despite lots of people advising against it (including many kernel submaintainers like Morton). People proposed free alternatives or even developing a new one but they were all rejected. Remember that the arguments in favour of BitKeeper were that it enabled Linus' workflow, there were no free alternatives and developing one would take years. After withdrawal of the free client, in 15 days Linus had a working replacement. Allowing binary modules is another area where Linus' opinion is final.

Discussing these issues with a kernel developer is funny. I'm sure domain experts can suggest many more dictatorial changes in areas where there is no consensus.

GPL decision process: no-one can replace RMS, and RMS has the sole legal power to unilaterally decide what goes into the GPL. There's little outside pressure on RMS to change or adapt.
Little pressure? I don't think so. 22 years ago he had the whole industry against him; 8 years ago he confronted a pro-industry lobby (OSI) on his own. Free software (and "open source") licenses sprout every month. And still the GPL is used in 85% of free software projects. I would say that is enough pressure.

RMS plus Moglen plus the FSF decide what goes into the GPL, just as Linus decides what goes into Linux. If you don't like it you can discuss it on the GPLv3 page (or on lkml), otherwise just choose another license (or another kernel). You can fork the kernel, and you can impose additional restrictions or permissions on top of the GPL (or rewrite it and change some aspects).

Both are top-down processes; the fact that the dictators disagree on certain respects and you are friends with one of them does not change anything, Ingo. Linus listens to you, but that is because you think like he does; if you proposed a change to a micro-kernel architecture would he listen to you? If suddenly most kernel submaintainers proposed it? Would they be submaintainers for long?

Let's all develop just by forking

Posted Oct 3, 2006 15:01 UTC (Tue) by southey (subscriber, #9466) [Link]

It is not voided because once it has been used, and if the resulting GPLv3 license is backwards-incompatible with the GPLv2, any GPLv3 project can take any GPLv2-or-later code and incorporate it - but changes might not be backmergable into the original GPLv2 codebase!

It is a given that GPLv3 will be backwards-incompatible as the DRM story shows. But also there will be GPLv2-or-later code that will be incompatible with GPLv3. This is simple logic as the GPLv3 has more restrictions than the GPLv2 like potentially requiring all code free or not (especially code linking to less-free or closed libraries) and items covered by a patent (does not have to be software patents).

In part, I think the aspect of spirit is part of your core argument in this whole discussion. It is very clear to me that the written spirit of the GPL license has changed from GPLv2 to the draft of GPLv3. Just because Richard Stallman has decided that GPLv2 does not reflect his view of code 'freedom', it does not permit the him to change the written spirit of GPLv2 and force everyone with GPLv1 or GPLv2 licensed code to support his new revised view. (Yes, it is new and revised if for no other reason than changes in technology.) So, if the code owner considers that the spirit has changed, is the or a later version aspect still binding (if it was in the first place)?

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds