This blogpost summarises my major comments on the initial draft of version 3 of the GPL.
The excellent GPLv3 comment webtool covers a lot of the small wording changes and clarifications that I think are necessary. I look forward to seeing what account has been taken of these in the second draft.
I want to focus here on four changes I think would greatly improve the licence. In decreasing order of importance:
The “Web Application” Clause, and Modification Restrictions
Section 7 (“License Compatibility”) is the part of the GPLv3 which allows copyright owners to add certain additional conditions. Most of them are designed to make it unambiguously permitted to ship GPLed code with Apache-licensed or BSD-licensed code. However, section 7d) says:
d) They may require that the work contain functioning facilities that allow users to immediately obtain copies of its Complete Corresponding Source Code.
Many uses of this clause, as written, would constitute a restriction on modification, and so make the licensed work no longer free software.
This clause was added for upward compatibility with the Affero General Public Licence, a modified GPL with a poorly-drafted clause which restricts modification and requires immediate HTTP download of source. I don’t think it’s possible to write this clause so that all possible 7d) additional restrictions are free, but I think it’s possible to word it in order to make it much more likely that they are. My current suggestion is as follows:
d) They may require that if You propagate a covered work in a way that causes it to have users other than You, You must allow those users to obtain copies of the Complete Corresponding Source Code.
This way, it’s an extension of your distribution obligations and not a restriction on the functioning of the program. So, I could say “fill in my web form and I’ll mail you a copy of the source code”, and that would be OK. Or I could stick a notice on my web kiosk saying “call this number to request a source code CD.” My suggested clause specifies results, not methods.
It’s probably backwardly-compatible with the Affero GPL; if not, you could add “They may, but are advised not to, specify the mechanism by which the CCSC must be obtained.”, and organisations like Debian could simply say “if people do that, it’s not free software”.
“Access To Copy” and CDs
If you distribute GPLv3’d binaries on a CD, you also have to hand over a copy of the source (on the same or another CD; section 6a) or provide a 3-year valid written offer (section 6b).
However, if you offer it for download (section 6d), you merely have to make the source available; you don’t have to force the user to download it.
I think we should apply the second principle to the first case. It should be enough to offer the source code when distributing CDs; we should not force users to take it.
Say I’ve put together a GPLv3-licensed Operating System. The OS fits on one CD but the source, being larger than binaries, requires another three. I am giving away or selling CDs at a computer fair. Should I have to give four CDs to everyone? Or should a “Here’s the binaries; do you want the source as well?” not be good enough? It would certainly save me money, time and hassle.
Other Comments
Point 3 is the removal of the clause “no permission is given to distribute covered works that illegally invade users’ privacy” from section 3, which a lot of people have suggested is incompatible with software freedom and the FSF’s own stated position; I suspect this will happen.
Point 4 is that the modifications to section 5c) have made it very unclear, and it needs cleaning up to make it obvious that it’s as irrelevant in general practice as it always has been :-) This has been taken on by one of the committees, so I think this will also happen.
The second draft is due in June.
“The OS fits on one CD but the source, being larger than binaries, requires another three”…
DVD. :) (Yes, I know, that misses the point – the same problem applies if you fill up a DVD with a program, although that’s pretty unlikely.)
I generally agree, especially about offering the source.
My main beef with GPL is that it’s viral, at all expenses… that being the prime example. It’s counter productive, because it raises costs, and makes people look for other licenses.
> you also have to hand over a copy of the source (on the same or another CD;
> section 6a) or provide a 3-year valid written offer (section 6b).
> I am giving away or selling CDs at a computer fair.
> Should I have to give four CDs to everyone?
As I read it, the 3-year valid written offer does not have to be the same channel ?
Couldn’t you give 1 cd away, and have a 3-years valid written offer to download from your web site the source that would fit on the other 3 cds.
Sensible general idea, but it needs fleshing out. In particular, “allow … to obtain” isn’t strong enough, as it could be interpreted as simply fail to prohibit. How about:
You do have a point, and while you’re at it, why not replace all those bilingual leaflets in Wales with a choice of English and Welsh versions, thereby consuming little over half as many trees? :-)
Yes, I can still see a certain consistent logic in applying the same principle to physical distribution as to downloads. And yes, a great many of the source CDs will end up as coasters. But I can also see a point that with physical distribution it may be harder to go back for the sources if you later decide you want them. A proportion of today’s user base will add to tomorrow’s developer base, including some people who maybe wouldn’t think they’d ever have a use for the source CD until they get home and find that the software does nearly what they want, and well you know the rest…
Also I can quite envisage that without such a clause, the source code could get marginalised bit by bit, as an argument that not many are going to take them so why give them the space? becomes self-fullfilling.
Okay, sorry, it’s unfair for me to put your name in the above parody because you wouldn’t do that. But many would.
No, it’s explicit on this:
(emphasis mine)
Can you give me an example where “allow to obtain” is the same in all circumstances as “fail to prohibit”? If you can’t, then one cannot be interpreted as the other.
If I say “You have to allow me to do X”, then if I can’t do X because of some factor under your control, then you have not allowed me to do it!
What’s the difference between a computer fair stall that’s here today and gone tomorrow, and a webserver that’s here today and gone tomorrow?
GPL v3 Allows Source Download For Physical Distribution
RMS has picked up the second point of my GPL v3 draft 1 comments (yes, I’m sure a lot of other people made it too), and it will now be permissible to allow source download for binaries distributed on physical media. However, we’re now considering a maj…