From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 55382 invoked by alias); 22 Jan 2016 19:13:05 -0000 Mailing-List: contact cygwin-apps-help@cygwin.com; run by ezmlm Precedence: bulk Sender: cygwin-apps-owner@cygwin.com List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps@cygwin.com Received: (qmail 55366 invoked by uid 89); 22 Jan 2016 19:13:03 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.8 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=linkedin, ANYONE, possession, warren X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Fri, 22 Jan 2016 19:13:01 +0000 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (Postfix) with ESMTPS id 883A121A6 for ; Fri, 22 Jan 2016 19:13:00 +0000 (UTC) Received: from [10.3.113.211] (ovpn-113-211.phx2.redhat.com [10.3.113.211]) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u0MJCxUE026717 for ; Fri, 22 Jan 2016 14:13:00 -0500 Subject: Re: Changing Setup's license to GPLv3+ To: cygwin-apps@cygwin.com References: <20160121104928.GA30823@calimero.vinschen.de> <20160122165417.GA23147@calimero.vinschen.de> From: Eric Blake Openpgp: url=http://people.redhat.com/eblake/eblake.gpg X-Enigmail-Draft-Status: N1110 Message-ID: <56A27F3A.2010909@redhat.com> Date: Fri, 22 Jan 2016 19:13:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="j75aAlKfrFrROMmjxsgOxTtI8LGCcVQBm" X-IsSubscribed: yes X-SW-Source: 2016-01/txt/msg00034.txt.bz2 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --j75aAlKfrFrROMmjxsgOxTtI8LGCcVQBm Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Content-length: 4910 On 01/22/2016 11:57 AM, Warren Young wrote: > On Jan 22, 2016, at 9:54 AM, Corinna Vinschen = wrote: >> >> On Jan 21 15:55, Warren Young wrote: >>> On Jan 21, 2016, at 3:49 AM, Corinna Vinschen wrote: >>>> >>>> does anything speak against switching Setup's license to GPLv3+? >>>> If nobody complains, I'll bump to v3+ in a week or so. >>> >>> Can you actually do that, legally? I thought the copyright >>> assignments only applied to the DLL, not to setup.exe, so all >>> setup.exe contributors retained their copyright. >> >> I'm not trying to do that single-handedly and without reason. I'm >> asking here to reach out to the current active developers. A switch >> from GPLv2+ to GPLv3+ works without having to reach out to *all* >> copyright holder. >=20 > I don=E2=80=99t think I agree with that. Why not? GPLv2+ lets ANYONE with possession of a copy of the source code re-release THEIR copy under GPLv3+. Yes, such a relicensing would mean that if YOU were one of the original contributors, and strongly want your future contributions to remain GPLv2+, then you would no longer be able to contribute. But your existing contributions are still GPLv2+ (anyone can go to the point in time before the relicensing to grab a copy of your code still under GPLv2+). And the fact that the cygwin community (and current active contributors in particular) is in possession of a copy of your original work, and chooses to relicense that copy to GPLv3+, is not in violation of your original license. >=20 > Let=E2=80=99s say I write a standalone program and license it under GPLv2= + and give you a copy. You can=E2=80=99t then relicense it under GPLv3 or = GPLv3+ just because I said =E2=80=9Cor later=E2=80=9D in the license. Yes, I can. You gave me the permission to do so, by stating "or later". > *I* can relicense it, but only because I hold the original copyright. Yes, you can. If it were GPLv2-only, then ONLY you can relicense to GPLv3 or GPLv3+. But it's not GPLv2-only. >=20 > All =E2=80=9Cor later=E2=80=9D gives you the right to do is treat the cod= e *as if* I had originally licensed it as v3, and then only if you want to.= This lets you link v2+ code to v3. (But not v2-only code to v3! More be= low.) The combined work is necessarily v3 if I invoke the "or later" clause by linking your v2+ work with my v3 work. But you are correct that your v2-only work cannot be linked to my v3 work. >=20 > I think you=E2=80=99d still have to get permission from all people who st= ill have code in the current setup.exe sources. Or rather, if a relicensing requires explicit permission, it must be granted by the respective copyright holders (not necessarily the original contributor, if the original contributor assigned copyright to someone else). But I think the "or later" clause means that we don't need explicit permission. ... >>> What actual problem are you trying to solve with the change? >> >> A certain mail to the cygwin ML might require some action. The action >> is most thorougly (and quickly) done by pulling in some code from the >> Cygwin DLL. But Cygwin is under v3+, so it's incompatible with the >> current v2+ in Setup. That's why I'd like to bump version. I don't think I have any personal setup.exe contributions? Oh wait, perhaps I do (a long time ago, I helped fix use of bash for postinstall scripts). I'm personally okay with such a move. >=20 > As I understand it (and IANAL) the GPL v2/v3 incompatibility only occurs = with GPLv2-only licenses. See the chart here, from the FSF: >=20 > https://en.wikipedia.org/wiki/GNU_General_Public_License#Compatibility_= and_multi-licensing >=20 > I suspect it is not kosher to intermix v2+ and v3+ code in the same file,= but putting the v3+ code copied from the DLL into a separate file and call= ing out to it from the v2 code as if it were a library may be okay. That may be overly paranoid, but it is also easy enough to do. I'm also fine if we keep original code with v2+ labels, add new v3+ code in separate files, link it all together, and slap GPLv3+ on the final resulting executable. That is the only license with which we can ship the final product (due to v3 code being present, we have to exercise the "or later" clause of all linked-in v2 code), whether or not the individual source files still state v2+. >=20 > I could be wrong, in which case this is another argument against GPLv3. = The thing is viral even to past versions of itself. >=20 > FWIW, I=E2=80=99m no zealot. I=E2=80=99ve got GPL=E2=80=99d and LGPL=E2= =80=99d code out in the world. I=E2=80=99m just pointing out that restrict= ive licenses (=E2=80=9Cfree,=E2=80=9D hah!) bring along a bag of problems. = GPLv3 adds a bunch more restrictions. >=20 --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --j75aAlKfrFrROMmjxsgOxTtI8LGCcVQBm Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" Content-length: 604 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJWon86AAoJEKeha0olJ0NqAxkIAIOLWXpTwTGQIgh5SmWeqgzQ fhtnSZsKKOaHjBEghDJl3MhYIYPM0VyriPRhjtyOLXTHyI13rSIC7JasqQcV0494 08eM5BpRHc5UM6tH6/XHfuGzbQPeAr8ZI9QorRWD3A0H8ABwLrpjGV8w0EVC/L4a tJa16DcKsABLMjp6s8ir4smwg4xDGbyIjVzZikj+QwN9LoXp2y9BDfWpbLZOLDFJ ZWBMLPx2bVchITd8CpgltgsnJPeZct44zZDXptjRj3HdfvuGYlHLXnf41iJoGL9Z z8PuagyfGY/CliUUOdhUZWd0ZiFWZlEP+BSP8TL6GibriLgPhfaA365ncBmUpNY= =csaG -----END PGP SIGNATURE----- --j75aAlKfrFrROMmjxsgOxTtI8LGCcVQBm--