Adding Complexity and Second System Syndrome

Story: Second Discussion Draft of GPLv3 ReleasedTotal Replies: 60
Author Content
Bob_Robertson

Jul 30, 2006
10:52 AM EDT
I'm neither a lawyer nor a kernel hacker. Heck, for that matter I'm not even a programmer. I'm a network geek.

Adding complexity is a bad thing. Just look at all the furor over the extra commas in the Second Amendment!

The problems with the GPL.2 are not being addressed by adding yet more provisions, more language, more complexity. It just makes more places for failures to happen.

Linus sure comes across as flustered and pissed. Bummer, that. His messages read a lot like ESR wrote them. :^) Not sure either of them would be complemented by that comparison.

Looking over the GPL.2 vs GPL.3 comparison table, it is easy to see where grammar fixes, tense, stuff like that, are made. Tightening up the source-code release text would be good too, so that problems like Mepis can be more explicitly addressed, and even make it possible to come at DRM from a "but you didn't provide all the source, see it won't run!" standpoint.

But that's it. Anything more is going to cause problems. Heck, it's already causing problems! Mr. Torvalds has gained great respect by focusing on what works. Not fully taking his objections into account, even if it was just to politely reply as to how he's wrong (which seems not to have happened, bad move FSF) is not a good idea.

I believe "we" are entering the Second System Syndrome realm. The first system, built and evolved by people focused on making it work _first_, runs great. Like IPv4. Then, committies are formed, policies drafted, cruft layered on, special interests (QoS) catered to, and something like IPv6 comes out.

Had the specific elements of IPv6 that simplify and clarify been included, such as the static header length and increased address space, as well as simplified broadcast/rfc1918 elements, been the entirety of the changes, IPv6 would be perfect.

But NooOOOoo! Can't leave it a that. Must implement DHCP in the network protocol, rather than leaving it a host issue. Must implement Quality of Service into the protocol, can't leave it as an optional routing issue. Stuff and load, cruft and complexity. A decrease in modularity and flexibility. More stuff to go wrong.

There's only one type of replies to Linus that I really object to, and that's the ones who say, "Well, yeah, we can choose not to buy DRM hardware now, but what about when we can no longer do so?"

When that day comes, when vanilla hardware is illegal and Trusted Computing is the law of the land, GPL.2 verses GPL.3 is going to be a non-issue.

There is only one way to show the hardware manufacturers that such is a bad idea, and that is, as Linus puts it, not to buy DRM hardware.
sbergman27

Jul 30, 2006
11:22 AM EDT
That pretty much sums up my feelings.

The only thing that I would have to add is that GPLv3's DRM provisions would only serve to keep FOSS out of devices. No hardware manufacturer who wants to DRM lock their hardware is going to change its mind because it can't use Rockbox or whatever. The DRM is likely part of their business model. The choice of software is just another decision to be made in the implementation.

Perhaps blocking them from using FOSS software in that way would help the individual software authors sleep better at night, And that's valid.

But GPLv3 is not going to influence the prevelance (or non) of DRM locked hardware in a significant way.

Personally, I think it does more good to have the FOSS software in the devices, DRM locked or not. It might just give us more leverage, in the future, than we would otherwise have.
r_a_trip

Jul 30, 2006
1:16 PM EDT
Bob_Robertson & sbergman27, since most consumers are brainless sheep that buy stuff on the lowest price or highest cool-factor and not on wanted features, have you made arrangements to become MCSE's or .NET programmers?

I won't buy hardware with a TPM that is not under my control. If (legally) gaining control over that TPM means being shut out of commercial content so be it.

That I don't buy DRM hardware is insignificant though. Just as it is insignificant that you don't. We are an informed minority who don't get to influence the market by numbers.

What is available on the market gets decided by a majority that still puts up with forced Windows purchases through preloading, file format lockin and DRM schemes on music which are purely designed to sell the same stuff over and over again.

So will you get out of IT when DRM and Windows are mandatory and FOSS an historic footnote? It's that or join the enemy.
jimf

Jul 30, 2006
1:17 PM EDT
> Mr. Torvalds has gained great respect by focusing on what works. Not fully taking his objections into account, even if it was just to politely reply as to how he's wrong (which seems not to have happened, bad move FSF) is not a good idea.

I think that's the part that bothers me the most.
dinotrac

