I want Minix's size but Linux's functionality....
I want Minix's size but Linux's functionality....
Posted Jul 28, 2009 3:39 UTC (Tue) by coriordan (guest, #7544)In reply to: A new GCC runtime library license snag? by sbergman27
Parent article: A new GCC runtime library license snag?
What would you do differently in the licences?
Posted Jul 28, 2009 8:45 UTC (Tue)
by rsidd (subscriber, #2582)
[Link] (21 responses)
I predict that rather than accept forced licence changes, people will fork the project (as happened to XFree86) or move on to other alternatives like LLVM.
Posted Jul 28, 2009 18:50 UTC (Tue)
by coriordan (guest, #7544)
[Link] (20 responses)
Posted Jul 28, 2009 20:06 UTC (Tue)
by sbergman27 (guest, #10767)
[Link] (5 responses)
GPLv2 still encompasses too much complexity. But the level of complexity is at least arguably worth it. GPLv3 adds far complexity just to add some "refinements". ("Refinements" which the long and bitter debate made clear that *many* do not even like or agree with.)
But in general, when the FSF, after excruciatingly drawn out deliberation, can't seem to keep their own new license clauses from conflicting with their other licenses... that's a pretty strong indication of a problem. It's the same kind of situation as when your spaghetti code, which seemed like such a good idea when you were writing it, starts catching up with you and your programming life turns into a living nightmare.
Posted Jul 28, 2009 21:32 UTC (Tue)
by coriordan (guest, #7544)
[Link] (4 responses)
Now the previously too-long GPLv2 has become "just right" and GPLv3 is the target of "make it shorter!" - I too wish that we could have it on the back of a beermat, but which unnecessary sentences should be removed?
Posted Jul 28, 2009 22:19 UTC (Tue)
by sbergman27 (guest, #10767)
[Link] (1 responses)
GPLv2 is still too long. But its length is, at least, defensible.
"""
Honestly? This should do:
diff -u GPLv3.txt GPLv2.txt
(Make sure you have enough RAM + swap.)
The result is well tested, relatively bug free, and has a feature set which most people were reasonably happy with. Do we really have to wreck everything just to get back at Tivo?
Posted Jul 29, 2009 0:55 UTC (Wed)
by jordanb (guest, #45668)
[Link]
Clearly the solution for the FSF is to produce a GPLv4, thus rendering the GPLv3 "too long but defensible."
Posted Jul 29, 2009 0:47 UTC (Wed)
by bronson (subscriber, #4806)
[Link]
Ciaran, You and I had some back-and-forths right here on LWN back in the day. I was practically begging the FSF to remove the Tivoization language because, in my opinion, it was contorting the GPLv3 into a monster that only professional lawyers could understand. Ah, those were good times.
(I think I also mentioned on how painful it was to try to hold a conversation on the GPLv3's automated comment system. This explains my lack of feedback there anyway... Ii was like trying to critique a painting using a web form that only allows comments on individual colors.)
Ah well, water under the bridge. I still totally support the FSF. I do avoid the GPLv3 when I can, though, since I still don't completely understand it. If you'd like to discuss reducing the size of the GPLv3 by reducing its scope, rather than by shortening individual sentences, I'd be overjoyed to reopen that discussion.
Posted Jul 29, 2009 12:05 UTC (Wed)
by DonDiego (guest, #24141)
[Link]
No, both should be shorter, version 3 just makes the problem worse.
Posted Jul 29, 2009 12:01 UTC (Wed)
by DonDiego (guest, #24141)
[Link] (13 responses)
Have you read and understood it? I think I can confidently claim that I understand version 2 quite well, but version 3 gives me headaches.
I still don't get the difference between "conveying" and "propagating" after reading those paragraphs about a dozen times. Version 2 is hard enough to understand for laymen, but version 3 is a readability and complexity disaster, sorry.
Read GPL version 1, 2 and 3 one after the other. The bloat^wcomplexity keeps increasing and version 3 finally does not appear to have programmers, but legal experts as its core audience. This is sad. The same effect could have been achieved with less words and much clearer language.
Posted Jul 29, 2009 18:44 UTC (Wed)
by coriordan (guest, #7544)
[Link] (12 responses)
When a company places an internet-connected, sealed box, which continues to belong to them, in your house for a fixed period of time, and that box contains a computer running GNU/Linux, did the company "distribute"? That's the problem. While I do have a general idea, I don't know what exact meaning that word has in Ireland, the UK, USA, Australia, New Zealand, Canada... And when you translate it, all bets are off.
That makes uncertainty because that company can say they're not "distributing", so I'm worried about going to court, and worse, if I do go to court, the judge might even agree that, by the legal definition of that country, they're indeed not "distributing".
GPLv3 makes things simpler because I no longer have to know or guess the meaning of "distribute" in every country. "Propagate" and "convey" were chosen specifically because they have no existing meanings with regard to software. This means that the licence can explain the intended meaning. So I just read the licence. The licence *text* itself is more complex, but overall, knowing what the licence really means is much much easier.
Posted Jul 29, 2009 20:51 UTC (Wed)
by bronson (subscriber, #4806)
[Link] (9 responses)
Well that's a relief! Since figuring out what the GPLv3 really means is so much easier, it must be simple to answer the license snag brought up by this article?
Posted Jul 30, 2009 5:21 UTC (Thu)
by khim (subscriber, #9252)
[Link] (8 responses)
Have you even read the article? Yup. Sure. Absolutely. When Git and udev
will switch to GPLv3 it'll be easy. But till then we are stuck: the problem
discussed is related to the fact that GPLv2 uses unprecise definitions and so
it's impossible to fix it wihout changing the GPLv2 text or adding some
explanations to it. Since FSF is not a copyright holder of Git/udev/etc it's
hard to see what the hell FSF can do here.
Posted Jul 30, 2009 12:40 UTC (Thu)
by foom (subscriber, #14868)
[Link] (1 responses)
Well, there's certainly one obvious and trivially correct thing they could do...
Posted Jul 31, 2009 8:15 UTC (Fri)
by mjthayer (guest, #39183)
[Link]
Posted Jul 30, 2009 16:03 UTC (Thu)
by bronson (subscriber, #4806)
[Link] (5 responses)
I did read the article so, yep, I know that it brought up more issues than this one. You read the whole thing too, right?
If the problem were truly that the GPLv2 uses imprecise terminology then all the FSF has to do is release a GPL2.1 with language bugfixes, or even just an addendum describing language intent.
> Since FSF is not a copyright holder of Git/udev/etc it's hard to see what the hell FSF can do here.
There are two sides to every integration problem. The most obvious thing the FSF can do is, gosh, simply let the runtime library be usable anywhere. Or, they could roll back to the 2008 license, probably with *minor* changes: http://lwn.net/Articles/316835/ (like foom says)
I'm sure they have other options too.
Posted Jul 30, 2009 16:18 UTC (Thu)
by jordanb (guest, #45668)
[Link]
They did release an update to the GPL fixing language ambiguities. The copyright holders in question chose not to move to it, either because they had a belief that it 'overreached' or they had removed the 'or later version' clause and now find it too much bother to do a license change.
Maybe a "2.1" would placate some who feel that GPLv3 "overreached" (I doubt it) but it would do nothing to address the second case. The vast majority of the software that's still under GPLv2 would not move to a newer license even if the changes were minor.
> or even just an addendum describing language intent.
This would not be binding on copyright holders not a party to the 'addendum'. (Which is to say, it would only apply to the FSF, which would make it totally irrelevant because all the FSF code is under GPLv3.)
Posted Jul 31, 2009 7:25 UTC (Fri)
by khim (subscriber, #9252)
[Link] (3 responses)
They did so - it's called GPLv3. There are no need to do this for FSF-licensed software (GPLv3 serves as
such clarification) and "addenum" will not be automatically attached to the
text of license used by git/udev/etc. It is useful anywhere (for free and proprietary programs alike) -
where other side does not prohibit it. I see no such options - except one: return back to the GPLv2. And FSF
surely will do no such things. Reasons were explained well in advance.
This switch was planned more then two years ago - if people wanted
to raise racket the time was back in 2007, not today.
Posted Aug 6, 2009 10:10 UTC (Thu)
by SEMW (guest, #52697)
[Link] (2 responses)
Of course it's "useful anywhere... where the other side does not prohibit it". But the point is that it is written in such a way that the GPL v2 -- a widely used and free license -- *does* prohibit it (if the runtime library is distributed with the binary). To plead that this is the GPL2's fault is trivially true, but missing the point (in a similar way to Joerg Shilling's defending Sun's use of the GPL-incompatible CDDL on the grounds that it's a completely free license, and if the FSF thinks it's incompatible with the GPL, that's not Sun's problem).
> if people wanted to raise racket the time was back in 2007, not today.
That is bordering on disingenuous. As you know, no-one noticed this problem in 2007, it's only just been pointed out.
Posted Aug 9, 2009 11:58 UTC (Sun)
by khim (subscriber, #9252)
[Link] (1 responses)
Nope. It does not prohibit anything if you apply it correctly.
Please read GPLv2 -
specifically paragraph 9.
GPLv3 does the same
in
paragraph 14. The problems only arise when someone applies GPLv2 in such a
way as to create the problems - but then the conventional wisdom says it's
not a problem of GPL... I can't see your point. In both cases copyright owners did what they
thought was right. The results are unfortunate: Linux does not include ZFS
as the result, Git should be compiled with GCC 4.3. The situation was somewhat different in these two cases: Sun's decision
created problem immediately, Git's developer's decision created problem few
years down the road - but it's not like they had no warning: indeed, the
warning is embedded in the very text of the license they've used!
Posted Aug 12, 2009 12:36 UTC (Wed)
by SEMW (guest, #52697)
[Link]
Being there and being apparent are very different things. The current problem is as a result of an interaction between the gcc runtime exception and the GPLv2 that, whilst it was in a trivial sense there all along, no-one had noticed until Kalle Niemitalo pointed it out very recently. (If I am mistaken and it was, in fact, known before, please say so; as I said in the other thread, the story does not give that impression).
You can study ZFC for quite a while without deducing Fermat's last theorem, even though it is a logical consequence of them. And the fact that the two licenses interact in this way might have been there all along, but it was apparently sufficiently non-obvious that, yes, the git developers could certainly be said to have had no warning.
Posted Jul 30, 2009 10:17 UTC (Thu)
by rsidd (subscriber, #2582)
[Link]
Posted Jul 30, 2009 19:07 UTC (Thu)
by DonDiego (guest, #24141)
[Link]
At least I could understand the license in *one* country with v2..
> "Propagate" and "convey" were chosen specifically because they have no
I wish it did explain the intended meaning. Have you understood the intended meaning and difference between "propagate" and "convey"? I still fail to clearly see a difference and the GPL FAQ obscures the point further.
> So I just read the licence. The licence *text* itself is more complex,
This is a contradiction. A complex text, by its nature, lends itself more to different interpretations than a clear and simple one. How can you now be sure that your interpretation is the intended one? And who guarantees that a judge will not disagree?
But the main problem remains: The target audience seems to have shifted from laypersons to experts in reading legalese. This is very sad and counterproductive. I myself will not release code under v3 for the foreseeable future and will not suggest using v3 to anybody, maybe even recommend to stay away from it when asked for licensing advice. I bet I am far from the only person that thinks so and I do not see people around me rushing to adopt v3, on the contrary. This cannot have been what the authors of v3 had in mind.
I shudder when I think what v4 or v5 might look like...
Posted Jul 30, 2009 5:36 UTC (Thu)
by grahammm (guest, #773)
[Link] (1 responses)
Posted Aug 1, 2009 0:05 UTC (Sat)
by coriordan (guest, #7544)
[Link]
The combination of binary runtime library plus binary git (or any gplv2 application) can be distributed. And the recipient reads the licence of git and sees that she's entitled to a copy of the complete corresponding source code under the terms of the GPLv2... but she can't have the source code to the runtime library (which is part of git after compilation) under GPLv2 because the runtime library's licence is GPLv3, not GPLv2.
It's an interesting path alright, and I'm thinking about other types of clauses that could go into the runtime library exception along the same lines....
I want Minix's size but Linux's functionality....
What part of GPLv3 is bad?
I want Minix's size but Linux's functionality....
I want Minix's size but Linux's functionality....
That perfect GPLv2
That perfect GPLv2
Now the previously too-long GPLv2 has become "just right"...
"""
but which unnecessary sentences should be removed?
"""
That perfect GPLv2
That perfect GPLv2
That perfect GPLv2
> target of "make it shorter!"
GPL version 3 problems
how v3 is much much simpler
how v3 is much much simpler
Fatal oversight
Well that's a relief! Since figuring out what the GPLv3 really
means is so much easier, it must be simple to answer the license snag brought
up by this article?
Fatal oversight
Change the license on libgcc to GPLv2+ :)
Fatal oversight
Fatal oversight
Fatal oversight
Here we go again...
If the problem were truly that the GPLv2 uses imprecise
terminology then all the FSF has to do is release a GPL2.1 with language
bugfixes
even just an addendum describing language intent.
The most obvious thing the FSF can do is, gosh, simply let the
runtime library be usable anywhere.
Or, they could roll back to the 2008 license, probably with
*minor* changes: http://lwn.net/Articles/316835/
(like foom says). I'm sure they have other options too.
Here we go again...
This is not GPLv2 fault, sorry...
But the point is that it is written in such a way that the GPL
v2
-- a widely used and free license -- *does* prohibit it (if the runtime
library is distributed with the binary).
To plead that this is the GPL2's fault is trivially true, but
missing the point (in a similar way to Joerg Shilling's defending Sun's use
of the GPL-incompatible CDDL on the grounds that it's a completely free
license, and if the FSF thinks it's incompatible with the GPL, that's not
Sun's problem).
This is not GPLv2 fault, sorry...
how v3 is much much simpler
how v3 is much much simpler (after taking a hit from the crack pipe)
> meaning of "distribute" in every country.
> existing meanings with regard to software. This means that the licence can
> explain the intended meaning.
> but overall, knowing what the licence really means is much much easier.
I want Minix's size but Linux's functionality....
I want Minix's size but Linux's functionality....