On Wed, 28 Mar 2007 16:07:34 -0400 Joe Smith wrote: [...] > For the record: IANAL, IANADD.
My comments on the new draft follows. I will send them to the FSF public consultation system RSN (since they are accepting comments for only 60 days, starting on 28 March). IANAL and IANADD either. [...] > --------------------------------------------------------------------- > ---------------------- > GNU GENERAL PUBLIC LICENSE > Discussion Draft 3 of Version 3, 28 March 2007 > > THIS IS A DRAFT, NOT A PUBLISHED VERSION OF THE GNU GENERAL PUBLIC > LICENSE. [...] > TERMS AND CONDITIONS > > 0. Definitions. [...] > "The Program" refers to any copyrightable work licensed under this > License. :::: Style: Program or Work? Since the GPL is designed to be applicable to any work of authorship (not only computer programs), I would suggest using a more neutral term than "the Program". Something like "the Work" would avoid misleading many many people into thinking that the GPL can only be applied to computer programs. [...] > To "modify" a work means to copy from or adapt all or part of the > work in a fashion requiring copyright permission, other than the > making of a verbatim copy. The resulting work is called a "modified > version" of the earlier work or a work "based on" the earlier work. A > "covered work" means either the unmodified Program or a work based on > the Program. :::: Good: clear definitions The definitions of "modify", "modified version", work "based on" another work, and "covered work" are slightly changed with respect to GPLv3draft2, but they are still clear. It's good that the definition of "modified version" exploits applicable copyright law without trying to rewrite it. This ensures that the license does not place restrictions on activities that do not require permission under applicable copyright law. [...] > To "propagate" a work means to do (or cause others to do) anything > with it that requires permission under applicable copyright law, > except executing it on a computer or making modifications that you do > not share. Propagation includes copying, distribution (with or > without modification), making available to the public, and in some > countries other activities as well. To "convey" a work means any kind > of propagation that enables other parties to make or receive copies, > excluding sublicensing. Mere interaction with a user through a > computer network, with no transfer of a copy, is not conveying. :::: Good: clear definitions The definitions of "propagate" and "convey" seem fairly clear. Again, their linking to copyright law ensures that the license does not place restrictions on activities that do not require permission under applicable copyright law. [...] > 1. Source Code. :::: Good: clear and appropriate This section seems OK to me. > > The "source code" for a work means the preferred form of the work > for making modifications to it. "Object code" means any non-source > form of a work. :::: Good: please keep these definitions I like the definitions of "source code" and "Object code" as they are. Good to see that they were kept unaltered. [...] > 2. Basic Permissions. > > All rights granted under this License are granted for the term of > copyright on the Program, and are irrevocable provided the stated > conditions are met. This License explicitly affirms your unlimited > permission to run the unmodified Program. The output from running a > covered work is covered by this License only if the output, given its > content, constitutes a covered work. This License acknowledges your > rights of fair use or other equivalent, as provided by copyright law. :::: Good: mentioning of fair use is an improvement Good to see that fair use and similar rights are explicitly mentioned. This is an improvement over GPLv2. > > Propagation of covered works that you do not convey, and making > modified versions of the Program that you do not convey, are permitted > without conditions, so long as your license otherwise remains in > force. Conveying is permitted under the conditions stated below. > Sublicensing is not allowed; section 10 makes it unnecessary. :::: Good: overreaching patent retaliation clause has been dropped I'm glad that the patent retaliation clause has been dropped: it was overreaching IMHO. > > 3. No Denying Users' Rights through Technical Measures. > > No covered work shall be deemed part of an effective technological > measure under any applicable law fulfilling obligations under article > 11 of the WIPO copyright treaty adopted on 20 December 1996, or > similar laws prohibiting or restricting circumvention of such > measures. :::: Problematic: possibly untrue This clause is improved (being now denationalized), but still problematic. It could be seen as an untrue statement in some cases. How can the licensor say that the covered work won't be judged as "part of an effective technological measure" under a given law? That is for the courts to decide. In some scenarios, GnuPG may actually be considered "part of an effective technological measure" and could be deemed so by a judge... > > When you convey a covered work, you waive any legal power to forbid > circumvention of technical measures to the extent such circumvention > is effected by exercising rights under this License with respect to > the covered work, :::: Bad: possibly overreaching This clause is clearer than in the previous draft, but still troublesome, as it seems to be overreaching. For instance, it could be interpreted as covering legal powers to forbid "computer crimes" such as unauthorized intrusion into computer systems. E.g.: suppose that the covered work is a vulnerability scanner, or password cracker, or anyway a tool that could be used (among other things) to break into other people's computers. Using that tool in this manner is exercising a right "under this License" and is a circumvention of appropriate technical measures set to protect a computer system or network from unauthorized access. Gaining unauthorized access to a protected computer system or network is forbidden by law in several jurisdictions; do I waive such a legal protection, when I convey the covered work? I suggest dropping the waiver entirely, thus leaving the following disclaimer only. ===> waiving legal rights can be seen as a fee: this clause could fail DFSG#1 > and you disclaim any intention to limit operation or > modification of the work as a means of enforcing, against the work's > users, your or third parties' legal rights to forbid circumvention of > technical measures. > > 4.[1] Conveying Verbatim Copies. :::: Good: substantially unchanged This section seems to be reworded for clarity, but not much changed in its meaning with respect to previous drafts. It's not that dissimilar to the corresponding section in GPLv2 (apart from the references to section 7) and looks OK to me. [...] > 5.[2] Conveying Modified Source Versions. > > You may convey a work based on the Program, or the modifications to > produce it from the Program, in the form of source code under the > terms of section 4 above, provided that you also meet all of these > conditions: > > a) The work must carry prominent notices stating that you > modified it, and giving a relevant date. :::: Good: improved wording This subsection is clarified as to which date(s) must be given. This is an improvement, since many people were uncertain on how the corresponding language in GPLv2 should be interpreted. [...] > c) You must license the entire work, as a whole, under > this License to anyone who comes into possession of a copy. This > License will therefore apply, unmodified except as permitted by > section 7, to the whole of the work, and all its parts, regardless > of how they are packaged. This License gives no permission to > license the work in any other way, but it does not invalidate such > permission if you have separately received it. :::: Good: disjunctive licensing is explicitly acknowledged I think that explicitly acknowledging the possibility of dual licensing (GPLv3 or OTHERLICENSE at the recipient option) is good, as it clarifies that the GPL does not try to take away permissions that are separately granted. This is an improvement over GPLv2: good to see that it was kept in GPLv3draft3 too. Section 5 seems OK, so far (apart from the reference to Section 7, more on this in a later comment...) > > d) If the work has interactive user interfaces, each must > include a convenient feature that displays an appropriate > copyright notice, and tells the user that there is no warranty for > the work (unless you provide a warranty), that licensees may > convey the work under this License, and how to view a copy of this > License. Specifically, 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; otherwise, the > work must display this information at startup. However, if the > Program has interactive interfaces that do not comply with this > subsection, your work need not make them comply. :::: Bad: too restrictive Clause 5d in GPLv3draft3 is basically unchanged with respect to previous drafts. It's worse than the corresponding clause 2c in GPLv2... :-( It's an inconvenience and border-line with respect to freeness. Actually this clause restricts how I can modify what an interactive program does when run. It mandates a feature that I *must* implement in *any* interactive interface of my modified work. It's very close to place an unacceptable restriction on modification. What is more awkward is that it seems that when a non-interactive work is modified so that it becomes an interactive work, the modifier is *compelled* to implement these features in *any* newly created interactive interface... I would like to see clause 5d dropped entirely. ===> very close to fail DFSG#3 [...] > 6.[3] Conveying Non-Source Forms. [...] > A separable portion of the object code, whose source code is excluded > from the Corresponding Source as a System Library, need not be > included in conveying the object code work. :::: Good: basically unchanged so far Section 6 seems so far to be basically similar to section 3 of GPLv2, just more explicit and clear in some respects and a little more permissive in other ones. Good. > > A "User Product" is either (1) a "consumer product", which means any > tangible personal property which is normally used for personal, > family, or household purposes, or (2) anything designed or sold for > incorporation into a dwelling. [In cases of doubt concerning whether > an item is a "consumer product", the interpretation of the > Magnuson-Moss Warranty Act, 15 U.S.C. 2301 et seq., shall provide the > basis for interpretation, regardless of the choice of law > determination for this License as a whole.] :::: Problematic: very U.S.-centric This part between squared brackets looks too U.S.-centric and awkward to see in a license text. I feel uneasy in reading such specific references in a license... I suggest dropping this sentence entirely. > > "Installation Information" for a User Product means any methods, > procedures, authorization keys, or other information required > to install and execute modified versions of a covered work in that > User Product from a modified version of its Corresponding Source. The > information must suffice to ensure that the continued functioning of > the modified object code is in no case prevented or interfered with > solely because modification has been made. > > If you convey an object code work under this section in, or with, or > specifically for use in, a User Product, and the conveying occurs as > part of a transaction in which the right of possession and use of the > User Product is transferred to the recipient in perpetuity or for a > fixed term (regardless of how the transaction is characterized), the > Corresponding Source conveyed under this section must be accompanied > by the Installation Information. But this requirement does not apply > if neither you nor any third party retains the ability to install > modified object code on the User Product (for example, the work has > been installed in ROM). > > The requirement to provide Installation Information does not include a > requirement to continue to provide support service, warranty, or > updates for a work that has been modified or installed by the > recipient. Network access may be denied when the modification itself > materially and adversely affects the operation of the network or > violates the rules and protocols for communication across the network. :::: Good: clarified requirement to accompany source with installation keys This requirement to provide Installation Information is a reworded and clarified version of the requirement to include installation keys in the Corresponding Source (as the draft rationale explains). The current language seems clearer and better. Good. [...] > 7. Additional Terms. :::: Good: improved section This section is improved with respect to the previous draft, especially because two additional requirements can no longer be added to a covered work (forced distribution of source to network users, and strong patent retaliation clause). Unfortunately more improvements are needed for this section to be considered OK. Further details in later comments. [...] > Notwithstanding any other provision of this License, you may > supplement the terms of this License with terms effective under, or > drafted for compatibility with, local law: :::: Kills copyleft: this is not in the spirit of GPLv2 I strongly *dislike* the entire concept of allowing a limited set of additional requirements to be added. That is *against* the spirit of the GPLv2 (where the FSF promised that new versions would "be similar in spirit to the present version", see GPLv2, section 9.) and greatly weakens the copyleft. Yes, it enhances license compatibility (as the rationale of GPLv3draft1 explains), but the GPL never was a champion of compatibility. If the goal were maximizing license compatibility, the best choice would be adopting the 2-clause BSD license (http://www.gnu.org/licenses/info/BSD_2Clause.html) as the new GPL... It would be compatible with pretty everything and clearly free, even though non-copyleft. I'm *not* against non-copyleft free licenses, but they definitely aren't "similar in spirit to" GPLv2... I would be happy to see all these "permissions to add restrictions" entirely dropped from Section 7. ===> not a Freeness issue, but a great loss, since, if this mechanism is kept in the final GPLv3 text, GPL-compatibility will no longer be a DFSG-compliance guarantee... :-( [...] > b. requiring preservation of specified reasonable legal notices or > author attributions in source or object code forms of material added > by you to a covered work; or :::: Kills copyleft: are these the cousins of GFDL's Invariant Sections? What exactly is a "reasonable legal notice"? What exactly is an "author attribution"? It seems that these terms are not defined anywhere in the license. I'm concerned that they could be interpreted in a broad sense and allow people to take a GPLv3'd work and add some sort of invariant long text that nobody will ever be able to remove or modify... This option could make a work include unmodifiable & unremovable parts and thus fail to fully grant the freedom to modify. I would rather avoid introducing such options in the GPLv3! ===> this option could make the work fail DFSG#3, when exercised [...] > All other non-permissive additional terms are considered "further > restrictions" within the meaning of section 10. If the Program as you > received it, or any part of it, purports to be governed by this > License, supplemented by a term that is a further restriction, you may > remove that term. :::: Good: further restrictions are void I'm glad to see that this is explicitly stated: every attempt to license a work under the terms of GPLv3 with further restrictions is equivalent to licensing under the plain GPLv3. This is good, since there are unfortunately many people that license works in inconsistent manners (such as GPLv2 + additional restrictions); creating a rule that resolves this kind of inconsistency for the better is a good thing to do. [...] > 8.[4] Termination. :::: Improvable: fails to mention fair use Section 8 seems to be more or less similar to section 4 of GPLv2, except that it's more forgiving to first-time violators. This is good. However, as in GPLv2, it fails to mention fair use and similar rights and possible separate licenses (as in disjunctive dual-licensing...). It should be improved to acknowledge these possibilities. [...] > 9.[5] Acceptance Not Required for Having Copies. :::: Improvable: again fails to mention fair use Another section that fails to mention fair use and similar rights and possible separate licenses. Section 9 should be improved by acknowledging these possibilities. [...] > 10.[6] Automatic Licensing of Downstream Recipients. [...] > You may not impose any further restrictions on the exercise of the > rights granted or affirmed under this License. For example, you may > not impose a license fee, royalty, or other charge for exercise of > rights granted under this License, and you may not initiate litigation > (including a cross-claim or counterclaim in a lawsuit) alleging that > any patent claim is infringed by making, using, selling, offering for > sale, or importing the Program (or the contribution of any > contributor). :::: Good: patent litigation prohibition doesn't seem to be overreaching This clause forbids patent litigation in a manner that seems to be narrow enough to be free: it only forbids patent suits related to the Program and only concerns people who need the License to convey the covered work. Looks OK. > > 11. Patents. [...] > If you convey a covered work, knowingly relying on a patent license, > and the Corresponding Source of the work is not available for anyone > to copy, free of charge and under the terms of this License, through a > publicly available network server or other readily accessible means, > then you must either (1) cause the Corresponding Source to be so > available, :::: Bad: possibly not enough as a protection against patents I don't quite understand how (1) can be seen as a specific form of shielding downstream recipients. If I am a downstream recipient who does not have a patent license, what protection (against patent infringement lawsuits) would I get from the existence of a network server which makes source available to the public? I'm puzzled. ===> this clause could be not enough to protect recipients from patent lawsuits, and thus make the work fail several DFSG, when there are actively enforced patents infringed by the work [...] > If, pursuant to or in connection with a single transaction or > arrangement, you convey, or propagate by procuring conveyance of, a > covered work, and grant a patent license providing freedom to use, > propagate, modify or convey a specific copy of the covered work to any > of the parties receiving the covered work, then the patent license you > grant is automatically extended to all recipients of the covered work > and works based on it. :::: Good: this is a no-discrimination clause This clause seems to be intended to prevent the negative consequences of Microsoft-Novell-like deals. It seems to be well drafted, since it's based on a no discrimination principle: you cannot grant a patent license to some recipients only; if you grant a patent license to someone, you automatically extend it to every other recipient. Good. > > You may not convey a covered work if you are a party to an > arrangement with a third party that is in the business of distributing > software, under which you make payment to the third party based on the > extent of your activity of conveying the work, and under which the > third party grants, to any of the parties who would receive the > covered work from you, a patent license (a) in connection with copies > of the covered work conveyed by you, and/or copies made from those, or > (b) primarily for and in connection with specific products or > compilations that contain the covered work, which license does not > cover, prohibits the exercise of, or is conditioned on the > non-exercise of any of the rights that are specifically granted to > recipients of the covered work under this License :::: Good: this is a no-further-restriction-through-patents clause This clause seems to be based on the general principle that no further restrictions can be added beyond the terms of this License. In the present case, it is stated that one cannot add further restrictions through restrictive patent licenses. Looks OK. > [, unless you entered > into that arrangement, or that patent license was granted, prior to > March 28, 2007]. :::: Bad: the date is arbitrary Why this date? What's special about it? Is it just the date of publication of the third draft? Was it chosen in order to avoid placing retroactive restrictions, by chance? If this is the motivation, I don't think this date limit is needed: since the GNU GPLv3 is not yet released, no work has been licensed under its terms yet, and hence no provision can be retroactive... The draft rationale explains that this date limit is intended to avoid forcing companies to face problems due to past agreements that cannot be changed anymore. I'm not convinced that this would be unfair: agreements like those are bad things and hence making them incompatible with conveying GPLv3'd works does not seem to be unfair. [...] > 12.[7] No Surrender of Others' Freedom. :::: Good: basically unchanged This section seems substantially the same as section 7 of GPLv2 (and of section 12 of previous drafts), apart from minor details. I think it's OK. [...] > 13. Use with the Affero General Public License. :::: Kills copyleft: compatibility with a yet unknown license This section introduces a form of compatibility with a license that is yet unreleased and thus possibly non-free: the Affero General Public License, version 2. The AfferoGPL v1 is, in my opinion, a non-free license, due to its clause 2(d). I won't restate all the reasons for my conclusions (more details in http://gplv3.fsf.org/comments/rt/readsay.html?filename=gplv3-draft-3&id=1663). As a consequence, I have few hopes that the forthcoming version 2 of the AfferoGPL will be a free license. Being compatible with an unknown (and thus possibly non-free) license destroys the copyleft mechanism of the GPLv3. The draft rationale states that most other free software licenses also feature such form of compatibility with the AfferoGPL: this is true for non-copyleft licenses, though! When I choose a long and complicated copyleft license such as the GNU GPL, I want a copyleft mechanism that actually works; or otherwise I can choose short and simple non-copyleft licenses, such as the Expat or the 2-clause BSD ones... I strongly recommend dropping section 13 entirely. ===> this option allows linking with works that could fail the DFSG, unless the AfferoGPL v2 turns out to meet the DFSG (which I doubt) [...] > 14.[9] Revised Versions of this License. :::: Good: it should be kept as it is This section is unchanged from previous drafts, and similar to section 9 of GPLv2 (apart from minor rephrasing and the addition of the final paragraph). It's good that licensors have the option of specifying a certain version of the GNU GPL "or any later version", but are not forced to do so. In other words, the upgradeability of the license is a permission that is granted outside the license text and that is a good feature to keep. [...] > 15.[11, 12] Disclaimer of Warranty and Limitation of Liability. :::: Good: slightly improved This section seems to be virtually the same as the joining of sections 11 and 12 of GPLv2, except for the last paragraph, which is a good explicit clarification. It looks fine to me. [...] > END OF TERMS AND CONDITIONS [...] -- http://frx.netsons.org/doc/nanodocs/etch_workstation_install.html Need to read a Debian etch installation walk-through? ..................................................... Francesco Poli . GnuPG key fpr == C979 F34B 27CE 5CD8 DC12 31B5 78F4 279B DD6D FCF4
pgpIT9CPNh1U2.pgp
Description: PGP signature