71ede3cd |
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: |