Jul 30, 2006
1:25 PM EDT
jimf -

Ditto.

At this point, I think it's fair to say that Torvalds knows one hell of a lot more about making free software work in the world at large than Stallman and friends ever will.

Doesn't make him right, but it does make him worth listening to. You have to wonder if Stallman actually cares whether anybody is able to use free software.
jimf

Jul 30, 2006
1:30 PM EDT
> You have to wonder if Stallman actually cares whether anybody is able to use free software.

Oh.... Now there I think you're wrong.

I think he cares very much. But that very caring may be his blind spot.

sbergman27

Jul 30, 2006
1:46 PM EDT
r_a_trip,

And GPLv3 will prevent this situation how? Be specific, please.

jimf

Jul 30, 2006
1:54 PM EDT
I don't know if GPL3 will stop DRM or not, but if DRM isn't stopped, I'll be forced to start hacking as an act of civil disobedience... And, I hate to code :( ....
r_a_trip

Jul 30, 2006
2:40 PM EDT
And GPLv3 will prevent this situation how? Be specific, please.

>GPL V3 will probably not stop the onslaught, but at least it is stating objections. Sitting on your ass and saying "Don't buy DRM hardware." certainly will achieve less. At least the clause in GPL V3 stirs the media and maybe it will wake up some more people.

>That is bullshit.

Please try to remember that this is a family-friendly site. Use the #$% stuff if you really must. Refer to #6 in the TOS. We do edit profane language.

Thanks, Don

My apologies. In the "heat of battle" I sometimes forget that not all eyes like to see unfit language. I hope I haven't caused anyone discomfort with my unthoughtful text.
jimf

Jul 30, 2006
2:46 PM EDT
> You might not agree with me

Actually, that's the clearest argument I've seen to date r_a_trip.
dinotrac

Jul 30, 2006
3:10 PM EDT
ra_trip...

>That is bullshit. His technological achievements are not up for debate, but this is not a technological issue. It's a legal one.

So very, very, very wrong.

Richard Stallman hacked a pile of code in his time, but his technical achievements are not what make him remarkable. Same is true for Linus. Linus is the man behind the only GPL'd project with significant visibility and recognition in the business world. Linux causes other GPL'd software to be used, not the other way around. Linus is the visible symbol of that project, and the person with the most intimate understanding of making that project work in a real world of corporate contributors and corporate users.

As to "legal issues" -

We don't live in some fairy tale land where laws are handed down from on high without regard for their impact on real life.

Those nasty anti-circumvention provisions in the DMCA? They were put in place so that content providers could stick us all for a bundle of cash. A real-world connection.

Likewise, contracts and licenses have to work where the rubber meets the road. If GPLV3 doesn't work, it won't be used. What good will that do for anybody?









jimf

Jul 30, 2006
3:27 PM EDT
> Likewise, contracts and licenses have to work where the rubber meets the road. If GPLV3 doesn't work, it won't be used. What good will that do for anybody?

If DRM is the road, perhaps it shouldn't work.
r_a_trip

Jul 30, 2006
3:29 PM EDT
Dinotrac, the update to GPL V3 is legal. It doesn't matter if it fails. It will at least have tried to nip TiVo'ization in the bud.

If TiVo'ization will become the norm, Free, Libre and Open Source Software failed on a fundamental level. Period. What software somebody wrote, which ego promoted FOSS more or whose genitals were bigger will have become a moot point.

We can at least applaud RMS and Eben for trying. I think the changes to the GPL are moderate and sustainable. They are only unsupportable for those who want to use hardware to do an end run around their obligations with regards to the software.

Well, Free Software is already doomed, since most in the community see it as "religious zealotry". There is no moral incentive to keep software Free. As long as it's cheap and does what everybody wants from it, Freedom be damned.

I welcome our new DRM overlords.
dinotrac

Jul 30, 2006
3:47 PM EDT
>We can at least applaud RMS and Eben for trying.

I will happily applaud them if they make a serious effort to do some good. If, however, they are too caught up in their own egos and visions to make a useful contribution, there will be nothing to applaud.
jdixon

Jul 30, 2006
4:00 PM EDT
> If (legally) gaining control over that TPM means being shut out of commercial content so be it.

The more I see of modern commercial content, the less important it seems to be able to access it.
Bob_Robertson

