chiark / gitweb /
New GPL-vs-LGPL copyright policy explanation file.
[adns.git] / GPL-vs-LGPL
1               GPL vs LGPL, in the context of adns
2               -----------------------------------
3
4 Several people have asked me to release adns under the GNU Lesser
5 General Public Licence (LGPL, formerly the Library GPL) instead of the
6 `stronger' GPL.  This file is intended to answer most of these
7 questions.  If you still have questions or comments, please mail me at
8 <adns-maint@chiark.greenend.org.uk>.
9
10 Typically there are two or three kinds of situation where people make
11 this request: the first is where someone is developing a proprietary
12 program and wishes to make use of adns but doesn't wish to make their
13 program free software.  The second case is where a free software
14 project is currently using an MIT-like licence and fear `GPL
15 infection'.  The third case, which often overlaps with the second, is
16 where another free software project currently using a GPL-incompatible
17 licence, wishes to use adns.
18
19
20 1. Proprietary applications of adns
21 -----------------------------------
22
23 So, let me get this straight.  You're writing a proprietary
24 program, by which I mean that you will not be distributing source code
25 and not allowing users to modify and share your software; most likely
26 you are doing this for your own (personal or corporate) financial
27 gain.
28
29 However, you want to take advantage of adns, software which I have
30 spent my time and effort on, and which I release as free software so
31 that everyone can improve, share and use it.
32
33 Don't you think that is a little hypocritical ?  I'm sorry, but I
34 don't want you to just take my nice convenient software, without
35 giving something back to the free software community or giving the
36 same rights to your users as I do to you.
37
38 If you really aren't the nasty kind of person I've described here, for
39 example if you have a good reason other than your own selfishness for
40 wanting to restrict distribution of your program, then perhaps you
41 should contact me to discuss it.
42
43
44 2. GPL-avoiding projects (MIT licence, et al)
45 ---------------------------------------------
46
47 Some free software projects prefer to avoid the GPL and other licences
48 which force the software always to be free.  Instead they use
49 something like the MIT X licence, which allows proprietary versions of
50 their software.  I have to say that I don't understand why they do
51 this, and think they are misguided, but that doesn't mean that they
52 don't have a perfect right to.
53
54 Some of these people think that merely writing to an interface
55 provided by GPL'd software will cause their program to become GPL'd
56 too, even if they don't distribute the GPL'd software.  I don't think
57 this is the case.  I'm perfectly happy for non-GPL'd software to refer
58 to adns in its source code or executables (eg, dynamic linking).
59 However, if you distribute adns yourself then whether a program which
60 uses it needs also to be GPL'd depends on the interpretation of the
61 `work as a whole' and `mere aggregation' parts of the GPL.
62
63 Whether you are distributing a `work as a whole' might depend on many
64 things, but they key one to me is what the appearance is to a user.
65 If the user knows that they are getting a collection of software
66 rather than a single product, then it's probably an aggregation which
67 works together.  So, you can distribute both your (i) non-GPLd program
68 source and/or binaries and (ii) adns source code or even binaries
69 (provided the adns source is available as per the GPL), eg from your
70 website, provided the user can tell that these are separate works and
71 can tell which parts are which.
72
73 But, if you package your program and adns together so that the user is
74 no longer aware of adns as a separate work, then I think you are
75 distributing a `work as a whole', and the whole work including adns
76 and your software which depends on it must be GPL'd.  This is of
77 course not a problem if your non-GPL licence is GPL-compatible (see
78 the next section): it just means that _when the whole lot is shipped
79 together as one work_ it is covered by the GPL.  People who wish to
80 make proprietary works based on just your code can do so, provided
81 they (or you) arrange for something to fill the hole left by the lack
82 of adns.
83
84
85 3. GPL-incompatible free software licences
86 ------------------------------------------
87
88 Regrettably, there are a number of free software licences (and
89 semi-free licences) in existence which are not compatible with the
90 GPL.  That is, they impose restrictions which are not present in the
91 GPL, and therefore distributing a whole work which contains such a
92 program and a GPL'd program is not possible: either the work would
93 have to be distributed under the GPL (violating the restrictions made
94 by the original author), or under the GPL-incompatible licence
95 (violating the GPL).
96
97 I may be prepared to make exceptions for such a licence.  Please
98 contact me at <adns-maint@chiark.greenend.org.uk> with the full text
99 of the GPL-incompatible licence.  However, I would prefer it if you
100 could use a GPL-compatible licence for your project instead.
101
102 There are a couple of common extra restrictions, and I make some
103 specific extensions to my licence for adns below.
104
105 3.1. BSD advertising clause and endorsement restriction
106
107 The most notable and common extra restriction found in free software
108 licences is the `obnoxious BSD advertising clause' (see Richard
109 Stallman's article on the subject, available from www.gnu.org) and the
110 endorsement restriction.
111
112 The problem with the advertising clause isn't that the sentence
113 required, referring the the Regents of the UC Berkeley, is awkward.
114 The problem is that if everyone contributing to a large project gets
115 such a mention the number of sentences required becomes very large;
116 however, it is unfair for some people to get credit and others not to.
117
118 I disapprove of these clause, but I recognise that it may be difficult
119 for some people to get them removed from particular programs.
120
121 So, I hereby make an extension to my licence for adns:
122
123  You may alternatively distribute adns under the GNU GPL version 2
124  with the following banner and either one or both of the following
125  additional restrictions, to be inserted at the end of section 1:
126
127   ADDITIONAL RESTRICTIONS:
128   (The permissions granted in this licence only apply if you comply
129   with the following restrictions:)
130
131   (a) All advertising materials mentioning features or use of the Program
132       (or a work based on the Program, GPL section 2) must display the
133       following acknowledgement for each author, copyright holder or
134       group of authors or copyright holders:
135
136        This product includes software developed by PERSON OR GROUP.
137
138       where PERSON OR GROUP is the name of the (group of) authors or
139       copyright holders, in the form in which they reasonably wish
140       themselves to be identified in such acknowledgements.  A
141       reasonable alternative form of words must be used if requested
142       by the person or group.
143
144       The desires of the persons or groups are to be inferred from
145       statements made about the desired form of such acknowledgements
146       by these persons or groups in their own copyright notices and
147       licences.  Such statements are to be considered part of the
148       appropriate copyright notice that the GPL requires you to
149       publish (section 1).
150
151       This credit must be given for every author and copyright holder
152       of the Program or the work based on the Program, in so far as it
153       reasonably possible to determine who the author(s) and copyright
154       holder(s) are.
155
156   (b) None of the names of the copyright holders and authors of the
157       Program or works based on the Program may be used to endorse or
158       promote the Program or works based on the Program without
159       specific prior written permission.
160
161       Any rephrasing of this restriction provided by authors or
162       copyright holders in their copyright notices is to be retained
163       as part of the appropriate copyright notice that the GPL
164       requires you to publish (section 1).
165
166
167 --- Ian Jackson 9.5.1999
168
169 Local variables:
170 mode: text
171 End: