Re: GPL v3 Draft
I'm commenting here, rather than to the FSF; I'd prefer to get a look over
my impressions here first.
On Mon, Jan 16, 2006 at 09:07:42AM -0800, Don Armstrong wrote:
> 3. Digital Restrictions Management.
> As a free software license, this License intrinsically disfavors
> technical attempts to restrict users' freedom to copy, modify, and share
> copyrighted works. Each of its provisions shall be interpreted in light of
> this specific declaration of the licensor's intent.
> Regardless of any
> other provision of this License, no permission is given to distribute
> covered works that illegally invade users' privacy
This is a butterknife being boxed with a "you may not sharpen this knife and
stab people with it" notice: that's already illegal, and it just serves to
complicate the license.
(That analogy suggests "valid uses prohibited by poor but unenforced laws",
too, but I can't think of any actual examples. Say, overbroad anti-spyware
laws redefine "privacy" broadly and prohibit normal, acceptable things; I
find myself in violation, and move away from the law--but due to this clause,
I've already lost my license to this software, and moving out of the
jurisdiction of the law doesn't get me my license back.)
> No covered work constitutes part of an effective technological protection
> measure: that is to say, distribution of a covered work as part of a system
> to generate or access certain data constitutes general permission at least
> for development, distribution and use, under this License, of other
> software capable of accessing the same data.
It sounds like this means "if your GPL application accesses data, you grant
a GPL license to every other application that accesses the data". It
doesn't, but I can only barely understand the actual meaning after reading
the rationale. Hopefully this can be clarified.
> 5. Distributing Modified Source Versions.
> Having modified a copy of the Program under the conditions of section
> 2, thus forming a work based on the Program, you may copy and distribute
> such modifications or work in the form of source code under the terms of
> Section 4 above, provided that you also meet all of these conditions:
> a) The modified work must carry prominent notices stating that you
> changed the work and the date of any change.
This is so widely violated that it's clear that it's not working; it'd
be nice if they would acknowledge this and remove it.
Failing that, at least make it clear that you don't have to identify
yourself here, or that an alias is acceptable.
> If the interface presents a
> list of user commands or options, such as a menu, a command to
> display this information must be prominent in the list.
This text seems to assume that no program will ever have more than one
menu, unless it means to require that the licensing information be
available from *every* menu.
> 6. Non-Source Distribution.
> a) Distribute the Object Code in a physical product (including a
> physical distribution medium), accompanied by the Corresponding Source
> distributed on a durable physical medium customarily used for software
> interchange; or,
"Durable"? That seems to prohibit CDs and DVDs, which certainly aren't
durable. Do I have to include DATs now?
> d) Distribute the Object Code by offering access to copy it
> from a designated place, and offer equivalent access to copy
> the Corresponding Source in the same way through the same place.
> You need not require recipients to copy the Corresponding Source
> along with the Object Code.
> [If the place to copy the Object Code is a network server, the
> Corresponding Source may be on a different server that supports
> equivalent copying facilities, provided you have explicitly
> arranged with the operator of that server to keep the
> Corresponding Source available for as long as needed to satisfy
> these requirements, and provided you maintain clear directions
> next to the Object Code saying where to find the Corresponding
This seems to imply that I can't put the object code on an http server,
and the source code on an ftp server, because their copying facilities
are not "equivalent".
I may want to use a special-purpose download server for object files,
for automatic downloading and installation of binaries; that server
may have carefully limited facilities, as fewer unused features in a
server means less to break, which means less downtime. In that case,
I'm likely to want to put the source on a more traditional http server.
This clause seems to unintentionally prohibit this class of
> Distribution of the Corresponding Source in accord with this section
> must be in a format that is publicly documented, unencumbered by
> patents, and must require no special password or key for unpacking,
> reading or copying.
I read this as "distribution must be 1: in a format that is publicly
documented, 2; unencumbered by patents, and 3: must require no special
password". They may mean "distribution must be in a format that is
1: publicly documented ...". I'm also assuming they mean "file format",
and not "distribution format". It may be reasonable to say "don't put
a password on the ZIP"; it's not reasonable to say "don't put a password
on the FTP server" (as long as the object files use the same password).
> Aside from additional permissions, your terms may add limited kinds of
> additional requirements on your added parts, as follows:
> d) They may require that the work contain functioning facilities that
> allow users to immediately obtain copies of its Complete Corresponding
> Source Code.
Such terms make code reuse with non-networked applications extremely
inconvenient, and prohibit reuse in embedded environments (eg. a device
with 32k of memory, no network facilities, and limited or no visual output).
I'd find it disturbing for the FSF to even call such terms free; they're
going much further, and condoning it by making it GPL-compatible.
(This is, by a wide margin, my biggest objection.)
> [13. Geographical Limitations.
> If the distribution and/or use of the Program is restricted in certain
> countries either by patents or by copyrighted interfaces, the original
> copyright holder who places the Program under this License may add an
> explicit geographical distribution limitation excluding those countries,
> so that distribution is permitted only in or among countries not thus
> excluded. In such case, this License incorporates the limitation as if
> written in the body of this License.]
Wow. This was in the GPLv2, and I never gave it much thought. Fortunately,
this is a "removed" section. While I'm thinking about it:
This allows blacklisting countries based soley on the existance of a patent
against it, even if that patent is untested and likely to fail in court.
It doesn't give any means to remove such blacklisting if the patent fails,
is publically licensed, or the offending subsection of the code is rewritten
to be non-offending. Due to the quantity of patents, it's essentially a
blank check to discriminate against users in regions with software patents.
I'm surprised that no vendor, finding itself "forced to release its code",
didn't use this provision to prevent its own code from being used in, say,