Jul 30, 2006
5:49 PM EDT
The only thing that will kill F/OSS is a law that requires hardware to use signed binaries, Trusted Computing, combined with existing DMCA provisions against reverse engineering.

And in that event, the GPL.3 is moot anyway, because it is a well established legal function that law overrides private contracts (like licenses and EULAs).

Lastly, I don't see the GPL.3 doing what people are saying it will do. To my reading, the language will scare companies away from using the software because it makes the already not-well-understood GPL.2 more complicated. If the point is to prevent DRM, it will in no way do that. As has been said, the companies who wish to add DRM are already making a programming investment, and will use BSD or one of the many, many other embedded software offerings that are available.

The only thing the DRM provisions will do is alienate people.

One of the purposes of the GPL until now has been to remove limitations about how people may use software. Linux-driven land mines? Oh well, freedom for me means freedom for you even if I don't like you. These DRM provisions violate that principle by now saying what hardware producers may or may not do with the software. So who is really sticking to principle here?

grouch

Jul 30, 2006
5:57 PM EDT
The primary purpose of the GPL is to ensure the 4 freedoms in the definition of free software. Things like the Tivo, DRM and TCP remove those freedoms from the user. If you can't run it (freedom 0), you certainly can't adapt it (freedom 1) because you can't try your adaptations, so distributing it (freedom 2) is worthless because it won't help your community (freedom 3).
Bob_Robertson

Jul 30, 2006
6:18 PM EDT
But until now the GPL has not been about running on specific hardware. It's been about software freedom.

And don't get me wrong, I'm not going to compromise on principle. This isn't about principle, it's about the effects of adding these provisions to the GPL and what they will and will not accomplish.
grouch

Jul 30, 2006
7:21 PM EDT
It's that software freedom that GPL3 attempts to protect.

Is it the part of section 1 that bothers you, the same as Torvalds complains about?

" The Corresponding Source also includes any encryption or authorization keys necessary to install and/or execute modified versions from source code in the recommended or principal context of use, such that they can implement all the same functionality in the same range of circumstances. (For instance, if the work is a DVD player and can play certain DVDs, it must be possible for modified versions to play those DVDs. If the work communicates with an online service, it must be possible for modified versions to communicate with the same online service in the same way such that the service cannot distinguish.) A key need not be included in cases where use of the work normally implies the user already has the key and can read and copy it, as in privacy applications where users generate their own keys. However, the fact that a key is generated based on the object code of the work or is present in hardware that limits its use does not alter the requirement to include it in the Corresponding Source."

There is one line in there that worries me, as it is worded now:

"If the work communicates with an online service, it must be possible for modified versions to communicate with the same online service in the same way such that the service cannot distinguish."

Is that "possible" significant?
jimf

Jul 30, 2006
9:07 PM EDT
> "If the work communicates with an online service, it must be possible for modified versions to communicate with the same online service in the same way such that the service cannot distinguish."

Huh??? Cannot distinguish 'what'.... That whole thing makes 'no' sense in any language i know.
grouch

Jul 30, 2006
9:16 PM EDT
Cannot distinguish the modified version of the work from the supplied "Corresponding Source".
Bob_Robertson

Jul 31, 2006
7:16 AM EDT
The fact that you have to ask if "possible" is significant is exactly the kind of complexity I'm trying to highlight.

The use of the word "possible" is also a very serious flaw. "Oh, sure, it's possible, but we're not going to tell you how to do it."

dinotrac

Jul 31, 2006
7:52 AM EDT
Bob_R (and grouch, too, for that matter):

Although I've been vocal on the consideration to which Linus is due, I've been sitting on the sidelines as to the actual provisions of the new license.

There's a reason for that.

I'm not at all sure that I understand it.

I didn't have that problem with V2. It's very well written.

The fact that I'm still scratching my head over what it means, let alone the implications of what it means, causes me great angst, not to mention concern. There is a rule in contract interpretation that could be a concern -- when a provision is ambiguous, and can reasonably read in the way consistent with each party's position, you choose against the provision's author. If a dispute were to come before a judge as simple-minded and befuddled as I am, I fear the FSF might find it's way on the wrong side of a finding.



sbergman27

Jul 31, 2006
9:11 AM EDT
Quoting:If a dispute were to come before a judge as simple-minded and befuddled as I am, I fear the FSF might find it's way on the wrong side of a finding.


