1 <?xml version="1.0" encoding="utf-8"?>
2 <?xml-stylesheet type="text/xsl"
3 href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"?>
5 <!-- Process this file with an XSLT processor, e.g. xsltproc: -->
10 <!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.5//EN'
11 'http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd'>
13 <article class="specification" status="draft" lang="en" id="copyright-format">
16 Machine-readable <filename>debian/copyright</filename> file.
18 <subtitle>Version 1.0</subtitle>
21 Copying and distribution of this file, with or without modification, are
22 permitted in any medium without royalty provided the copyright notice
23 and this notice are preserved.
28 This specification was drafted as <ulink
29 url="http://dep.debian.net/deps/dep5/">DEP-5</ulink>, to establish a
30 standard, machine-readable format for
31 <filename>debian/copyright</filename> files within packages and
32 facilitate automated checking and reporting of licenses for packages and
33 sets of packages. The DEP drivers were Steve Langasek
34 <email>vorlon@debian.org</email> and Lars Wirzenius
35 <email>liw@liw.fi</email>.
40 <section id="introduction">
41 <title>Introduction</title>
43 This is a proposal to make <filename>debian/copyright</filename>
44 machine-interpretable. This file is one of the most important files in
45 Debian packaging, yet there is currently no standard format defined for it
46 and its contents vary tremendously across packages, making it difficult to
47 automatically extract licensing information.
50 This is not a proposal to change the policy in the short term. In
51 particular, nothing in this proposal supersedes or modifies any of the
52 requirements specified in Debian Policy regarding the appropriate detail
53 or granularity to use when documenting copyright and license status in
54 <filename>debian/copyright</filename>.
58 <section id="rationale">
59 <title>Rationale</title>
61 The diversity of free software licenses means that Debian needs to care
62 not only about the freeness of a given work, but also its license's
63 compatibility with the other parts of Debian it uses.
66 The arrival of the GPL version 3, its incompatibility with version 2, and
67 our inability to spot the software where the incompatibility might be
68 problematic is one prominent occurrence of this limitation.
71 There are earlier precedents, also. One is the GPL/OpenSSL
72 incompatibility. Apart from grepping
73 <filename>debian/copyright</filename>, which is prone to numerous false
74 positives (packaging under the GPL but software under another license) or
75 negatives (GPL software but with an <quote>OpenSSL special
76 exception</quote> dual licensing form), there is no reliable way to know
77 which software in Debian might be problematic.
80 And there is more to come. There are issues with shipping GPLv2-only
81 software with a CDDL operating system such as Nexenta. The GPL version 3
82 solves this issue, but not all GPL software can switch to it and we have
83 no way to know how much of Debian should be stripped from such a system.
86 A user might want to have a way to avoid software with certain licenses
87 they have a problem with, even if the licenses are DFSG-free. For example,
92 <section id="acknowledgements">
93 <title>Acknowledgements</title>
95 Many people have worked on this specification over the years. The
96 following alphabetical list is incomplete, please suggest missing people:
108 <section id="file-syntax">
109 <title>File syntax</title>
111 The <filename>debian/copyright</filename> file must be
112 machine-interpretable, yet human-readable, while communicating all
113 mandated upstream information, copyright notices and licensing details.
116 The syntax of the file is the same as for other Debian control files, as
117 specified in the Debian Policy Manual. See its <ulink
118 url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-controlsyntax">section
119 5.1</ulink> for details. Extra fields can be added to any paragraph. No
120 prefixing is necessary or desired, but please avoid names similar to
121 standard ones so that mistakes are easier to catch. Future versions of
122 the <filename>debian/copyright</filename> specification will attempt to
123 avoid conflicting specifications for widely used extra fields.
126 There are four kinds values for fields. Each field specifies which kind
130 <section id="single-line">
131 <title>Single-line values</title>
133 A single-line value means that the whole value of a field must fit on a
134 single line. For example, the <varname>Format</varname> field has a
135 single line value specifying the version of the machine-readable format
140 <section id="white-space-lists">
141 <title>White space separated lists</title>
143 A white space separated list means that the field value may be on one
144 line or many, but values in the list are separated by one or more white
145 space characters (including space, TAB, and newline). For example, the
146 <varname>Files</varname>field has a list of filename patterns.
150 <section id="line-based-lists">
151 <title>Line based lists</title>
153 Another kind of list value has one value per line. For example,
154 <varname>Copyright</varname> can list many copyright statements, one per
159 <section id="formatted-text">
160 <title>Text formatted like package long descriptions</title>
162 Formatted text fields use the same rules as the long description in a
163 package's <varname>Description</varname> field, possibly also using the
164 first line as a synopsis, like <varname>Description</varname> uses it
165 for the short description. See Debian Policy's section 5.6.13, <ulink
166 url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-f-Description"><quote>Description</quote></ulink>,
167 for details. For example, <varname>Disclaimer</varname> has no special
168 first line, whereas <varname>License</varname> does.
173 <section id="paragraphs">
174 <title>Paragraphs</title>
176 There are three kinds of paragraphs: the first one is called the
177 <link linkend="header-paragraph">header paragraph</link>. Every other
178 paragraph is either a <link linkend="files-paragraph">Files</link>
179 paragraph or a <link linkend="stand-alone-license-paragraph">stand-alone
180 license</link> paragraph. This is similar to source and binary package
181 paragraphs in <filename>debian/control</filename> files.
184 <section id="header-paragraph">
185 <title>Header paragraph (Once)</title>
186 <section id="format-header-field">
187 <title><varname>Format</varname></title>
189 Required single line: URI of the format specification, such as:
190 <literal>http://www.debian.org/doc/copyright-format/1.0</literal>
194 <section id="upstream-name-header-field">
195 <title><varname>Upstream-Name</varname></title>
197 Optional single line: the name upstream uses for the software
201 <section id="upstream-contact-header-field">
202 <title><varname>Upstream-Contact</varname></title>
204 Optional line based list: the preferred address(es) to reach the
205 upstream project. May be free-form text, but by convention will
206 usually be written as a list of RFC5322 addresses or URIs.
210 <section id="source-header-field">
211 <title><varname>Source</varname></title>
213 Optional formatted text, no synopsis: an explanation from where the
214 upstream source came from. Typically this would be a URL, but it might
215 be a free-form explanation. The Debian Policy section <ulink
216 url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>
217 requires this information unless there are no upstream sources, which
218 is mainly the case for native Debian packages. If the upstream source
219 has been modified to remove non-free parts, that should be explained
224 <section id="disclaimer-header-field">
225 <title><varname>Disclaimer</varname></title>
227 Optional formatted text, no synopsis: this field can be used in the
228 case of non-free and contrib packages (see <ulink
229 url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>)
233 <section id="comment-header-field">
234 <title><varname>Comment</varname></title>
236 Optional formatted text, no synopsis: this field can provide
237 additional information. For example, it might quote an e-mail from
238 upstream justifying why the license is acceptable to the main archive,
239 or an explanation of how this version of the package has been forked
240 from a version known to be DFSG-free, even though the current upstream
245 <section id="license-header-field">
246 <title><varname>License</varname></title>
248 Optional formatted text, with synopsis: in the header paragraph
249 (no <varname>Files</varname> specification), this field gives the
250 license information for the package as a whole, which may be different
251 or simplified from a combination of all the per-file license
252 information. <varname>License</varname> below in the <link
253 linkend="files-paragraph">Files paragraph</link> section.
257 <section id="copyright-header-field">
258 <title><varname>Copyright</varname></title>
260 Optional line based list: in the header paragraph (no
261 <varname>Files</varname> specification), this field gives the
262 copyright information for the package as a whole, which may be
263 different or simplified from a combination of all the per-file
264 copyright information. See also <varname>Copyright</varname> below
265 in the <link linkend="files-paragraph">Files paragraph</link>
269 The <varname>Copyright</varname> and <varname>License</varname> fields
270 in the <emphasis>header paragraph</emphasis> may complement but do not
271 replace the <emphasis>files paragraphs</emphasis>. They can be used
272 to summarise the contributions and redistribution terms for the whole
273 package, for instance when a work combines a permissive and a copyleft
274 license, or to document a <emphasis>compilation copyright</emphasis>
275 and license. It is possible to use only <varname>License</varname> in
276 the header paragraph, but <varname>Copyright</varname>alone makes no
281 <section id="example-header-paragraph">
282 <title>Example header paragraph</title>
283 <programlisting>Format: <VERSIONED_FORMAT_URL>
284 Upstream-Name: SOFTware
285 Upstream-Contact: John Doe <john.doe@example.com>
286 Source: http://www.example.com/software/project</programlisting>
290 <section id="files-paragraph">
291 <title>Files paragraph (Repeatable)</title>
293 The declaration of copyright and license for files is done in one or
294 more paragraphs. In the simplest case, a single paragraph can be used
295 which applies to all files and lists all applicable copyrights and
299 <section id="files-files-field">
300 <title><varname>Files</varname></title>
302 Required white space separated list: list of patterns indicating files
303 covered by the license and copyright specified in this paragraph.
306 Filename patterns in the <varname>Files</varname> field are specified
307 using a simplified shell glob syntax. Patterns are separated by white
312 Only the wildcards <literal>*</literal> and <literal>?</literal>
313 apply; the former matches any number of characters (including
314 none), the latter a single character. Both match a slash
315 (<literal>/</literal>) and a leading dot.
320 Patterns match pathnames that start at the root of the source
321 tree. Thus, <quote><filename>Makefile.in</filename></quote>
322 matches only the file at the root of the tree, but
323 <quote><filename>*/Makefile.in</filename></quote> matches at any
329 The backslash (<literal>\</literal>) is used to remove the magic
330 from the next character; see table below.
338 <entry>Escape sequence</entry>
339 <entry>Matches</entry>
344 <entry><literal>\*</literal></entry>
345 <entry>star (asterisk)</entry>
348 <entry><literal>\?</literal></entry>
349 <entry>question mark</entry>
352 <entry><literal>\\</literal></entry>
353 <entry>backslash</entry>
358 Any other character following a backslash is an error.
361 Multiple <varname>Files</varname> paragraphs are allowed. The last
362 paragraph that matches a particular file applies to it.
365 Exclusions are done by having multiple <varname>Files</varname>
370 <section id="copyright-files-field">
371 <title><varname>Copyright</varname></title>
373 Required line based list: one or more free-form copyright
374 statement(s), one per line, that apply to the files matched by the
375 above pattern. If a work has no copyright holder (i.e., it is in
376 the public domain), that information should be recorded here.
379 The <varname>Copyright</varname> field collects all relevant copyright
380 notices for the files of this paragraph. Not all copyright notices
381 may apply to every individual file, and years of publication for one
382 copyright holder may be gathered together. For example, if file A
384 <programlisting>Copyright 2008 John Smith
385 Copyright 2009 Angela Watts</programlisting>
387 <programlisting>Copyright 2010 Angela Watts</programlisting>
388 the <varname>Copyright</varname> field for a stanza
389 covering both file A and file B need contain only:
390 <programlisting>Copyright 2008 John Smith
391 Copyright 2009, 2010 Angela Watts</programlisting>
394 The <varname>Copyright</varname> field may contain the original
395 copyright statement copied exactly (including the word
396 <quote>Copyright</quote>), or it can shorten the text, as long
397 as it does not sacrifice information. Examples in this specification
402 <section id="license-files-field">
403 <title><varname>License</varname></title>
405 Required formatted text, with synopsis: licensing terms for the files
406 listed in <varname>Files</varname> field for this paragraph.
409 First line: an abbreviated name for the license, or expression
410 giving alternatives (see <link linkend="license-short-name">Short
411 names</link> section for a list of standard abbreviations). If there
412 are licenses present in the package without a standard short name, an
413 arbitrary short name may be assigned for these licenses. These
414 arbitrary names are only guaranteed to be unique within a single
418 Remaining lines: if left blank here, the file
419 <emphasis>must</emphasis> include a stand-alone
420 <varname>License</varname> paragraph matching each license short
421 name listed on the first line (see the <link
422 linkend="stand-alone-license-paragraph">Standalone License
423 Paragraph</link> section). Otherwise, this field should either
424 include the full text of the license(s) or include a pointer to the
425 license file under <filename>/usr/share/common-licenses</filename>.
426 This field should include all text needed in order to fulfill both
427 Debian Policy's requirement for including a copy of the software's
428 distribution license (<ulink
429 url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>),
430 and any license requirements to include warranty disclaimers or other
431 notices with the binary package.
435 <section id="comment-files-field">
436 <title><varname>Comment</varname></title>
438 Same as the <link linkend="comment-header-field">
439 <varname>Comment</varname></link> field in the header paragraph.
443 <section id="example-files-paragraph">
444 <title>Example files paragraphs</title>
445 <programlisting>Files: *
446 Copyright: 1975-2010 Ulla Upstream
450 Copyright: 2010 Daniela Debianizer
453 Files: debian/patches/fancy-feature
454 Copyright: 2010 Daniela Debianizer
458 Copyright: 2010 Manuela Manpager
459 License: GPL-2+</programlisting>
461 In this example, all files are copyright by the upstream and licensed
462 under the GPL, version 2 or later, with three exceptions. All the
463 Debian packaging files are copyright by the packager, and further one
464 specific file providing a new feature is licensed differently.
465 Finally, there are some manual pages added to the package, written by
471 <section id="stand-alone-license-paragraph">
472 <title>Standalone License Paragraph (Optional, Repeatable)</title>
474 Where a set of files are dual (tri, etc) licensed, or when the same
475 license occurs multiple times, you can use a single line
476 <varname>License</varname> field and standalone
477 <varname>License</varname> paragraphs to expand the license short names.
480 <title>tri-licensed files</title>
481 <programlisting>Files: src/js/editline/*
482 Copyright: 1993, John Doe
484 License: MPL-1.1 or GPL-2 or LGPL-2.1
493 LICENSE TEXT]</programlisting>
497 <title>recurrent license</title>
498 <programlisting>Files: src/js/editline/*
499 Copyright: 1993, John Doe
503 Files: src/js/fdlibm/*
504 Copyright: 1993, J-Random Corporation
508 [LICENSE TEXT]</programlisting>
513 <section id="license-specification">
514 <title>License specification</title>
516 <section id="license-short-name">
517 <title>Short name</title>
519 Much of the value of a machine-parseable copyright file lies in being
520 able to correlate the licenses of multiple pieces of software. To that
521 end, this spec defines standard short names for a number of commonly
522 used licenses, which can be used in the first line of a
523 <varname>License</varname> field.
526 These short names have the specified meanings across all uses of this
527 file format, and <emphasis>must not</emphasis> be used to refer to any
528 other licenses. Parsers may thus rely on these short names referring to
529 the same licenses wherever they occur, without needing to parse or
530 compare the full license text.
533 From time to time, licenses may be added to or removed from the list of
534 standard short names. Such changes in the list of short names will
535 always be accompanied by changes to the recommended
536 <varname>Format</varname> value. Implementers who are parsing copyright
537 files should take care not to assume anything about the meaning of
538 license short names for unknown <varname>Format</varname> versions.
541 Use of a standard short name does not override the Debian Policy
542 requirement to include the full license text in
543 <filename>debian/copyright</filename>, nor any requirements in the
544 license of the work regarding reproduction of legal notices. This
545 information must still be included in the <varname>License</varname>
546 field, either in a stand-alone license paragraph or in the relevant
550 For licenses which have multiple versions in use, the version number is
551 added, using a dash as a separator. If omitted, the lowest version
552 number is implied. When the license grant permits using the terms of any
553 later version of that license, the short name is finished with a plus
554 sign. For <link linkend="spdx">SPDX</link> compatibility, trailing
555 <emphasis>dot-zeroes</emphasis> are considered to be equal to plainer
556 version (e.g., <quote>2.0.0</quote> is considered equal to
557 <quote>2.0</quote> and <quote>2</quote>).
560 Currently, the full text of the licenses is only available in the <ulink
561 url="http://spdx.org/wiki/working-version-license-list">working version
562 of the SPDX license list</ulink>.
568 <entry>Keyword</entry>
569 <entry>Meaning</entry>
574 <entry>public-domain</entry>
576 No license required for any purpose; the work is not subject to
577 copyright in any jurisdiction.
586 <ulink url="http://spdx.org/licenses/ASL-1.0">1.0</ulink>,
587 <ulink url="http://spdx.org/licenses/ASL-2.0">2.0</ulink>.
596 <ulink url="http://spdx.org/licenses/Artistic-1.0">1.0</ulink>,
597 <ulink url="http://spdx.org/licenses/Artistic-2.0">2.0</ulink>.
605 Berkeley software distribution license,
606 <ulink url="http://spdx.org/licenses/BSD-2-Clause">2-clause
615 Berkeley software distribution license,
616 <ulink url="http://spdx.org/licenses/BSD-3-Clause">3-clause
625 Berkeley software distribution license,
626 <ulink url="http://spdx.org/licenses/BSD-4-Clause">4-clause
635 <ulink url="http://spdx.org/licenses/ISC">Internet Software
636 Consortium</ulink>, sometimes also known as the OpenBSD License.
644 Creative Commons Attribution license
645 <ulink url="http://spdx.org/licenses/CC-BY-1.0">1.0</ulink>,
646 <ulink url="http://spdx.org/licenses/CC-BY-2.0">2.0</ulink>,
647 <ulink url="http://spdx.org/licenses/CC-BY-2.5">2.5</ulink>,
648 <ulink url="http://spdx.org/licenses/CC-BY-3.0">3.0</ulink>.
656 Creative Commons Attribution Share Alike license
657 <ulink url="http://spdx.org/licenses/CC-BY-SA-1.0">1.0</ulink>,
658 <ulink url="http://spdx.org/licenses/CC-BY-SA-2.0">2.0</ulink>,
659 <ulink url="http://spdx.org/licenses/CC-BY-SA-2.5">2.5</ulink>,
660 <ulink url="http://spdx.org/licenses/CC-BY-SA-3.0">3.0</ulink>.
668 Creative Commons Attribution No Derivatives license
669 <ulink url="http://spdx.org/licenses/CC-BY-ND-1.0">1.0</ulink>,
670 <ulink url="http://spdx.org/licenses/CC-BY-ND-2.0">2.0</ulink>,
671 <ulink url="http://spdx.org/licenses/CC-BY-ND-2.5">2.5</ulink>,
672 <ulink url="http://spdx.org/licenses/CC-BY-ND-3.0">3.0</ulink>.
680 Creative Commons Attribution Non-Commercial license
681 <ulink url="http://spdx.org/licenses/CC-BY-NC-1.0">1.0</ulink>,
682 <ulink url="http://spdx.org/licenses/CC-BY-NC-2.0">2.0</ulink>,
683 <ulink url="http://spdx.org/licenses/CC-BY-NC-2.5">2.5</ulink>,
684 <ulink url="http://spdx.org/licenses/CC-BY-NC-3.0">3.0</ulink>.
692 Creative Commons Attribution Non-Commercial Share Alike license
693 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-1.0">1.0</ulink>,
694 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.0">2.0</ulink>,
695 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.5">2.5</ulink>,
696 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-3.0">3.0</ulink>.
704 Creative Commons Attribution Non-Commercial No Derivatives license
705 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-1.0">1.0</ulink>,
706 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.0">2.0</ulink>,
707 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.5">2.5</ulink>,
708 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-3.0">3.0</ulink>.
716 Creative Commons <ulink
717 url="http://creativecommons.org/license/zero/">Universal
726 <ulink url="http://spdx.org/licenses/CDDL">Common Development
727 and Distribution License</ulink>.
735 <ulink url="http://spdx.org/licenses/CPL-1.0">IBM Common Public
744 The Eiffel Forum License
745 <ulink url="http://spdx.org/licenses/EFL-1.0">1.0</ulink>,
746 <ulink url="http://spdx.org/licenses/EFL-2.0">2.0</ulink>.
754 The <ulink url="http://www.jclark.com/xml/copying.txt">Expat</ulink>
763 GNU General Public License
764 <ulink url="http://spdx.org/licenses/GPL-1.0">1.0</ulink>,
765 <ulink url="http://spdx.org/licenses/GPL-2.0">2.0</ulink>,
766 <ulink url="http://spdx.org/licenses/GPL-3.0">3.0</ulink>.
774 GNU Lesser General Public License
775 <ulink url="http://spdx.org/licenses/LGPL-2.1">2.1</ulink>,
776 <ulink url="http://spdx.org/licenses/LGPL-3.0">3.0</ulink>, or
777 GNU Library General Public License
778 <ulink url="http://spdx.org/licenses/LGPL-1.0">1.0</ulink>,
779 <ulink url="http://spdx.org/licenses/LGPL-2.0">2.0</ulink>.
787 <ulink url="http://spdx.org/licenses/FDL-1.0">GNU Free
788 Documentation License</ulink>.
796 GNU Free Documentation License, with no invariant sections.
804 <ulink url="http://www.latex-project.org/lppl/">LaTeX Project
805 Public License</ulink>
806 <ulink url="http://spdx.org/licenses/LPPL-1.0">1.0</ulink>,
807 <ulink url="http://spdx.org/licenses/LPPL-1.1">1.1</ulink>,
808 <ulink url="http://spdx.org/licenses/LPPL-1.2">1.2</ulink>,
809 <ulink url="http://spdx.org/licenses/LPPL-1.3c">1.3c</ulink>.
817 Mozilla Public License
818 <ulink url="http://spdx.org/licenses/MPL-1.1">1.1</ulink>.
826 <ulink url="http://dev.perl.org/licenses/">Perl</ulink> license
827 (use <quote><literal>GPL-1+ or Artistic-1</literal></quote>
836 <ulink url="http://spdx.org/licenses/Python-CNRI">Python
845 Q Public License <ulink
846 url="http://spdx.org/licenses/QPL-1.0">1.0</ulink>.
854 <ulink url="http://spdx.org/licenses/W3C">W3C Software
855 License</ulink> For more information, consult the
857 url="http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620">W3C
858 Intellectual Rights FAQ</ulink>.
866 <ulink url="http://spdx.org/licenses/Zlib">
867 zlib/libpng license</ulink>.
876 <ulink url="http://spdx.org/licenses/ZPL-1.0">1.0</ulink>,
877 <ulink url="http://spdx.org/licenses/ZPL-2.0">2.0</ulink>,
878 <ulink url="http://spdx.org/licenses/ZPL-2.1">2.1</ulink>.
886 url="http://en.wikipedia.org/wiki/MIT_License#Various_versions">many
887 versions of the MIT license</ulink>. Please use Expat instead, when it
891 Exceptions and clarifications are signaled in plain text, by appending
892 <literal>with <varname><replaceable>keywords</replaceable></varname>
893 exception</literal> to the short name. This document provides a list of
894 keywords that refer to the most frequent exceptions.
897 The GPL <literal>Font</literal> exception refers to the text added to the
898 license notice of each file as specified at <ulink
899 url="http://www.gnu.org/licenses/gpl-faq#FontException">How does the GPL
900 apply to fonts</ulink>. The precise text corresponding to this
902 <programlisting>As a special exception, if you create a document which uses this font,
903 and embed this font or unaltered portions of this font into the
904 document, this font does not by itself cause the resulting document to
905 be covered by the GNU General Public License. This exception does not
906 however invalidate any other reasons why the document might be covered
907 by the GNU General Public License. If you modify this font, you may
908 extend this exception to your version of the font, but you are not
909 obligated to do so. If you do not wish to do so, delete this exception
910 statement from your version.</programlisting>
913 The GPL <literal>OpenSSL</literal> exception gives permission to link GPL-licensed
914 code with the OpenSSL library, which contains GPL-incompatible clauses.
915 For more information, see <ulink
916 url="http://www.gnome.org/~markmc/openssl-and-the-gpl">The -OpenSSL License and
917 The GPL</ulink> by Mark
918 McLoughlin and the message <ulink
919 url="http://lists.debian.org/debian-legal/2004/05/msg00595.html">middleman
920 software license conflicts with OpenSSL</ulink>
921 by Mark McLoughlin on the <emphasis>debian-legal</emphasis> mailing list. The text corresponding
922 to this exception is:
923 <programlisting>In addition, as a special exception, the copyright holders give
924 permission to link the code of portions of this program with the
925 OpenSSL library under certain conditions as described in each
926 individual source file, and distribute linked combinations including
929 You must obey the GNU General Public License in all respects for all
930 of the code used other than OpenSSL. If you modify file(s) with this
931 exception, you may extend this exception to your version of the
932 file(s), but you are not obligated to do so. If you do not wish to do
933 so, delete this exception statement from your version. If you delete
934 this exception statement from all source files in the program, then
935 also delete it here.</programlisting>
938 <section id="public-domain">
939 <title>Public domain</title>
941 The <varname>License</varname> short name
942 <literal>public-domain</literal> does not refer to a set of license
943 terms. There are some works which are not subject to copyright in
944 any jurisdiction and therefore no license is required for any
945 purpose covered by copyright law. This short name is an explicit
946 declaration that the associated files are <quote>in the public
950 Widespread misunderstanding about copyright in general, and the
951 public domain in particular, results in the common assertion that a
952 work is in the public domain when this is partly or wholly untrue
953 for that work. The <ulink
954 url="http://en.wikipedia.org/wiki/Public_domain">Wikipedia article
955 on public domain</ulink> is a useful reference for this subject.
958 When the <varname>License</varname> field in a paragraph has the
959 short name <literal>public-domain</literal>, the remaining lines of
960 the field <emphasis>must</emphasis> explain exactly what exemption
961 the corresponding files for that paragraph have from default
962 copyright restrictions.
967 <section id="license-syntax">
968 <title>Syntax</title>
970 License names are case-insensitive, and may not contain spaces.
973 In case of multi-licensing, the license short names are separated by
974 <literal>or</literal> when the user can chose between different licenses,
975 and by <literal>and</literal> when use of the work must simultaneously
976 comply with the terms of multiple licenses.
979 For instance, this is a simple, <quote>GPL version 2 or later</quote>
981 <programlisting>License: GPL-2+</programlisting>
982 This is a dual-licensed GPL/Artistic work such as Perl:
983 <programlisting>License: GPL-1+ or Artistic</programlisting>
984 This is for a file that has both GPL and classic BSD code in it:
985 <programlisting>License: GPL-2+ and BSD</programlisting>
986 For the most complex cases, the comma is used to disambiguate the
987 priority of <literal>or</literal>s and <literal>and</literal>s
988 <literal>and</literal> has the priority over <literal>or</literal>,
989 unless preceded by a comma. For instance:
992 <literal>A or B and C</literal> means <literal>A or (B and C)</literal>.
995 <literal>A or B, and C</literal> means <literal>(A or B), and
999 This is for a file that has Perl code and classic BSD code in it:
1000 <programlisting>License: GPL-2+ or Artistic-2.0, and BSD</programlisting>
1001 A <literal>GPL-2+</literal> work with the <literal>OpenSSL</literal>
1002 exception is in effect a dual-licensed work that can be redistributed
1003 either under the <literal>GPL-2+</literal>, or under the
1004 <literal>GPL-2+</literal> with the <literal>OpenSSL</literal> exception.
1005 It is thus expressed as <literal>GPL-2+ with OpenSSL
1006 exception</literal>:
1007 <programlisting>License: GPL-2+ with OpenSSL exception
1008 This program is free software; you can redistribute it
1009 and/or modify it under the terms of the GNU General Public
1010 License as published by the Free Software Foundation; either
1011 version 2 of the License, or (at your option) any later
1014 In addition, as a special exception, the author of this
1015 program gives permission to link the code of its
1016 release with the OpenSSL project's "OpenSSL" library (or
1017 with modified versions of it that use the same license as
1018 the "OpenSSL" library), and distribute the linked
1019 executables. You must obey the GNU General Public
1020 License in all respects for all of the code used other
1021 than "OpenSSL". If you modify this file, you may extend
1022 this exception to your version of the file, but you are
1023 not obligated to do so. If you do not wish to do so,
1024 delete this exception statement from your version.
1026 This program is distributed in the hope that it will be
1027 useful, but WITHOUT ANY WARRANTY; without even the implied
1028 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1029 PURPOSE. See the GNU General Public License for more
1032 You should have received a copy of the GNU General Public
1033 License along with this package; if not, write to the Free
1034 Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1035 Boston, MA 02110-1301 USA
1037 On Debian systems, the full text of the GNU General Public
1038 License version 2 can be found in the file
1039 `/usr/share/common-licenses/GPL-2'.</programlisting>
1046 <ulink url="http://spdx.org/">SPDX</ulink> is an attempt to standardize
1047 a format for communicating the components, licenses and copyrights
1048 associated with a software package. It and the machine-readable
1049 <filename>debian/copyright</filename> format attempt to be somewhat
1050 compatible. However, the two formats have different aims, and so the
1051 formats are different. The <ulink
1052 url="http://wiki.debian.org/Proposals/CopyrightFormat">DEP5 wiki
1053 page</ulink> will be used to track the differences.
1058 <section id="examples">
1059 <title>Examples</title>
1061 <title>Simple</title>
1063 A possible <filename>debian/copyright</filename> file for the program
1064 <quote>X Solitaire</quote> distributed in the Debian source package
1065 <literal>xsol</literal>:
1066 <programlisting><![CDATA[Format: <VERSIONED_FORMAT_URL>
1067 Upstream-Name: X Solitaire
1068 Source: ftp://ftp.example.com/pub/games
1071 Copyright: Copyright 1998 John Doe <jdoe@example.com>
1073 This program is free software; you can redistribute it
1074 and/or modify it under the terms of the GNU General Public
1075 License as published by the Free Software Foundation; either
1076 version 2 of the License, or (at your option) any later
1079 This program is distributed in the hope that it will be
1080 useful, but WITHOUT ANY WARRANTY; without even the implied
1081 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1082 PURPOSE. See the GNU General Public License for more
1085 You should have received a copy of the GNU General Public
1086 License along with this package; if not, write to the Free
1087 Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1088 Boston, MA 02110-1301 USA
1090 On Debian systems, the full text of the GNU General Public
1091 License version 2 can be found in the file
1092 `/usr/share/common-licenses/GPL-2'.
1095 Copyright: Copyright 1998 Jane Smith <jsmith@example.net>
1097 [LICENSE TEXT]]]></programlisting>
1102 <title>Complex</title>
1104 A possible <filename>debian/copyright</filename> file for the program
1105 <quote>Planet Venus</quote>, distributed in the Debian source
1106 package <literal>planet-venus</literal>:
1107 <programlisting><![CDATA[Format: <VERSIONED_FORMAT_URL>
1108 Upstream-Name: Planet Venus
1109 Upstream-Contact: John Doe <jdoe@example.com>
1110 Source: http://www.example.com/code/venus
1113 Copyright: 2008, John Doe <jdoe@example.com>
1114 2007, Jane Smith <jsmith@example.org>
1115 2007, Joe Average <joe@example.org>
1116 2007, J. Random User <jr@users.example.com>
1121 Copyright: 2008, Dan Developer <dan@debian.example.com>
1123 Copying and distribution of this package, with or without
1124 modification, are permitted in any medium without royalty
1125 provided the copyright notice and this notice are
1128 Files: debian/patches/theme-diveintomark.patch
1129 Copyright: 2008, Joe Hacker <hack@example.org>
1133 Files: planet/vendor/compat_logging/*
1134 Copyright: 2002, Mark Smith <msmith@example.org>
1138 Files: planet/vendor/httplib2/*
1139 Copyright: 2006, John Brown <brown@example.org>
1141 Unspecified MIT style license.
1143 Files: planet/vendor/feedparser.py
1144 Copyright: 2007, Mike Smith <mike@example.org>
1148 Files: planet/vendor/htmltmpl.py
1149 Copyright: 2004, Thomas Brown <coder@example.org>
1151 This program is free software; you can redistribute it
1152 and/or modify it under the terms of the GNU General Public
1153 License as published by the Free Software Foundation; either
1154 version 2 of the License, or (at your option) any later
1157 This program is distributed in the hope that it will be
1158 useful, but WITHOUT ANY WARRANTY; without even the implied
1159 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1160 PURPOSE. See the GNU General Public License for more
1163 You should have received a copy of the GNU General Public
1164 License along with this package; if not, write to the Free
1165 Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1166 Boston, MA 02110-1301 USA
1168 On Debian systems, the full text of the GNU General Public
1169 License version 2 can be found in the file
1170 `/usr/share/common-licenses/GPL-2'.]]></programlisting>
1175 <section id="appendix">
1177 Appendix: Note about the use of this format in Debian
1180 The Debian Policy (ยง<ulink
1181 url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>)
1182 demands that each package is accompanied by a file,
1183 <filename>debian/copyright</filename> in source packages and
1184 <filename>/usr/share/doc/package/copyright</filename> in binary packages,
1185 that contains a verbatim copy of its copyright and distribution license.
1186 In addition, it requires that copyrights must be extractable by mechanical
1187 means. This proposal for machine-readable copyright and license summary
1188 files has been crafted for Debian's use, but it is our hope that other
1189 software distributions, as well as upstream developers will adopt it, so
1190 that review efforts can be easily reproduced and shared.
1193 The copyright of the Debian packaging and the history of package
1194 maintainers is simply indicated in a <literal>Files: debian/*</literal>