xref: /aosp_15_r20/external/toybox/www/0bsd-mckusick.txt (revision cf5a6c84e2b8763fc1a7db14496fd4742913b199)
1*cf5a6c84SAndroid Build Coastguard WorkerFrom - Wed Oct 17 13:27:51 2018
2*cf5a6c84SAndroid Build Coastguard WorkerX-Account-Key: account1
3*cf5a6c84SAndroid Build Coastguard WorkerX-UIDL: GmailId166832be205bc2bd
4*cf5a6c84SAndroid Build Coastguard WorkerX-Mozilla-Status: 1013
5*cf5a6c84SAndroid Build Coastguard WorkerX-Mozilla-Status2: 00000000
6*cf5a6c84SAndroid Build Coastguard WorkerX-Mozilla-Keys:
7*cf5a6c84SAndroid Build Coastguard WorkerDelivered-To: [email protected]
8*cf5a6c84SAndroid Build Coastguard WorkerReceived: by 2002:ab0:208c:0:0:0:0:0 with SMTP id r12csp943206uak;
9*cf5a6c84SAndroid Build Coastguard Worker        Wed, 17 Oct 2018 10:56:23 -0700 (PDT)
10*cf5a6c84SAndroid Build Coastguard WorkerX-Google-Smtp-Source: ACcGV61EHdCAKXqiC2g4VHKVIL9kgr4swWkJtL9r6jorwOeN6QWG09j9dd8vuBA2AqOxUrypnI88
11*cf5a6c84SAndroid Build Coastguard WorkerX-Received: by 2002:a17:902:16a4:: with SMTP id h33-v6mr26279849plh.3.1539798983448;
12*cf5a6c84SAndroid Build Coastguard Worker        Wed, 17 Oct 2018 10:56:23 -0700 (PDT)
13*cf5a6c84SAndroid Build Coastguard WorkerARC-Seal: i=1; a=rsa-sha256; t=1539798983; cv=none;
14*cf5a6c84SAndroid Build Coastguard Worker        d=google.com; s=arc-20160816;
15*cf5a6c84SAndroid Build Coastguard Worker        b=E/rO76Tc0QzdNYVqa3mOrkhv21WxRyex6QvEcEw2ejkTXu3csi2hFDckupiXuJyBYi
16*cf5a6c84SAndroid Build Coastguard Worker         zXk7prvMPwpP229CvoeWCl723QCCDRFU0b1S/1Z7gD9I3gk/t6Vnp0U1pJ/oFhUaExlJ
17*cf5a6c84SAndroid Build Coastguard Worker         l2/HwgzW0eVnMQsJHKlzP8zNqJhOUFD+xI35NiRa9J1tH0BomncWOz7lTXlvaTED2Vdz
18*cf5a6c84SAndroid Build Coastguard Worker         ZHoFuv89BUKCkKGbfm4/O0KTNECK6rK1Db87M/rGCpUQpCQacVr29Lf3AWLQikDR62dB
19*cf5a6c84SAndroid Build Coastguard Worker         vCqIMCD3mvRcPPOo8VIN/xyQQ9J4OcBZ/jZ/zfxcbZc11fng8GNHlp33hCxuyKHUwbeT
20*cf5a6c84SAndroid Build Coastguard Worker         nOmw==
21*cf5a6c84SAndroid Build Coastguard WorkerARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
22*cf5a6c84SAndroid Build Coastguard Worker        h=date:content-transfer-encoding:content-id:mime-version:comments
23*cf5a6c84SAndroid Build Coastguard Worker         :in-reply-to:reply-to:subject:to:from:message-id;
24*cf5a6c84SAndroid Build Coastguard Worker        bh=HpIGga40Wz3PXDOHP7PrAJqWHlOoA7xl5QvPk2tjJig=;
25*cf5a6c84SAndroid Build Coastguard Worker        b=JdV87WgS3oz/oa3fJSLdgU42ag+CKECK7OuT/DLvHfmwc2XtIMkx99zexEOi3S8DJp
26*cf5a6c84SAndroid Build Coastguard Worker         eaxLjf70GfCzWyq2fP11rUjemnTxW9R9efZEkZanvq36rbj7A+3/NmzvYPLwm8bihlke
27*cf5a6c84SAndroid Build Coastguard Worker         Gu8/FoVrE8ZANi252MKvejMVYsrYsyEJnO/vmiteVR5wD8mwHtYQnDXmwta6ZhH/ko+t
28*cf5a6c84SAndroid Build Coastguard Worker         uWXkHxOxs6y21CElD+40BvkIGGwFNd4FptjTA1T0rgw0PTUB/igdKvvwk1LotqbERJv5
29*cf5a6c84SAndroid Build Coastguard Worker         nhNHc47pJ4EU2o7G4yAwBBVETXQYYc8rl259VCKiSuGy0hEKGKweVieTEAe8V+NrZzd2
30*cf5a6c84SAndroid Build Coastguard Worker         UV7A==
31*cf5a6c84SAndroid Build Coastguard WorkerARC-Authentication-Results: i=1; mx.google.com;
32*cf5a6c84SAndroid Build Coastguard Worker       spf=pass (google.com: best guess record for domain of [email protected] designates 70.36.157.235 as permitted sender) smtp.mailfrom[email protected]
33*cf5a6c84SAndroid Build Coastguard WorkerReturn-Path: <[email protected]>
34*cf5a6c84SAndroid Build Coastguard WorkerReceived: from chez.mckusick.com (chez.mckusick.com. [70.36.157.235])
35*cf5a6c84SAndroid Build Coastguard Worker        by mx.google.com with ESMTPS id 129-v6si18906639pfd.201.2018.10.17.10.56.23
36*cf5a6c84SAndroid Build Coastguard Worker        for <[email protected]>
37*cf5a6c84SAndroid Build Coastguard Worker        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
38*cf5a6c84SAndroid Build Coastguard Worker        Wed, 17 Oct 2018 10:56:23 -0700 (PDT)
39*cf5a6c84SAndroid Build Coastguard WorkerReceived-SPF: pass (google.com: best guess record for domain of [email protected] designates 70.36.157.235 as permitted sender) client-ip=70.36.157.235;
40*cf5a6c84SAndroid Build Coastguard WorkerAuthentication-Results: mx.google.com;
41*cf5a6c84SAndroid Build Coastguard Worker       spf=pass (google.com: best guess record for domain of [email protected] designates 70.36.157.235 as permitted sender) smtp.mailfrom[email protected]
42*cf5a6c84SAndroid Build Coastguard WorkerReceived: from chez.mckusick.com (localhost [IPv6:::1])
43*cf5a6c84SAndroid Build Coastguard Worker	by chez.mckusick.com (8.15.2/8.15.2) with ESMTP id w9HI1egQ039009
44*cf5a6c84SAndroid Build Coastguard Worker	for <[email protected]>; Wed, 17 Oct 2018 11:01:40 -0700 (PDT)
45*cf5a6c84SAndroid Build Coastguard Worker	(envelope-from [email protected])
46*cf5a6c84SAndroid Build Coastguard WorkerMessage-Id: <[email protected]>
47*cf5a6c84SAndroid Build Coastguard WorkerFrom: Kirk McKusick <[email protected]>
48*cf5a6c84SAndroid Build Coastguard WorkerTo: Rob Landley <[email protected]>
49*cf5a6c84SAndroid Build Coastguard WorkerSubject: Re: License naming question.
50*cf5a6c84SAndroid Build Coastguard WorkerX-URL: http://WWW.McKusick.COM/
51*cf5a6c84SAndroid Build Coastguard WorkerReply-To: Kirk McKusick <[email protected]>
52*cf5a6c84SAndroid Build Coastguard WorkerIn-reply-to: <[email protected]>
53*cf5a6c84SAndroid Build Coastguard WorkerComments: In-reply-to Rob Landley <[email protected]>
54*cf5a6c84SAndroid Build Coastguard Worker   message dated "Tue, 16 Oct 2018 17:57:10 -0500."
55*cf5a6c84SAndroid Build Coastguard WorkerMIME-Version: 1.0
56*cf5a6c84SAndroid Build Coastguard WorkerContent-Type: text/plain; charset="us-ascii"
57*cf5a6c84SAndroid Build Coastguard WorkerContent-ID: <[email protected]>
58*cf5a6c84SAndroid Build Coastguard WorkerContent-Transfer-Encoding: quoted-printable
59*cf5a6c84SAndroid Build Coastguard WorkerDate: Wed, 17 Oct 2018 11:01:40 -0700
60*cf5a6c84SAndroid Build Coastguard WorkerX-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,MISSING_MID,
61*cf5a6c84SAndroid Build Coastguard Worker	UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.1
62*cf5a6c84SAndroid Build Coastguard WorkerX-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on chez.mckusick.com
63*cf5a6c84SAndroid Build Coastguard Worker
64*cf5a6c84SAndroid Build Coastguard Worker> To: [email protected]
65*cf5a6c84SAndroid Build Coastguard Worker> From: Rob Landley <[email protected]>
66*cf5a6c84SAndroid Build Coastguard Worker> Subject: License naming question.
67*cf5a6c84SAndroid Build Coastguard Worker> Date: Tue, 16 Oct 2018 17:57:10 -0500
68*cf5a6c84SAndroid Build Coastguard Worker> =
69*cf5a6c84SAndroid Build Coastguard Worker
70*cf5a6c84SAndroid Build Coastguard Worker> Hi,
71*cf5a6c84SAndroid Build Coastguard Worker> =
72*cf5a6c84SAndroid Build Coastguard Worker
73*cf5a6c84SAndroid Build Coastguard Worker> We spoke at Ohio Linuxfest back in 2013 (you attended my Rise and
74*cf5a6c84SAndroid Build Coastguard Worker> Fall of Copyleft talk, and then we talked in the hallway afterwards).
75*cf5a6c84SAndroid Build Coastguard Worker> =
76*cf5a6c84SAndroid Build Coastguard Worker
77*cf5a6c84SAndroid Build Coastguard Worker> I _think_ I told you about my plans to try to promote public domain
78*cf5a6c84SAndroid Build Coastguard Worker> equivalent licensing, a concept which has a wikipedia page now:
79*cf5a6c84SAndroid Build Coastguard Worker> =
80*cf5a6c84SAndroid Build Coastguard Worker
81*cf5a6c84SAndroid Build Coastguard Worker> https://en.wikipedia.org/wiki/Public_domain_equivalent_license
82*cf5a6c84SAndroid Build Coastguard Worker> =
83*cf5a6c84SAndroid Build Coastguard Worker
84*cf5a6c84SAndroid Build Coastguard Worker> For toybox what I did was take the OpenBSD suggested template license
85*cf5a6c84SAndroid Build Coastguard Worker> off their website and remove the half-sentence requiring people to
86*cf5a6c84SAndroid Build Coastguard Worker> copy that specific license text into derived works, and the resulting
87*cf5a6c84SAndroid Build Coastguard Worker> license made it past Google's lawyers! My toybox project has been
88*cf5a6c84SAndroid Build Coastguard Worker> providing the command line for android since Marshmallow
89*cf5a6c84SAndroid Build Coastguard Worker> (https://lwn.net/Articles/629362/) and we're making progress on
90*cf5a6c84SAndroid Build Coastguard Worker> getting android to build under android, the Bionic libc maintainer
91*cf5a6c84SAndroid Build Coastguard Worker> recently sent me a roadmap update about that:
92*cf5a6c84SAndroid Build Coastguard Worker> =
93*cf5a6c84SAndroid Build Coastguard Worker
94*cf5a6c84SAndroid Build Coastguard Worker> https://github.com/landley/toybox/commit/92b359f00057
95*cf5a6c84SAndroid Build Coastguard Worker> =
96*cf5a6c84SAndroid Build Coastguard Worker
97*cf5a6c84SAndroid Build Coastguard Worker> I called the resulting license "Zero Clause BSD" (by analogy with
98*cf5a6c84SAndroid Build Coastguard Worker> "Creative Commons Zero" and the existing 4 clause, 3 clause, and 2
99*cf5a6c84SAndroid Build Coastguard Worker> clause BSD licenses), and I even got SPDX approval for it in 2015
100*cf5a6c84SAndroid Build Coastguard Worker> (because Samsung asked me to shortly after Google merged it into
101*cf5a6c84SAndroid Build Coastguard Worker> AOSP, they'd been adding it aftermarket before then and having an
102*cf5a6c84SAndroid Build Coastguard Worker> SPDX identifier for the license simplified their internal bureaucracy).
103*cf5a6c84SAndroid Build Coastguard Worker> =
104*cf5a6c84SAndroid Build Coastguard Worker
105*cf5a6c84SAndroid Build Coastguard Worker> Then a couple months after SPDX approved it, somebody _else_ submitted
106*cf5a6c84SAndroid Build Coastguard Worker> the same license to Eric Raymond's old Open Source Initiative using
107*cf5a6c84SAndroid Build Coastguard Worker> "Free" in the name, as in Free Software Foundation. (A sadly loaded
108*cf5a6c84SAndroid Build Coastguard Worker> term these days.)
109*cf5a6c84SAndroid Build Coastguard Worker> =
110*cf5a6c84SAndroid Build Coastguard Worker
111*cf5a6c84SAndroid Build Coastguard Worker> I hadn't known they were still in the license approval business
112*cf5a6c84SAndroid Build Coastguard Worker> (they stopped approving new licenses in... 2012? And I remember
113*cf5a6c84SAndroid Build Coastguard Worker> them explicitly _rejecting_ CC0 saying public domain isn't a license,
114*cf5a6c84SAndroid Build Coastguard Worker> which their FAQ still talks about at
115*cf5a6c84SAndroid Build Coastguard Worker> https://opensource.org/faq#public-domain). But they approved the
116*cf5a6c84SAndroid Build Coastguard Worker> toybox license under a different name, then asked SPDX to retroactively
117*cf5a6c84SAndroid Build Coastguard Worker> change their name for it. (SPDX didn't, but OSI refused to admit
118*cf5a6c84SAndroid Build Coastguard Worker> it made a mistake, even though they said they had a policy to keep
119*cf5a6c84SAndroid Build Coastguard Worker> the names in sync. They hadn't done their homework.)
120*cf5a6c84SAndroid Build Coastguard Worker> =
121*cf5a6c84SAndroid Build Coastguard Worker
122*cf5a6c84SAndroid Build Coastguard Worker> Now every time the license is considered for a new use, the confusion
123*cf5a6c84SAndroid Build Coastguard Worker> OSI caused tends to derail things:
124*cf5a6c84SAndroid Build Coastguard Worker> =
125*cf5a6c84SAndroid Build Coastguard Worker
126*cf5a6c84SAndroid Build Coastguard Worker> https://github.com/david-a-wheeler/spdx-tutorial/issues/1
127*cf5a6c84SAndroid Build Coastguard Worker> =
128*cf5a6c84SAndroid Build Coastguard Worker
129*cf5a6c84SAndroid Build Coastguard Worker> When github itself was considering adding 0BSD to its license
130*cf5a6c84SAndroid Build Coastguard Worker> pulldown (which would have been a big win), I was asked what I
131*cf5a6c84SAndroid Build Coastguard Worker> thought of the naming confusion, and I wrote two long things on my
132*cf5a6c84SAndroid Build Coastguard Worker> rationale with lots of links to earlier stuff, which you can read
133*cf5a6c84SAndroid Build Coastguard Worker> here if you'd like:
134*cf5a6c84SAndroid Build Coastguard Worker> =
135*cf5a6c84SAndroid Build Coastguard Worker
136*cf5a6c84SAndroid Build Coastguard Worker> https://github.com/github/choosealicense.com/issues/464
137*cf5a6c84SAndroid Build Coastguard Worker> =
138*cf5a6c84SAndroid Build Coastguard Worker
139*cf5a6c84SAndroid Build Coastguard Worker> Anyway, I recently decided to ask OSI to admit they made a mistake
140*cf5a6c84SAndroid Build Coastguard Worker> and change their name for the license to match what SPDX did, and
141*cf5a6c84SAndroid Build Coastguard Worker> there was unanimous approval...
142*cf5a6c84SAndroid Build Coastguard Worker> =
143*cf5a6c84SAndroid Build Coastguard Worker
144*cf5a6c84SAndroid Build Coastguard Worker> http://lists.opensource.org/pipermail/license-review_lists.opensource.or=
145*cf5a6c84SAndroid Build Coastguard Workerg/2018-September/003519.html
146*cf5a6c84SAndroid Build Coastguard Worker> =
147*cf5a6c84SAndroid Build Coastguard Worker
148*cf5a6c84SAndroid Build Coastguard Worker> Until the same guy who was objecting last time showed up to continue
149*cf5a6c84SAndroid Build Coastguard Worker> to object.  He ignord the "who used it first" axis, and said he
150*cf5a6c84SAndroid Build Coastguard Worker> wanted to know which  name was used more today, and then when he
151*cf5a6c84SAndroid Build Coastguard Worker> lost that argument he said he objects to calling something a BSD
152*cf5a6c84SAndroid Build Coastguard Worker> license that isn't using Berkeley's original wording.
153*cf5a6c84SAndroid Build Coastguard Worker> =
154*cf5a6c84SAndroid Build Coastguard Worker
155*cf5a6c84SAndroid Build Coastguard Worker> My question is: do you object to the name "Zero Clause BSD" for a
156*cf5a6c84SAndroid Build Coastguard Worker> public domain equivalent license that's the OpenBSD suggested
157*cf5a6c84SAndroid Build Coastguard Worker> template license with half a sentence removed?
158*cf5a6c84SAndroid Build Coastguard Worker> =
159*cf5a6c84SAndroid Build Coastguard Worker
160*cf5a6c84SAndroid Build Coastguard Worker> If you want to stay out of this, I understand. I'm pretty sure I
161*cf5a6c84SAndroid Build Coastguard Worker> asked you this in 2013 before I started pushing the name, and
162*cf5a6c84SAndroid Build Coastguard Worker> wouldn't have if you'd objected then, but that was long ago and the
163*cf5a6c84SAndroid Build Coastguard Worker> water under the bridge is dead...
164*cf5a6c84SAndroid Build Coastguard Worker> =
165*cf5a6c84SAndroid Build Coastguard Worker
166*cf5a6c84SAndroid Build Coastguard Worker> Thanks for your time, sorry that took so long to explain. (And even
167*cf5a6c84SAndroid Build Coastguard Worker> longer if you read the big long github choosealicense thread. :)
168*cf5a6c84SAndroid Build Coastguard Worker> =
169*cf5a6c84SAndroid Build Coastguard Worker
170*cf5a6c84SAndroid Build Coastguard Worker> Rob
171*cf5a6c84SAndroid Build Coastguard Worker
172*cf5a6c84SAndroid Build Coastguard WorkerThanks for the through explanation of the situation.
173*cf5a6c84SAndroid Build Coastguard Worker
174*cf5a6c84SAndroid Build Coastguard WorkerI have no objections to the name "Zero Clause BSD" for your license.
175*cf5a6c84SAndroid Build Coastguard Worker
176*cf5a6c84SAndroid Build Coastguard WorkerI hope that you are successful in getting OSI to change their name
177*cf5a6c84SAndroid Build Coastguard Workerfor the license to match what SPDX did.
178*cf5a6c84SAndroid Build Coastguard Worker
179*cf5a6c84SAndroid Build Coastguard Worker	Kirk McKusick
180*cf5a6c84SAndroid Build Coastguard Worker
181