Doesn't say much for the prospects of corporate adoption either.

Anyway, I wonder what private conversations Eben and Richard have had on that topic.

Eben would have brought up the risks. Richard would have made a decision, since he's quite clear on the point that all the decision making power resides with himself. And whatever that decision was, Eben could not ethically question his client's decision in public.
dinotrac

Jul 31, 2006
9:19 AM EDT
Steve -

Fortunately, Linux is licensed under V2, and there really isn't a whole lot of other GPL'd software used in the corporate space.
jimf

Jul 31, 2006
9:36 AM EDT
Well, I'm seeing everything from sloppy english to imprecise thinking in that. I wouldn't dare release a technical manual with that many potental problems.
Sander_Marechal

Jul 31, 2006
1:00 PM EDT
Quoting:and there really isn't a whole lot of other GPL'd software used in the corporate space.


How about the rest of the base OS system, which is for a large part all GNU software? Think compilers, glibc, shell, etcetera.
sbergman27

Jul 31, 2006
1:21 PM EDT
There is actually much less GNU than you might think. Actually, aside from Glibc, I don't think it would be that hard to put together a completely GNUless Linux system.

grouch

Jul 31, 2006
1:32 PM EDT
One example is sufficient: Snort, which is pervasive throughout the U.S. government, is GPL software.
dinotrac

Jul 31, 2006
1:58 PM EDT
sander -

GNU tools are used in the corporate world. The single biggest driver, however, is the adaptation of Linux, which tends to come with them.

It's a good tool set, and people should use it.

It is, however, not indispensable or irreplaceable. They work well (even gcc works well enough) and the price is right.

grouch:

As to snort, government is government, business is business.
grouch

Jul 31, 2006
2:18 PM EDT
dinotrac:

Yeah, but the U.S. government is one huge customer. Each time it sneezes, contractors around the world wipe their noses.
dinotrac

Jul 31, 2006
2:20 PM EDT
grouch -

