1 Check-Script: copyright-file
2 Author: Christian Schwarz <schwarz@debian.org>
6 Needs-Info: copyright-file
7 Info: This script checks if a binary package conforms to policy
8 with regard to copyright files.
10 Each binary package must either have a
11 /usr/share/doc/<foo>/copyright file or must have a symlink
12 /usr/share/doc/<foo> -> <bar>, where <bar> comes
13 from the same source package and pkg foo declares a "Depends" relation on
16 Tag: no-copyright-file
19 Info: Each binary package has to include a plain file
20 /usr/share/doc/<i>pkg</i>/copyright
24 Tag: copyright-refers-to-old-directory
27 Info: The common licenses (GPL, BSD, Artistic, etc) have been moved from
28 /usr/doc/copyright to /usr/share/common-licenses.
29 Copyright files should be updated.
32 Tag: copyright-file-compressed
35 Info: The copyright file /usr/share/doc/<i>pkg</i>/copyright must not be
39 Tag: copyright-file-is-symlink
42 Info: The copyright file /usr/share/doc/<i>pkg</i>/copyright must not be a
46 Tag: copyright-file-contains-full-gpl-license
49 Info: The copyright file /usr/share/doc/<i>pkg</i>/copyright contains the
50 complete text of the GPL v2 or v3. It should refer to the file
51 <tt>/usr/share/common-licenses/GPL-2</tt> or <tt>GPL-3</tt> instead.
54 Tag: copyright-file-contains-full-gfdl-license
57 Info: The copyright file /usr/share/doc/<i>pkg</i>/copyright contains the
58 complete text of the GFDL v1.2. It should refer to the file
59 <tt>/usr/share/common-licenses/GFDL-1.2</tt> instead.
62 Tag: copyright-file-contains-full-apache-2-license
65 Info: The copyright file /usr/share/doc/<i>pkg</i>/copyright contains the
66 complete text of the Apache 2.0 license. It should refer to the file
67 <tt>/usr/share/common-licenses/Apache-2.0</tt> instead.
70 Tag: usr-share-doc-symlink-without-dependency
73 Info: If the package installs a symbolic link /usr/share/doc/<i>pkg1</i> ->
74 <i>pkg2</i>, then <i>pkg1</i> has to depend on <i>pkg2</i> with the same
75 version as <i>pkg1</i>.
77 Note, that adding the "Depends:" entry just to fix this bug is not a good
78 solution. It's suggested that you include a real /usr/share/doc/<i>pkg1</i>
79 directory within <i>pkg1</i> and copy the copyright file into that directory.
82 Tag: usr-share-doc-symlink-to-foreign-package
85 Info: If the package installs a symbolic link /usr/share/doc/<i>pkg1</i> ->
86 <i>pkg2</i>, then <i>pkg1</i> and <i>pkg2</i> must both come from the same
89 It's suggested that you include a real /usr/share/doc/<i>pkg1</i> directory
90 within <i>pkg1</i> and copy the copyright file to that directory.
93 Tag: cannot-check-whether-usr-share-doc-symlink-points-to-foreign-package
96 Info: There is a symlink /usr/share/doc/<i>pkg1</i> -> <i>pkg2</i>
97 in your package. This means that <i>pkg1</i> and <i>pkg2</i> must
98 both come from the same source package. I can't check this right now
99 however since I'm only checking a binary package and I only can check
100 this when I'm checking both the binary and the corresponding source
103 Tag: old-style-copyright-file
106 Info: The package installs a /usr/doc/copyright/<i>pkg</i> file. Instead,
107 you should place the copyright file in /usr/share/doc/<i>pkg</i>/copyright.
110 Tag: old-fsf-address-in-copyright-file
113 Info: The /usr/share/doc/<i>pkg</i>/copyright file refers to the old postal
114 address of the Free Software Foundation (FSF). The new address is:
116 Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
119 Tag: helper-templates-in-copyright
122 Info: The /usr/share/doc/<i>pkg</i>/copyright file still contains the template
123 contents from a packaging helper. Please include the actual license and
124 download information about the package.
126 Tag: copyright-refers-to-compressed-license
129 Info: The /usr/share/doc/<i>pkg</i>/copyright file refers to a standard license
130 /usr/share/common-licenses/{GPL,LGPL,Artistic,BSD}.gz as a compressed
131 file. Please update the reference (the licenses are installed
134 Tag: usr-share-doc-symlink-points-outside-of-usr-share-doc
137 Info: The /usr/share/doc/<i>pkg</i> symbolic link is pointing to a directory
138 outside of <tt>/usr/share/doc</tt>.
141 Tag: copyright-does-not-refer-to-common-license-file
144 Info: If your package uses any one of the licenses in
145 <tt>/usr/share/common-licenses</tt>, the copyright file should refer to
149 Tag: copyright-refers-to-incorrect-directory
153 Info: In the directory name /usr/share/common-licenses, licenses is spelled
154 with an "s", not as licences with a "c".
156 Tag: copyright-file-lacks-pointer-to-perl-license
160 Info: If your package is released under the same terms as Perl itself,
161 it should refer to the Artistic and GPL license files in the
162 <tt>/usr/share/common-licenses</tt> directory.
164 Tag: copyright-should-refer-to-common-license-file-for-gpl
168 Info: The strings "GNU General Public License" or "GPL" appear in the
169 copyright file for this package, but the copyright file does not
170 reference <tt>/usr/share/common-licenses</tt> as the location of the GPL
173 If the package uses some other license that just mentions the GPL and
174 that Maemian should detect as an exception, please file a Maemian bug.
175 If the copyright file must mention the GPL for reasons other than stating
176 the license of the package, please add a Maemian override.
178 Tag: copyright-should-refer-to-common-license-file-for-gfdl
182 Info: The strings "GNU Free Documentation License" or "GFDL" appear in the
183 copyright file for this package, but the copyright file does not
184 reference <tt>/usr/share/common-licenses</tt> as the location of the GFDL
187 If the package uses some other license that just mentions the GFDL and
188 that Maemian should detect as an exception, please file a Maemian bug.
189 If the copyright file must mention the GFDL for reasons other than stating
190 the license of the package, please add a Maemian override.
192 Tag: copyright-should-refer-to-common-license-file-for-lgpl
196 Info: The strings "GNU Lesser General Public License", "GNU Library
197 General Public License", or "LGPL" appear in the copyright file for this
198 package, but the copyright file does not reference
199 <tt>/usr/share/common-licenses</tt> as the location of the LGPL on Debian
202 If the package uses some other license that just mentions the LGPL and
203 that Maemian should detect as an exception, please file a Maemian bug.
204 If the copyright file must mention the LGPL for reasons other than stating
205 the license of the package, please add a Maemian override.
207 Tag: copyright-lists-upstream-authors-with-dh_make-boilerplate
210 Info: There is "Upstream Author(s)" in your copyright file. This was most
211 likely a remnant from the dh_make template.
213 There's either one upstream author, in which case you should remove the
214 "(s)", or there are several upstream authors, in which case you should
215 remove the "(" and ")".
217 o/~ join us now and carefully edit debian/copyright files! o/~
219 Tag: copyright-has-url-from-dh_make-boilerplate
223 Info: There is "url://example.com" in your copyright file. This was most
224 likely a remnant from the dh_make template.
226 Make sure you include the real location where you obtained the
227 upstream sources (if any).
229 Tag: debian-copyright-file-uses-obsolete-national-encoding
232 Info: The Debian copyright file should be valid UTF-8, an encoding of
233 the Unicode character set.
235 There are many ways to convert a copyright file from an obsoleted encoding
236 like ISO-8859-1; you may for example use "iconv" like:
238 $ iconv -f ISO-8859-1 -t UTF-8 copyright > copyright.new
239 $ mv copyright.new copyright
241 Tag: copyright-contains-dh_make-todo-boilerplate
245 Info: The string "Please also look if..." appears in the copyright
246 file, which indicates that you either didn't check the whole source
247 to find additional copyright/license, or that you didn't remove that
248 paragraph after having done so.
250 Tag: copyright-contains-dh-make-perl-boilerplate
254 Info: The string "This copyright info was automatically extracted..."
255 appears in the copyright file, which indicates that you either didn't
256 check the whole source to find additional copyright/license, or that
257 you didn't remove that paragraph after having done so.
259 Tag: copyright-with-old-dh-make-debian-copyright
262 Info: The copyright file contains the incomplete Debian packaging
263 copyright boilerplate from older versions of <tt>dh_make</tt>.
264 <tt>(C)</tt> is not considered as a valid way to express the copyright
265 ownership. The word <tt>Copyright</tt> or the © symbol should be used
266 instead or in addition to <tt>(C)</tt>.
268 Tag: copyright-refers-to-bad-php-license
271 Info: This package appears to be covered by version 2.x of the PHP license,
272 which is not appropriate for anything other than PHP itself.
273 Ref: http://ftp-master.debian.org/REJECT-FAQ.html
275 Tag: copyright-refers-to-problematic-php-license
277 Certainty: wild-guess
278 Info: This package appears to be covered by version 3.0 (exactly) of the
279 PHP license. This license is not applicable to anything that is not PHP
280 and has no contributions from the PHP Group.
281 Ref: http://ftp-master.debian.org/REJECT-FAQ.html
283 Tag: copyright-without-copyright-notice
286 Ref: http://ftp-master.debian.org/REJECT-FAQ.html
287 Info: The copyright file for this package does not appear to contain a
288 copyright notice. You should copy the copyright notice from the upstream
289 source (or add one of your own for a native package). A copyright notice
290 must consist of Copyright, Copr., or the Unicode symbol of C in a circle
291 followed by the years and the copyright holder. A copyright notice is
292 not required for a work to be copyrighted, but Debian requires the
293 copyright file include the authors and years of copyright, and including
294 a valid copyright notice is the best way to do that.
296 If the package is in the public domain rather than copyrighted, be sure
297 to mention "public domain" in the copyright file. Please be aware that
298 this is very rare and not the same as a DFSG-free license. True public
299 domain software is generally limited to such special cases as a work
300 product of a United States government agency.
302 Tag: spelling-error-in-copyright
305 Info: Maemian found a spelling error in the copyright file. Maemian has a
306 list of common misspellings that it looks for. It does not have a
307 dictionary like a spelling checker does.
309 Tag: possible-gpl-code-linked-with-openssl
311 Certainty: wild-guess
312 Info: This package appears to be covered by the GNU GPL but depends on
313 the OpenSSL libssl package and does not mention a license exemption or
314 exception for OpenSSL in its copyright file. The GPL (including version
315 3) is incompatible with some terms of the OpenSSL license, and therefore
316 Debian does not allow GPL-licensed code linked with OpenSSL libraries
317 unless there is a license exception explicitly permitting this.
319 If only the Debian packaging, or some other part of the package not
320 linked with OpenSSL, is covered by the GNU GPL, please add a lintian
321 override for this tag. Maemian currently has no good way of
322 distinguishing between that case and problematic packages.
324 Tag: copyright-refers-to-symlink-license
327 Info: The copyright file refers to the versionless symlink in
328 <tt>/usr/share/common-licenses</tt> for the full text of the GPL, LGPL,
329 or GFDL license. This symlink is updated to point to the latest version
330 of the license when a new one is released. The package appears to allow
331 relicensing under later versions of its license, so this is legally
332 consistent, but it implies that Debian will relicense the package under
333 later versions of those licenses as they're released. It is normally
334 better to point to the version of the license the package references in
335 its license statement.
337 For example, if the package says something like "you may redistribute it
338 and/or modify it under the terms of the GNU General Public License as
339 published by the Free Software Foundation; either version 2, or (at your
340 option) any later version", the <tt>debian/copyright</tt> file should
341 refer to <tt>/usr/share/common-licenses/GPL-2</tt>, not <tt>/GPL</tt>.
343 Tag: copyright-refers-to-versionless-license-file
346 Info: The copyright file refers to the versionless symlink in
347 <tt>/usr/share/common-licenses</tt> for the full text of the GPL, LGPL,
348 or GFDL license, but the package does not appear to allow distribution
349 under later versions of the license. This symlink will change with each
350 release of a new version of the license and may therefore point to a
351 different version than the package is released under.
352 <tt>debian/copyright</tt> should instead refers to the specific version
353 of the license that the package references.
355 For example, if the package says something like "you can redistribute it
356 and/or modify it under the terms of the GNU General Public License as
357 published by the Free Software Foundation; version 2 dated June, 1991,"
358 the <tt>debian/copyright</tt> file should refer to
359 <tt>/usr/share/common-licenses/GPL-2</tt>, not <tt>/GPL</tt>.
361 Tag: copyright-refers-to-nonexistent-license-file
364 Info: The copyright file refers to a license in
365 <tt>/usr/share/common-licenses</tt> that doesn't exist. Usually this is
366 a typo, such as accidentally omitting the <tt>-</tt> between the license
367 name and the version number.