Absolutely. I also suspect that the government has less concern about V3 than businesses might (might is the operative word...final draft not in and, as I noted, I still haven't figured out exactly what the stupid thing means).

sbergman27

Jul 31, 2006
2:23 PM EDT
It would be ironic if history pointed to the release of GPLv3 as the turning point that led to the rise, and eventual World Domination, of the BSDs.
dinotrac

Jul 31, 2006
2:38 PM EDT
Steve -

That would be interesting indeed.

Or, in the alternative, GNU/Linux became BSD/Linux!!!

I consider the likelihood barely above nil, but a GPLV2 Linux kernel with a BSD toolset might not send the universe careening into total chaos.
sbergman27

Jul 31, 2006
3:01 PM EDT
Well, hypothetically, and just for fun, let's say BSD/Linux happened. A BSD user space riding on a GPLv2 licensed Linux kernel took over the world. Would we be any less free than if GNU/Linux took over the world? Or more?
r_a_trip

Jul 31, 2006
3:09 PM EDT
These DRM provisions violate that principle by now saying what hardware producers may or may not do with the software.

Bob_Robertson, patent bullshit. GPL V2 already does that. Linux the kernel imposes the restriction on hardware that they can only interface with GPL-ed code in the kernel. Binary drivers like Nvidia and ATI are a copyright violation and Nvidia and ATI push the responsibility for this violation on the end-users.

As an aside: Dinotrac - if you don't understand the new beast, hoping that Linus does and you can depend on his words isn't very wise.

Bob_Robertson

Jul 31, 2006
3:11 PM EDT
http://www.debian.org/ports/netbsd/

"This is a port of the Debian operating system, complete with apt, dpkg, and GNU userland, to the NetBSD kernel. It is currently in a very preliminary stage, but since NetBSD is a production-level kernel, the usability of Debian GNU/NetBSD should increase rapidly."

This is kind of the reverse, but it does demonstrate that the flexibility already exists.
sbergman27

Jul 31, 2006
3:12 PM EDT
You've formally studied law haven't you, Dean?
dinotrac

Jul 31, 2006
3:53 PM EDT
>As an aside: > Dinotrac - if you don't understand the new beast, hoping that Linus does and you can depend on his >words isn't very wise.

As an aside - If you don't understand simple english, hoping that a snide remark will have meaning isn't very wise.

OK...snideness out of the system.

I don't depend on Linus's words. That is why I am wrestling with the text of the license myself. I do, however, believe that RMS would be foolish -- no -- make that Foolish -- to ignore Linus's concerns.

A license has no impact on anything if it isn't used. That said, acknowledging the concerns and trying to address them is not the same thing as acceding to them. DRM does indeed introduce treacherous waters. We can only hope that RMS and his legal advisors can steer their way clear of the deadliest rocks.



tuxchick2

Jul 31, 2006
4:14 PM EDT
Linus' will does not always prevail, and he is not always right, as in the Bitkeeper episode. That was a mistake from the beginning. (Speaking of Poster Children for Why Free Software Matters, BitKeeper is perfect.) Remember, the Linux kernel was born in a time of open hardware, and now we're seeing a shift to locked hardware. It's a different ballgame now. I don't know if addressing DRM head-on in GPL3 is a good move or not, I'm just glad that the FSF is trying to do something about it.
dinotrac

Jul 31, 2006
4:21 PM EDT
tc --

I was mulling this over on my way out to the Jewel store to pick up some Diet soda....

I started thinking about democracy.

The power of democracy is not that it makes things happen. It doesn't even gurarantee that government will be fairer, more efficient, or freer than the regime of a despot.

What democracy does is confer legitimacy and moral authority. Bad as the government may be, you know that you and people like you, had the chance to affect it, to be heard. Bad as it may be, it acquires the mantel of legitimacy the way a despot -- no matter how gifted, experienced, etc -- never can.

That may be the problem -- conveying the sense that RMS believes that the free software movement is his baby and that nobody else really matters. What an odd thought -- a despot for freedom.





grouch

Jul 31, 2006
4:45 PM EDT
dintrac: >"That may be the problem -- conveying the sense that RMS believes that the free software movement is his baby and that nobody else really matters. What an odd thought -- a despot for freedom."

That doesn't make a lot of sense. As you pointed out earlier, "[a] license has no impact on anything if it isn't used." RMS can't force the use of GPL3. It must stand on its own when published in final form. Getting to that final form is what the year of comment is about. The revisions in the DRM provisions are, IIUC, largely due to Torvalds' commentary.
dinotrac

Jul 31, 2006
4:52 PM EDT
grouch:

It makes sense if read right, as we're talking about RMS and not free software.

The GPL has acquired a certain status. People rely on it, many do more than rely -- they ascribe to the principles upon which they believe it to be based. It is viewed as legitimate.

Legitimacy is a powerful thing, but it is easily squandered -- and appearances do matter.

> The revisions in the DRM provisions are, IIUC, largely due to Torvalds' commentary.

That would seem like a sensible thing for RMS to hit hard --- ie, We've listened, we've tried, we're still trying, but, in the end, freedom must be preserved. Maybe I just haven't been following this long enough to see.
sbergman27

Jul 31, 2006
4:58 PM EDT
> RMS can't force the use of GPL3.

You're forgetting the viral nature of the GPL. And GPLv2'd software is particularly vulnerable, as when GPLv3 is released, GPLv2'd software automatically becomes GPLv3 in addition to v2 unless the original author left the "or later" provision out of his license. Oh, it's still usable as GPLv2. But the first piece that goes into it with the GPLv3 attached closes that door.
grouch

Jul 31, 2006
5:05 PM EDT
It is the recipient who decides whether to exercise the "or later" part. If you make a derivative, you must distribute that derivative without further restrictions than the work on which it was based.

I can't fork the kernel with some modification that is GPL3-only and claim the entire work is then GPL3-only.
sbergman27

Jul 31, 2006
5:14 PM EDT
GPLv3 code cannot be added to the Linux kernel, period. It does not have the "or later" part. At least, Linus' code doesn't. And GPLv2 without the "or later" part is not compatible with GPLv3.

Edit: And of course, I really should not be falling into the trap of calling it GPLv3 instead of GPLv3 draft 2.
jimf

Jul 31, 2006
5:43 PM EDT
> I really should not be falling into the trap of calling it GPLv3 instead of GPLv3 draft 2.

Heh... I sure hope that's a draft.
grouch

Jul 31, 2006
5:47 PM EDT
Ok, it was a hastily chosen example.

Pick any project that includes the "or later" phrase in the license. That still leaves it up to the user to decide under what terms, GPL2 or GPL92, the user wishes to use.

If that user modifies the original work and distributes the modified work, it must conform to section 6 of GPL2:

"6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License."

A user may choose GPL[>2], but, when distributing a derivative, "may not impose any further restrictions". Anyone receiving that derivative "automatically receives a license from the original licensor". That prevents a mere derivative from hijacking the original to make it ONLY licensed under later versions of the GPL.
sbergman27

Jul 31, 2006
6:15 PM EDT
If you contribute your own GPLv3 code to a GPLv2 project, the entire work would have to be treated as if it were GPLv3. Now, if someone then removed all the GPLv3 code, the resulting (possibly lobotomized) work could again be treated as GPLv2. As time goes on, any GPLv2 project which accepts GPLv3 contributions is going to be harder to convert back to GPLv2.

GPLv2 code (with the "or later" part) however, can be freely added to a GPLv3 project.

So it seems to me that while RMS can't "force" anyone to use the GPLv3, he already has his bases covered. GPLv3 *will* infiltrate GPLv2 projects unless great care is taken. And if great care is taken by a project, it means cutting themselves off from some code.

So I suppose we can add licensing fragmentation to the possible down sides if there is not general agreement that GPLv3 is desireable

grouch

Jul 31, 2006
6:36 PM EDT
>"If you contribute your own GPLv3 code to a GPLv2 project, the entire work would have to be treated as if it were GPLv3."

Huh?
sbergman27

Jul 31, 2006
6:57 PM EDT
Project X is GPLv2 with the "or later" provision. It then accepts some GPLv3 code. Company Y wants to put Project X in their PVR which they intend to lock down with DRM and not give out any keys. Can they do that with the formerly GPLv2, but now hybrid, Project X?
dinotrac

Jul 31, 2006
7:28 PM EDT
Steve --

from http://www.gnu.org/licenses/gpl.txt:

If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation.
sbergman27

Jul 31, 2006
7:52 PM EDT
Yes. So GPLv2 code so covered can be freely incorporated into a work that started out as GPLv3. If a company wants to use that work as a whole, they need to treat it as GPLv3.

And GPLv3 code can be incorporated into a project which started out as GPLv2 as long as "any later version" was specified. And if a company wants use that work as a whole... they need to treat it as GPLv3.

It's a one way street.

The original GPLv2 code could be separated out again and the project could then be treated as GPLv2. But as time goes on, that is going to be less and less practical.

My point being that it is going to become a GPLv3 world even if "RMS can't force the use of" it. And any attempt to keep GPLv3 out of GPLv2 projects would result in even more code being unmixable than is the case today.

dinotrac

Jul 31, 2006
7:57 PM EDT
Steve -

If they use a version incorporating v3 code, then yes. If they use a version not incorporating v3 code, then no.

I don't know why you think it is hard to keep v3 code out of a v2 project. The project sets the license terms. if somebody wishes to donate code, it must be done under the license terms of the project.

What's so hard about that?
grouch

Jul 31, 2006
8:01 PM EDT
If the GPL3 imposes further restrictions on the original GPL2 work, the derived work cannot be distributed with those further restrictions.

If you're the original author of the GPL2 work, you can accept that code by then changing the license to GPL3 or GPL3 or later. If you received that GPL2 work, add the further restrictions of GPL3, anyone you distribute it to has the option of using GPL2 "or later" on everything except the part you added.

Sander_Marechal

Jul 31, 2006
9:43 PM EDT
Quoting:If the GPL3 imposes further restrictions on the original GPL2 work, the derived work cannot be distributed with those further restrictions.


"Furter restrictions" actually means restrictions beyond those stated in the GPL, regardless of versions. In that context, GPL3 is not a further restrictions of rights beyond GPL2. I'm sure that the GPL3 FAQ will state this clearly when it comes out.

Quoting:I don't know why you think it is hard to keep v3 code out of a v2 project. The project sets the license terms. if somebody wishes to donate code, it must be done under the license terms of the project.


Exactly. There's little to no problems with people donating code to a project. The trouble starts when projects actively incorporate upstream sources into their project. When the upstream license changes to GPL3 the project would have to choose between upgrading to GPL3 themselves or make do with the latest GPL2 licensed version.

I have no idea how this is going to affect linking and the like. It won't be a problem for base libraries such as glibc (there are provisions in the GPL for linking against base libraries) but very little is actually counted as a base library. GPL2 is ambiguous on what exactly is a base library and what not. This very much affects when you have to sync your license with said library or when you can freely link against it.
sbergman27

Jul 31, 2006
10:16 PM EDT
Quoting:What's so hard about that?


Saying no to a contribution?

It's not so much that it's hard to do, but that there are costs associated... like turning down perfectly good code.

I'm really not even saying that projects *should* try to keep GPLv3 out. I'm just addressing this quote:

Quoting:RMS can't force the use of GPL3. It must stand on its own when published in final form.


It's not as though GPLv2 and v3 are competing on an even footing. The later version has the advantage with respect to propagation.
grouch

Jul 31, 2006
11:02 PM EDT
>""Furter restrictions" actually means restrictions beyond those stated in the GPL, regardless of versions. In that context, GPL3 is not a further restrictions of rights beyond GPL2. I'm sure that the GPL3 FAQ will state this clearly when it comes out."

No. Further restrictions means further restrictions. You must pass on the same license terms under which you received the work, "from the original licensor". If that original licensor licensed it to you with the option to choose GPL2, you have no choice but to give that option to anyone who receives your derivative work. To do otherwise violates the original licensor's license and leaves you in the middle of copyright infringement.
Sander_Marechal

Aug 01, 2006
12:08 AM EDT
The "or any later version" part allows me to pick whatever GPL version I want. You offer me a piece of software available under multiple GPL licenses and I get to choose. If you write a piece piece of software licensed under GPL2 *or later* then I am allowed to take that piece of software and redistribute it under a GPL3 license only. I would not have to change a single line of code.

It's like dual licensed software. With dual licensing you either pick the GPL license *or* you pick the (paid for) proprietry license. The one does not affect the other. The same thing now happens with GPL software. Software licensed under a GPL2 "or later" license are effectively dual licensed under two different versions of the GPL. You can pick GPL2 or you can pick GPL3. One does not affect the other.

If I choose to use the GPL3 licensed version then the GPL2 has no effect on me.
grouch

Aug 01, 2006
3:12 AM EDT
Yes, you as recipient get to choose, but you as distributor of a derivative work are required to pass along the same license terms you received. You can't choose to disregard section 6 requirements.
Sander_Marechal

Aug 01, 2006
3:59 AM EDT
Quoting:Yes, you as recipient get to choose


So let's say I choose the GPL3 version of your software (which is identical to the GPL2 version except for the license)

Quoting:but you as distributor of a derivative work are required to pass along the same license terms you received.


I recieved it under a GPL3 license, not a GPL2 license. That's what I chose above. GPL2 section 6 doesn't apply to me since my copy of your software is GPL3 licensed. When I redistribute it I only have to adhere to GPL3, where the equivalent is section 10. I adhere to that by distributing only under GPL3.

If you license your software as "GPL2 or later versions" then you are effectively offering your software under multiple licenses (in this case GPL2 and GPL3). In order to use, modify and redistribute your code I only need to accept one of the licenses you offer it under. I can reject the other licenses.[*]

Only when I contribute back to your "GPL2 or later" do I have to accept that you will be able to distribute my code under all the licenses.

It's the exact same situation for e.g. MySQL. The GPL2 doesn't affect in any way the people using MySQL under a proprietry license. The proprietry license doensn't affect people who use MySQL with a GPL license. When I contribute to MySQL I accept that they can license my code under both the GPL and their proprietry license.

Seriously, if the above doesn't make it clear enough for you I'm e-mailing the FSF and get a direct statement from Eben. I can't make it any more clearer.

[*] A scary thought, since you have no idea what will be in GPL4, GPL5 or any version thereafter. This is why I am currently contemplating to license my software as GPL2 only but require contributions to be "GPL2 or later". That way I could in theory do something like "My program is licensed under GPL2, GPL4, GPL5 but not GPL3 because I think it sucks". I haven't decided yet if it's worth the trouble.

PS: The above story is only about "GPL2 or later" software. GPL2 only software, such as the Linux kernel, are a whole different ballgame. So is the situation after a program drops the GPL2 and goes with a GPL3 or higher license.

Posting in this forum is limited to members of the group: [ForumMods, SITEADMINS, MEMBERS.]

Becoming a member of LXer is easy and free. Join Us!