/README.html
/body.tmp
/copyright-format/copyright-format.html
+/copyright-format/copyright-format-1.0.html
/debconf_spec/debconf_specification.html
/debconf_spec/debconf_specification.txt.gz
/head.tmp
--- /dev/null
+Document: copyright-format-1.0
+Title: Machine-readable debian/copyright file
+Author: The Debian Project
+Abstract: Standard, machine-readable format for debian/copyright files within
+ packages, to facilitate automated checking and reporting of licenses for
+ packages and sets of packages.
+Section: Debian
+
+Format: text
+Files: /usr/share/doc/debian-policy/copyright-format-1.0.txt.gz
+
+Format: HTML
+Index: /usr/share/doc/debian-policy/copyright-format-1.0.html
+Files: /usr/share/doc/debian-policy/copyright-format-1.0.html
+++ /dev/null
-Document: copyright-format
-Title: Machine-readable debian/copyright file
-Author: The Debian Project
-Abstract: Standard, machine-readable format for debian/copyright files within
- packages, to facilitate automated checking and reporting of licenses for
- packages and sets of packages.
-Section: Debian
-
-Format: text
-Files: /usr/share/doc/debian-policy/copyright-format.txt.gz
-
-Format: HTML
-Index: /usr/share/doc/debian-policy/copyright-format.html
-Files: /usr/share/doc/debian-policy/copyright-format.html
-all: copyright-format.txt.gz copyright-format.html
+all: copyright-format-1.0.txt.gz copyright-format-1.0.html
-%.html: %.xml html.dsl
+copyright-format-1.0.html: copyright-format-1.0.xml html.dsl
jade -V nochunks -t sgml -d html.dsl \
/usr/share/xml/declaration/xml.dcl $< > $@
-tidy -q -i -m -f /dev/null $@
-%.txt: %.html
+copyright-format-1.0.txt: copyright-format-1.0.html
links -dump $< | perl -pe 's/[\r\0]//g' > $@
-%.txt.gz: %.txt
+copyright-format-1.0.txt.gz: copyright-format-1.0.txt
gzip -cf9 $< > $@
clean:
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<?xml-stylesheet type="text/xsl"
+ href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"?>
+
+<!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.5//EN'
+ 'http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd'>
+
+<article class="specification" lang="en" id="copyright-format-1.0">
+ <articleinfo>
+ <title>
+ Machine-readable <filename>debian/copyright</filename> file
+ </title>
+ <subtitle>Version 1.0</subtitle>
+ <legalnotice>
+ <para>
+ Copying and distribution of this file, with or without modification,
+ are permitted in any medium without royalty provided the copyright
+ notice and this notice are preserved.
+ </para>
+ </legalnotice>
+ <abstract>
+ <para>
+ Establishes a standard, machine-readable format for
+ <filename>debian/copyright</filename> files within Debian packages
+ to facilitate automated checking and reporting of licenses for
+ packages and sets of packages. This specification was originally
+ drafted as
+ <ulink url="http://dep.debian.net/deps/dep5/">DEP-5</ulink>.
+ </para>
+ </abstract>
+ </articleinfo>
+
+ <section id="introduction">
+ <title>Introduction</title>
+ <para>
+ This document describes a standard, machine-interpretable format for
+ the <filename>debian/copyright</filename> file. This file is one of
+ the most important files in Debian packaging, but, prior to this
+ specification, no standard format was defined for it and its
+ contents varied tremendously across packages. This made it
+ difficult to automatically extract licensing information.
+ </para>
+ <para>
+ Use of this specification is optional.
+ </para>
+ <para>
+ Nothing in this proposal supersedes or modifies any of the requirements
+ specified in Debian Policy regarding the appropriate detail or
+ granularity to use when documenting copyright and license status in
+ <filename>debian/copyright</filename>.
+ </para>
+ </section>
+
+ <section id="rationale">
+ <title>Rationale</title>
+ <para>
+ The diversity of free software licenses means that Debian needs to care
+ not only about the freeness of a given work, but also its license's
+ compatibility with the other parts of Debian it uses.
+ </para>
+ <para>
+ The arrival of the GPL version 3, its incompatibility with version 2, and
+ our inability to spot the software where the incompatibility might be
+ problematic is one prominent occurrence of this limitation.
+ </para>
+ <para>
+ There are earlier precedents, also. One is the GPL/OpenSSL
+ incompatibility. Apart from grepping
+ <filename>debian/copyright</filename>, which is prone to numerous false
+ positives (packaging under the GPL but software under another license) or
+ negatives (GPL software but with an <quote>OpenSSL special
+ exception</quote> dual licensing form), there is no reliable way to know
+ which software in Debian might be problematic.
+ </para>
+ <para>
+ And there is more to come. There are issues with shipping GPLv2-only
+ software with a CDDL operating system such as Nexenta. The GPL version 3
+ solves this issue, but not all GPL software can switch to it and we have
+ no way to know how much of Debian should be stripped from such a system.
+ </para>
+ <para>
+ Even where licenses are DFSG-free and mutually compatible, users may
+ wish a way to identify software under certain licenses (for example,
+ if they have a problem with the Affero GPL).
+ </para>
+ </section>
+
+ <section id="acknowledgements">
+ <title>Acknowledgements</title>
+ <para>
+ Many people have worked on this specification over the years. The
+ following alphabetical list is incomplete; please suggest missing people:
+ Russ Allbery,
+ Ben Finney,
+ Sam Hocevar,
+ Steve Langasek,
+ Charles Plessy,
+ Noah Slater,
+ Jonas Smedegaard,
+ Lars Wirzenius.
+ </para>
+ </section>
+
+ <section id="file-syntax">
+ <title>File syntax</title>
+ <para>
+ The <filename>debian/copyright</filename> file must be
+ machine-interpretable, yet human-readable, while communicating all
+ mandated upstream information, copyright notices and licensing details.
+ </para>
+ <para>
+ The syntax of the file is the same as for other Debian control files, as
+ specified in the Debian Policy Manual. See its <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-controlsyntax">section
+ 5.1</ulink> for details. Extra fields can be added to any paragraph. No
+ prefixing is necessary or desired, but please avoid names similar to
+ standard ones so that mistakes are easier to catch. Future versions of
+ the <filename>debian/copyright</filename> specification will attempt to
+ avoid conflicting specifications for widely used extra fields.
+ </para>
+ <para>
+ The file consists of two or more paragraphs. At minimum, the file
+ must include one <link linkend="header-paragraph">header
+ paragraph</link> and one <link linkend="files-paragraph">Files
+ paragraph</link>.
+ </para>
+ <para>
+ There are four types of fields. The definition for each field in this
+ document indicates which type of value it takes.
+ </para>
+
+ <section id="single-line">
+ <title>Single-line values</title>
+ <para>
+ The entire value of a single-line field must be on a single line.
+ For example, the <varname>Format</varname> field has a single-line
+ value specifying the version of the machine-readable format that
+ is used.
+ </para>
+ </section>
+
+ <section id="white-space-lists">
+ <title>Whitespace-separated lists</title>
+ <para>
+ Field values defined as whitespace-separated lists may be on one
+ line or many. Values in the list are separated by one or more
+ whitespace characters (space, tab, or newline). For example, the
+ <varname>Files</varname> field contains a whitespace-separated
+ list of filename patterns.
+ </para>
+ </section>
+
+ <section id="line-based-lists">
+ <title>Line-based lists</title>
+ <para>
+ Line-based lists have one value per line. For example, the
+ <varname>Upstream-Contact</varname> field contains a line-based
+ list of contact addresses.
+ </para>
+ </section>
+
+ <section id="formatted-text">
+ <title>Formatted text</title>
+ <para>
+ Formatted text fields use the same rules as the long description
+ in a package's <varname>Description</varname> field in Debian
+ control files. In some but not all cases, the first line may have
+ special meaning as a synopsis, similar to how the
+ <varname>Description</varname> field uses it for the short
+ description. See Debian Policy's section 5.6.13, <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-f-Description"><quote>Description</quote></ulink>,
+ for details. For example, <varname>Disclaimer</varname> is a
+ formatted text field that has no special first line, and
+ <varname>License</varname> is a formatted text field where the
+ first line indicates the short name or names of the licenses.
+ </para>
+ </section>
+ </section>
+
+ <section id="paragraphs">
+ <title>Paragraphs</title>
+ <para>
+ There are three kinds of paragraphs. The first paragraph in the file
+ is called the <link linkend="header-paragraph">header paragraph</link>.
+ Every other paragraph is either a <link
+ linkend="files-paragraph">Files paragraph</link> or a <link
+ linkend="stand-alone-license-paragraph">stand-alone License
+ paragraph</link>. This is similar to source and binary package
+ paragraphs in <filename>debian/control</filename> files.
+ </para>
+
+ <section id="header-paragraph">
+ <title>Header paragraph (once)</title>
+ <para>
+ The following fields may be present in a header paragraph.
+ </para>
+ <itemizedlist>
+ <listitem>
+ <para>
+ <link linkend="format-field">Format</link>: required.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="upstream-name-field">Upstream-Name</link>:
+ optional.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link
+ linkend="upstream-contact-field">Upstream-Contact</link>:
+ optional.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="source-field">Source</link>: optional.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="disclaimer-field">Disclaimer</link>:
+ optional.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="comment-field">Comment</link>: optional.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="license-field">License</link>: optional.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="copyright-field">Copyright</link>: optional.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <para>
+ The <varname>Copyright</varname> and <varname>License</varname> fields
+ in the <emphasis>header paragraph</emphasis> may complement but do not
+ replace the <emphasis>Files paragraphs</emphasis>. They can be used
+ to summarise the copyright notices or redistribution terms for the
+ whole package, such as when a work combines a permissive and a
+ copyleft license and the combination requires some clarification, or
+ to document a <emphasis>compilation copyright</emphasis> and license.
+ It is possible to use only <varname>License</varname> in the header
+ paragraph, but <varname>Copyright</varname> alone makes no sense.
+ </para>
+
+ <section id="example-header-paragraph">
+ <title>Example header paragraph</title>
+<programlisting>Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: SOFTware
+Upstream-Contact: John Doe <john.doe@example.com>
+Source: http://www.example.com/software/project</programlisting>
+ </section>
+ </section>
+
+ <section id="files-paragraph">
+ <title>Files paragraph (repeatable)</title>
+ <para>
+ The declaration of copyright and license for files may consist of
+ one or more paragraphs. In the simplest case, a single paragraph
+ with <literal>Files: *</literal> can be used to state the license
+ and copyright for the whole package. Only the license and
+ copyright information required by the Debian archive is required
+ to be listed here.
+ </para>
+ <para>
+ The following fields may be present in a Files paragraph.
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <link linkend="files-field">Files</link>: required.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="copyright-field">Copyright</link>: required.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="license-field">License</link>: required.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="comment-field">Comment</link>: optional.
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ <section id="example-files-paragraph">
+ <title>Example files paragraphs</title>
+<programlisting>Files: *
+Copyright: 1975-2010 Ulla Upstream
+License: GPL-2+
+
+Files: debian/*
+Copyright: 2010 Daniela Debianizer
+License: GPL-2+
+
+Files: debian/patches/fancy-feature
+Copyright: 2010 Daniela Debianizer
+License: GPL-3+
+
+Files: */*.1
+Copyright: 2010 Manuela Manpager
+License: GPL-2+</programlisting>
+ <para>
+ In this example, all files are copyright by the upstream and licensed
+ under the GPL, version 2 or later, with three exceptions. All the
+ Debian packaging files are copyright by the packager, and further one
+ specific file providing a new feature is licensed differently.
+ Finally, there are some manual pages added to the package, written by
+ a third person.
+ </para>
+ <para>
+ Since the license of the manual pages is the same as the other
+ files in the package, the last paragraph above could instead be
+ combined with the first paragraph, listing both copyright
+ statements in one <varname>Copyright</varname> field. Whether
+ to combine paragraphs with the same license is left to the
+ discretion of the author of the
+ <filename>debian/copyright</filename> file.
+ </para>
+ </section>
+ </section>
+
+ <section id="stand-alone-license-paragraph">
+ <title>Stand-alone License Paragraph (optional, repeatable)</title>
+ <para>
+ Stand-alone <varname>License</varname> paragraphs can be used to
+ provide the full license text for a given license once, instead of
+ repeating it in each <varname>Files</varname> paragraph that refers to
+ it. The first line of the <varname>License</varname> field must be a
+ single license short name or a short name followed by a license
+ exception.
+ </para>
+ <para>
+ The following fields may be present in a stand-alone License
+ paragraph.
+ </para>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <link linkend="license-field">License</link>: required.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ <link linkend="comment-field">Comment</link>: optional.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <example>
+ <title>tri-licensed files</title>
+<programlisting>Files: src/js/editline/*
+Copyright: 1993, John Doe
+ 1993, Joe Average
+License: MPL-1.1 or GPL-2 or LGPL-2.1
+
+License: MPL-1.1
+ [LICENSE TEXT]
+
+License: GPL-2
+ [LICENSE TEXT]
+
+License: LGPL-2.1
+ [LICENSE TEXT]</programlisting>
+ </example>
+
+ <example>
+ <title>recurrent license</title>
+<programlisting>Files: src/js/editline/*
+Copyright: 1993, John Doe
+ 1993, Joe Average
+License: MPL-1.1
+
+Files: src/js/fdlibm/*
+Copyright: 1993, J-Random Corporation
+License: MPL-1.1
+
+License: MPL-1.1
+ [LICENSE TEXT]</programlisting>
+ </example>
+ </section>
+ </section>
+
+ <section id="fields">
+ <title>Fields</title>
+ <para>
+ The following fields are defined for use in
+ <filename>debian/copyright</filename>.
+ </para>
+
+ <section id="format-field">
+ <title><varname>Format</varname></title>
+ <para>
+ Single-line: URI of the format specification. The field that
+ should be used for the current version of this document is:
+<programlisting>Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/</programlisting>
+ </para>
+ </section>
+
+ <section id="upstream-name-field">
+ <title><varname>Upstream-Name</varname></title>
+ <para>
+ Single-line: the name upstream uses for the software
+ </para>
+ </section>
+
+ <section id="upstream-contact-field">
+ <title><varname>Upstream-Contact</varname></title>
+ <para>
+ Line-based list: the preferred address(es) to reach the upstream
+ project. May be free-form text, but by convention will usually be
+ written as a list of RFC5322 addresses or URIs.
+ </para>
+ </section>
+
+ <section id="source-field">
+ <title><varname>Source</varname></title>
+ <para>
+ Formatted text, no synopsis: an explanation of where the upstream
+ source came from. Typically this would be a URL, but it might be a
+ free-form explanation. The Debian Policy section <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>
+ requires this information unless there are no upstream sources,
+ which is mainly the case for native Debian packages. If the
+ upstream source has been modified to remove non-free parts, that
+ should be explained in this field.
+ </para>
+ </section>
+
+ <section id="disclaimer-field">
+ <title><varname>Disclaimer</varname></title>
+ <para>
+ Formatted text, no synopsis: this field is used for non-free or
+ contrib packages to say that they are not part of Debian and to
+ explain why (see Debian Policy section <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>).
+ </para>
+ </section>
+
+ <section id="comment-field">
+ <title><varname>Comment</varname></title>
+ <para>
+ Formatted text, no synopsis: this field can provide additional
+ information. For example, it might quote an e-mail from upstream
+ justifying why the license is acceptable to the main archive, or an
+ explanation of how this version of the package has been forked from
+ a version known to be DFSG-free, even though the current upstream
+ version is not.
+ </para>
+ </section>
+
+ <section id="license-field">
+ <title><varname>License</varname></title>
+ <para>
+ Formatted text, with synopsis. In the header paragraph, this field
+ gives the license information for the package as a whole, which may
+ be different or simplified from a combination of all the per-file
+ license information. In a Files paragraph, this field gives the
+ licensing terms for the files listed in the <varname>Files</varname>
+ field for this paragraph. In a stand-alone License paragraph, it
+ gives the licensing terms for those paragraphs which reference it.
+ </para>
+ <para>
+ First line: an abbreviated name for the license, or expression
+ giving alternatives (see the <link linkend="license-short-name">Short
+ name</link> section for a list of standard abbreviations). If
+ there are licenses present in the package without a standard short
+ name, an arbitrary short name may be assigned for these licenses.
+ These arbitrary names are only guaranteed to be unique within a
+ single copyright file.
+ </para>
+ <para>
+ If there are no remaining lines, then all of the short names
+ or short names followed by license exceptions making up the
+ first line must be described in <link
+ linkend="stand-alone-license-paragraph">stand-alone License
+ paragraphs</link>. Otherwise, this field should either
+ include the full text of the license(s) or include a pointer to the
+ license file under <filename>/usr/share/common-licenses</filename>.
+ This field should include all text needed in order to fulfill both
+ Debian Policy's requirement for including a copy of the software's
+ distribution license (<ulink
+ url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>),
+ and any license requirements to include warranty disclaimers or
+ other notices with the binary package.
+ </para>
+ </section>
+
+ <section id="copyright-field">
+ <title><varname>Copyright</varname></title>
+ <para>
+ Formatted text, no synopsis: one or more free-form copyright
+ statements. Any formatting is permitted; see the examples below
+ for some ideas for how to structure the field to make it easier to
+ read. In the header paragraph, this field gives the copyright
+ information for the package as a whole, which may be different or
+ simplified from a combination of all the per-file copyright
+ information. In the Files paragraphs, it gives the copyright
+ information that applies to the files matched by the
+ <varname>Files</varname> pattern. If a work has no copyright holder
+ (i.e., it is in the public domain), that information should be
+ recorded here.
+ </para>
+ <para>
+ The <varname>Copyright</varname> field collects all relevant
+ copyright notices for the files of this paragraph. Not all
+ copyright notices may apply to every individual file, and years of
+ publication for one copyright holder may be gathered together. For
+ example, if file A has:
+<programlisting>Copyright 2008 John Smith
+Copyright 2009 Angela Watts</programlisting>
+ and file B has:
+<programlisting>Copyright 2010 Angela Watts</programlisting>
+ a single paragraph may still be used for both files. The
+ <varname>Copyright</varname> field for that paragraph would
+ contain:
+<programlisting>Copyright 2008 John Smith
+Copyright 2009, 2010 Angela Watts</programlisting>
+ </para>
+ <para>
+ The <varname>Copyright</varname> field may contain the original
+ copyright statement copied exactly (including the word
+ <quote>Copyright</quote>), or it may shorten the text or merge it
+ with other copyright statements as described above, as long as it
+ does not sacrifice information. Examples in this specification use
+ both forms.
+ </para>
+ </section>
+
+ <section id="files-field">
+ <title><varname>Files</varname></title>
+ <para>
+ Whitespace-separated list: list of patterns indicating files covered
+ by the license and copyright specified in this paragraph.
+ </para>
+ <para>
+ Filename patterns in the <varname>Files</varname> field are
+ specified using a simplified shell glob syntax. Patterns are
+ separated by whitespace.
+ <itemizedlist>
+ <listitem>
+ <para>
+ Only the wildcards <literal>*</literal> and <literal>?</literal>
+ apply; the former matches any number of characters (including
+ none), the latter a single character. Both match slashs
+ (<literal>/</literal>) and leading dots, unlike shell globs.
+ The pattern <literal>*.in</literal> therefore matches any
+ file whose name ends in <literal>.in</literal> anywhere in
+ the source tree, not just at the top level.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Patterns match pathnames that start at the root of the source
+ tree. Thus, <quote><filename>Makefile.in</filename></quote>
+ matches only the file at the root of the tree, but
+ <quote><filename>*/Makefile.in</filename></quote> matches at
+ any depth.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The backslash (<literal>\</literal>) is used to remove the
+ magic from the next character; see table below.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <informaltable>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Escape sequence</entry>
+ <entry>Matches</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><literal>\*</literal></entry>
+ <entry>star (asterisk)</entry>
+ </row>
+ <row>
+ <entry><literal>\?</literal></entry>
+ <entry>question mark</entry>
+ </row>
+ <row>
+ <entry><literal>\\</literal></entry>
+ <entry>backslash</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ Any other character following a backslash is an error.
+ </para>
+ <para>
+ Multiple <varname>Files</varname> paragraphs are allowed. The last
+ paragraph that matches a particular file applies to it. More
+ general paragraphs should therefore be given first, followed by
+ more specific overrides.
+ </para>
+ <para>
+ Exclusions are only supported by adding <varname>Files</varname>
+ paragraphs to override the previous match.
+ </para>
+ </section>
+
+ </section>
+ <section id="license-specification">
+ <title>License specification</title>
+
+ <section id="license-short-name">
+ <title>Short name</title>
+ <para>
+ Much of the value of a machine-parseable copyright file lies in being
+ able to correlate the licenses of multiple pieces of software. To that
+ end, this spec defines standard short names for a number of commonly
+ used licenses, which can be used in the first line of a
+ <varname>License</varname> field.
+ </para>
+ <para>
+ These short names have the specified meanings across all uses of this
+ file format, and <emphasis>must not</emphasis> be used to refer to any
+ other licenses. Parsers may thus rely on these short names referring
+ to the same licenses wherever they occur, without needing to parse or
+ compare the full license text.
+ </para>
+ <para>
+ From time to time, licenses may be added to or removed from the list of
+ standard short names. Such changes in the list of short names will
+ always be accompanied by changes to the version of this standard
+ and to the recommended
+ <varname>Format</varname> value. Implementers who are parsing copyright
+ files should take care not to assume anything about the meaning of
+ license short names for unknown <varname>Format</varname> versions.
+ </para>
+ <para>
+ Use of a standard short name does not override the Debian Policy
+ requirement to include the full license text in
+ <filename>debian/copyright</filename>, nor any requirements in the
+ license of the work regarding reproduction of legal notices. This
+ information must still be included in the <varname>License</varname>
+ field, either in a stand-alone License paragraph or in the relevant
+ files paragraph.
+ </para>
+ <para>
+ For licenses that have multiple versions in use, the short name is
+ formed from the general short name of the license family, followed
+ by a dash and the version number. If the version number is
+ omitted, the lowest version number is implied. When the license
+ grant permits using the terms of any later version of that
+ license, add a plus sign to the end of the short name. For
+ example, the short name <literal>GPL</literal> refers to the GPL
+ version 1 and is equivalent to <literal>GPL-1</literal>, although
+ the latter is clearer and therefore preferred. If the package may
+ be distributed under the GPL version 1 or any later version, use a
+ short name of <literal>GPL-1+</literal>.
+ </para>
+ <para>
+ For <link linkend="spdx">SPDX</link> compatibility, versions with
+ trailing <emphasis>dot-zeroes</emphasis> are considered to be
+ equivalent to versions without (e.g., <quote>2.0.0</quote> is
+ considered equal to <quote>2.0</quote> and <quote>2</quote>).
+ </para>
+ <para>
+ Currently, the full text of the licenses is only available in the
+ <ulink url="http://spdx.org/licenses">SPDX Open Source License
+ Registry</ulink>.
+ </para>
+ <informaltable>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Keyword</entry>
+ <entry>Meaning</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>public-domain</entry>
+ <entry>
+ No license required for any purpose; the work is not subject to
+ copyright in any jurisdiction.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Apache
+ </entry>
+ <entry>
+ Apache license
+ <ulink url="http://spdx.org/licenses/Apache-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/Apache-2.0">2.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Artistic
+ </entry>
+ <entry>
+ Artistic license
+ <ulink url="http://spdx.org/licenses/Artistic-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/Artistic-2.0">2.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ BSD-2-clause
+ </entry>
+ <entry>
+ Berkeley software distribution license,
+ <ulink url="http://spdx.org/licenses/BSD-2-Clause">2-clause
+ version</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ BSD-3-clause
+ </entry>
+ <entry>
+ Berkeley software distribution license,
+ <ulink url="http://spdx.org/licenses/BSD-3-Clause">3-clause
+ version</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ BSD-4-clause
+ </entry>
+ <entry>
+ Berkeley software distribution license,
+ <ulink url="http://spdx.org/licenses/BSD-4-Clause">4-clause
+ version</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ ISC
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/ISC">Internet Software
+ Consortium</ulink>, sometimes also known as the OpenBSD License.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY
+ </entry>
+ <entry>
+ Creative Commons Attribution license
+ <ulink url="http://spdx.org/licenses/CC-BY-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-SA
+ </entry>
+ <entry>
+ Creative Commons Attribution Share Alike license
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-ND
+ </entry>
+ <entry>
+ Creative Commons Attribution No Derivatives license
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-NC
+ </entry>
+ <entry>
+ Creative Commons Attribution Non-Commercial license
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-NC-SA
+ </entry>
+ <entry>
+ Creative Commons Attribution Non-Commercial Share Alike license
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-NC-ND
+ </entry>
+ <entry>
+ Creative Commons Attribution Non-Commercial No Derivatives
+ license
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC0
+ </entry>
+ <entry>
+ Creative Commons Zero
+ <ulink url="http://spdx.org/licenses/CC0-1.0">1.0 Universal</ulink>.
+ Omit <quote>Universal</quote> from the license version when
+ forming the short name.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CDDL
+ </entry>
+ <entry>
+ Common Development and Distribution License
+ <ulink url="http://spdx.org/licenses/CDDL-1.0">1.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CPL
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/CPL-1.0">IBM Common Public
+ License</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ EFL
+ </entry>
+ <entry>
+ The Eiffel Forum License
+ <ulink url="http://spdx.org/licenses/EFL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/EFL-2.0">2.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Expat
+ </entry>
+ <entry>
+ The <ulink url="http://www.jclark.com/xml/copying.txt">Expat</ulink>
+ license.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ GPL
+ </entry>
+ <entry>
+ GNU General Public License
+ <ulink url="http://spdx.org/licenses/GPL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/GPL-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/GPL-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ LGPL
+ </entry>
+ <entry>
+ GNU Lesser General Public License
+ <ulink url="http://spdx.org/licenses/LGPL-2.1">2.1</ulink>,
+ <ulink url="http://spdx.org/licenses/LGPL-3.0">3.0</ulink>, or
+ GNU Library General Public License
+ <ulink url="http://spdx.org/licenses/LGPL-2.0">2.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ GFDL
+ </entry>
+ <entry>
+ GNU Free Documentation License 1.0,
+ <ulink url="http://spdx.org/licenses/GFDL-1.1">1.1</ulink>,
+ <ulink url="http://spdx.org/licenses/GFDL-1.2">1.2</ulink>, or
+ <ulink url="http://spdx.org/licenses/GFDL-1.3">1.3</ulink>.
+ Use GFDL-NIV instead if there are no Front-Cover or
+ Back-Cover Texts or Invariant Sections.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ GFDL-NIV
+ </entry>
+ <entry>
+ GNU Free Documentation License, with no Front-Cover or
+ Back-Cover Texts or Invariant Sections. Use the same
+ version numbers as GFDL.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ LPPL
+ </entry>
+ <entry>
+ <ulink url="http://www.latex-project.org/lppl/">LaTeX Project
+ Public License</ulink>
+ <ulink url="http://spdx.org/licenses/LPPL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/LPPL-1.1">1.1</ulink>,
+ <ulink url="http://spdx.org/licenses/LPPL-1.2">1.2</ulink>,
+ <ulink url="http://spdx.org/licenses/LPPL-1.3c">1.3c</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ MPL
+ </entry>
+ <entry>
+ Mozilla Public License
+ <ulink url="http://spdx.org/licenses/MPL-1.1">1.1</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Perl
+ </entry>
+ <entry>
+ <ulink url="http://dev.perl.org/licenses/">Perl</ulink> license
+ (use <quote><literal>GPL-1+ or Artistic-1</literal></quote>
+ instead).
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Python
+ </entry>
+ <entry>
+ Python license
+ <ulink url="http://spdx.org/licenses/Python-2.0">2.0</ulink>.
+ </entry>
+ <!-- See https://fossbazaar.org/pipermail/spdx-legal/2011-February/000010.html -->
+ </row>
+ <row>
+ <entry>
+ QPL
+ </entry>
+ <entry>
+ Q Public License <ulink
+ url="http://spdx.org/licenses/QPL-1.0">1.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ W3C
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/W3C">W3C Software
+ License</ulink> For more information, consult the
+ <ulink
+ url="http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620">W3C
+ Intellectual Rights FAQ</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Zlib
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/Zlib">
+ zlib/libpng license</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Zope
+ </entry>
+ <entry>
+ Zope Public License 1.0,
+ <ulink url="http://spdx.org/licenses/ZPL-1.1">1.1</ulink>,
+ <ulink url="http://spdx.org/licenses/ZPL-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/ZPL-2.1">2.1</ulink>.
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ <para>
+ There are <ulink
+ url="http://en.wikipedia.org/wiki/MIT_License#Various_versions">many
+ versions of the MIT license</ulink>. Please use Expat instead, when it
+ matches.
+ </para>
+ <para>
+ An exception or clarification to a license is signalled in plain text,
+ by appending <literal>with
+ <varname><replaceable>keywords</replaceable></varname>
+ exception</literal> to the short name. This document provides a list
+ of keywords that must be used when referring to the most frequent
+ exceptions. When exceptions other than these are in effect that
+ modify a common license by granting additional permissions, you may
+ use an arbitrary keyword not taken from the below list of keywords.
+ When a license differs from a common license because of added
+ restrictions rather than because of added permissions, a distinct
+ short name should be used instead of <literal>with
+ <varname><replaceable>keywords</replaceable></varname>
+ exception</literal>.
+ </para>
+ <para>
+ Only one exception may be specified for each license within a given
+ license specification. If more than one exception applies to a single
+ license, an arbitrary short name indicating that combination of
+ multiple exceptions must be used instead.
+ </para>
+ <para>
+ The GPL <literal>Font</literal> exception refers to the text added to
+ the license notice of each file as specified at <ulink
+ url="http://www.gnu.org/licenses/gpl-faq#FontException">How does the
+ GPL apply to fonts</ulink>. The precise text corresponding to this
+ exception is:
+<programlisting>As a special exception, if you create a document which uses this font,
+and embed this font or unaltered portions of this font into the
+document, this font does not by itself cause the resulting document to
+be covered by the GNU General Public License. This exception does not
+however invalidate any other reasons why the document might be covered
+by the GNU General Public License. If you modify this font, you may
+extend this exception to your version of the font, but you are not
+obligated to do so. If you do not wish to do so, delete this exception
+statement from your version.</programlisting>
+ </para>
+ <para>
+ The GPL <literal>OpenSSL</literal> exception gives permission to
+ link GPL-licensed code with the OpenSSL library, which contains
+ GPL-incompatible clauses. For more information, see <ulink
+ url="http://www.gnome.org/~markmc/openssl-and-the-gpl">The OpenSSL
+ License and The GPL</ulink> by Mark McLoughlin and the message
+ <ulink
+ url="http://lists.debian.org/debian-legal/2004/05/msg00595.html">middleman
+ software license conflicts with OpenSSL</ulink> by Mark McLoughlin
+ on the <emphasis>debian-legal</emphasis> mailing list. The text
+ corresponding to this exception is:
+<programlisting>In addition, as a special exception, the copyright holders give
+permission to link the code of portions of this program with the
+OpenSSL library under certain conditions as described in each
+individual source file, and distribute linked combinations including
+the two.
+
+You must obey the GNU General Public License in all respects for all
+of the code used other than OpenSSL. If you modify file(s) with this
+exception, you may extend this exception to your version of the
+file(s), but you are not obligated to do so. If you do not wish to do
+so, delete this exception statement from your version. If you delete
+this exception statement from all source files in the program, then
+also delete it here.</programlisting>
+ </para>
+
+ <section id="public-domain">
+ <title>Public domain</title>
+ <para>
+ The <varname>License</varname> short name
+ <literal>public-domain</literal> does not refer to a set of license
+ terms. There are some works which are not subject to copyright in
+ any jurisdiction and therefore no license is required for any
+ purpose covered by copyright law. This short name is an explicit
+ declaration that the associated files are <quote>in the public
+ domain</quote>.
+ </para>
+ <para>
+ Widespread misunderstanding about copyright in general, and the
+ public domain in particular, results in the common assertion that a
+ work is in the public domain when this is partly or wholly untrue
+ for that work. The <ulink
+ url="http://en.wikipedia.org/wiki/Public_domain">Wikipedia article
+ on public domain</ulink> is a useful reference for this subject.
+ </para>
+ <para>
+ When the <varname>License</varname> field in a paragraph has the
+ short name <literal>public-domain</literal>, the remaining lines of
+ the field <emphasis>must</emphasis> explain exactly what exemption
+ the corresponding files for that paragraph have from default
+ copyright restrictions.
+ </para>
+ </section>
+ </section>
+
+ <section id="license-syntax">
+ <title>Syntax</title>
+ <para>
+ License names are case-insensitive, and may not contain spaces.
+ </para>
+ <para>
+ In case of multi-licensing, the license short names are separated by
+ <literal>or</literal> when the user can chose between different
+ licenses, and by <literal>and</literal> when use of the work must
+ simultaneously comply with the terms of multiple licenses.
+ </para>
+ <para>
+ For instance, this is a simple, <quote>GPL version 2 or later</quote>
+ field:
+<programlisting>License: GPL-2+</programlisting>
+ This is a dual-licensed GPL/Artistic work such as Perl:
+<programlisting>License: GPL-1+ or Artistic</programlisting>
+ This is for a file that has both GPL and classic BSD code in it:
+<programlisting>License: GPL-2+ and BSD-3-clause</programlisting>
+ For the most complex cases, a comma is used to disambiguate the
+ priority of <literal>or</literal>s and <literal>and</literal>s.
+ The conjunction <quote><literal>and</literal></quote> has priority over
+ <quote><literal>or</literal></quote> unless preceded by a comma. For
+ instance:
+ </para>
+ <simpara>
+ <literal>A or B and C</literal> means <literal>A or (B and C)</literal>.
+ </simpara>
+ <simpara>
+ <literal>A or B, and C</literal> means <literal>(A or B) and
+ C</literal>.
+ </simpara>
+ <para>
+ This is for a file that has Perl code and classic BSD code in it:
+<programlisting>License: GPL-2+ or Artistic-2.0, and BSD-3-clause</programlisting>
+ A <literal>GPL-2+</literal> work with the <literal>OpenSSL</literal>
+ exception is in effect a dual-licensed work that can be redistributed
+ either under the <literal>GPL-2+</literal>, or under the
+ <literal>GPL-2+</literal> with the <literal>OpenSSL</literal>
+ exception. It is thus expressed as <literal>GPL-2+ with OpenSSL
+ exception</literal>. A possible <varname>License</varname> field for
+ such a license is:
+<programlisting>License: GPL-2+ with OpenSSL exception
+ This program is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later
+ version.
+ .
+ In addition, as a special exception, the author of this
+ program gives permission to link the code of its
+ release with the OpenSSL project's "OpenSSL" library (or
+ with modified versions of it that use the same license as
+ the "OpenSSL" library), and distribute the linked
+ executables. You must obey the GNU General Public
+ License in all respects for all of the code used other
+ than "OpenSSL". If you modify this file, you may extend
+ this exception to your version of the file, but you are
+ not obligated to do so. If you do not wish to do so,
+ delete this exception statement from your version.
+ .
+ This program is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the GNU General Public License for more
+ details.
+ .
+ You should have received a copy of the GNU General Public
+ License along with this package; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 2 can be found in the file
+ `/usr/share/common-licenses/GPL-2'.</programlisting>
+ </para>
+ </section>
+
+ <section id="spdx">
+ <title>SPDX</title>
+ <para>
+ <ulink url="http://spdx.org/">SPDX</ulink> is an attempt to standardize
+ a format for communicating the components, licenses and copyrights
+ associated with a software package. It and the machine-readable
+ <filename>debian/copyright</filename> format attempt to be somewhat
+ compatible. However, the two formats have different aims, and so the
+ formats are different. The <ulink
+ url="http://wiki.debian.org/Proposals/CopyrightFormat">DEP5 wiki
+ page</ulink> will be used to track the differences.
+ </para>
+ </section>
+ </section>
+
+ <section id="examples">
+ <title>Examples</title>
+ <example>
+ <title>Simple</title>
+ <para>
+ A possible <filename>debian/copyright</filename> file for the program
+ <quote>X Solitaire</quote> distributed in the Debian source package
+ <literal>xsol</literal>:
+<programlisting><![CDATA[Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: X Solitaire
+Source: ftp://ftp.example.com/pub/games
+
+Files: *
+Copyright: Copyright 1998 John Doe <jdoe@example.com>
+License: GPL-2+
+ This program is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later
+ version.
+ .
+ This program is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the GNU General Public License for more
+ details.
+ .
+ You should have received a copy of the GNU General Public
+ License along with this package; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 2 can be found in the file
+ `/usr/share/common-licenses/GPL-2'.
+
+Files: debian/*
+Copyright: Copyright 1998 Jane Smith <jsmith@example.net>
+License: GPL-2+
+ [LICENSE TEXT]]]></programlisting>
+ </para>
+ </example>
+
+ <example>
+ <title>Complex</title>
+ <para>
+ A possible <filename>debian/copyright</filename> file for the program
+ <quote>Planet Venus</quote>, distributed in the Debian source
+ package <literal>planet-venus</literal>:
+<programlisting><![CDATA[Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: Planet Venus
+Upstream-Contact: John Doe <jdoe@example.com>
+Source: http://www.example.com/code/venus
+
+Files: *
+Copyright: 2008, John Doe <jdoe@example.com>
+ 2007, Jane Smith <jsmith@example.org>
+ 2007, Joe Average <joe@example.org>
+ 2007, J. Random User <jr@users.example.com>
+License: PSF-2
+ [LICENSE TEXT]
+
+Files: debian/*
+Copyright: 2008, Dan Developer <dan@debian.example.com>
+License: permissive
+ Copying and distribution of this package, with or without
+ modification, are permitted in any medium without royalty
+ provided the copyright notice and this notice are
+ preserved.
+
+Files: debian/patches/theme-diveintomark.patch
+Copyright: 2008, Joe Hacker <hack@example.org>
+License: GPL-2+
+ [LICENSE TEXT]
+
+Files: planet/vendor/compat_logging/*
+Copyright: 2002, Mark Smith <msmith@example.org>
+License: MIT
+ [LICENSE TEXT]
+
+Files: planet/vendor/httplib2/*
+Copyright: 2006, John Brown <brown@example.org>
+License: MIT2
+ Unspecified MIT style license.
+
+Files: planet/vendor/feedparser.py
+Copyright: 2007, Mike Smith <mike@example.org>
+License: PSF-2
+ [LICENSE TEXT]
+
+Files: planet/vendor/htmltmpl.py
+Copyright: 2004, Thomas Brown <coder@example.org>
+License: GPL-2+
+ This program is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later
+ version.
+ .
+ This program is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the GNU General Public License for more
+ details.
+ .
+ You should have received a copy of the GNU General Public
+ License along with this package; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 2 can be found in the file
+ `/usr/share/common-licenses/GPL-2'.]]></programlisting>
+ </para>
+ </example>
+ </section>
+
+</article>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<?xml-stylesheet type="text/xsl"
- href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"?>
-
-<!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.5//EN'
- 'http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd'>
-
-<article class="specification" status="draft" lang="en" id="copyright-format">
- <articleinfo>
- <title>
- Machine-readable <filename>debian/copyright</filename> file
- </title>
- <subtitle>Version 1.0</subtitle>
- <legalnotice>
- <para>
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved.
- </para>
- </legalnotice>
- <abstract>
- <para>
- Establishes a standard, machine-readable format for
- <filename>debian/copyright</filename> files within Debian packages
- to facilitate automated checking and reporting of licenses for
- packages and sets of packages. This specification was originally
- drafted as
- <ulink url="http://dep.debian.net/deps/dep5/">DEP-5</ulink>.
- </para>
- </abstract>
- </articleinfo>
-
- <section id="introduction">
- <title>Introduction</title>
- <para>
- This document describes a standard, machine-interpretable format for
- the <filename>debian/copyright</filename> file. This file is one of
- the most important files in Debian packaging, but, prior to this
- specification, no standard format was defined for it and its
- contents varied tremendously across packages. This made it
- difficult to automatically extract licensing information.
- </para>
- <para>
- Use of this specification is optional.
- </para>
- <para>
- Nothing in this proposal supersedes or modifies any of the requirements
- specified in Debian Policy regarding the appropriate detail or
- granularity to use when documenting copyright and license status in
- <filename>debian/copyright</filename>.
- </para>
- </section>
-
- <section id="rationale">
- <title>Rationale</title>
- <para>
- The diversity of free software licenses means that Debian needs to care
- not only about the freeness of a given work, but also its license's
- compatibility with the other parts of Debian it uses.
- </para>
- <para>
- The arrival of the GPL version 3, its incompatibility with version 2, and
- our inability to spot the software where the incompatibility might be
- problematic is one prominent occurrence of this limitation.
- </para>
- <para>
- There are earlier precedents, also. One is the GPL/OpenSSL
- incompatibility. Apart from grepping
- <filename>debian/copyright</filename>, which is prone to numerous false
- positives (packaging under the GPL but software under another license) or
- negatives (GPL software but with an <quote>OpenSSL special
- exception</quote> dual licensing form), there is no reliable way to know
- which software in Debian might be problematic.
- </para>
- <para>
- And there is more to come. There are issues with shipping GPLv2-only
- software with a CDDL operating system such as Nexenta. The GPL version 3
- solves this issue, but not all GPL software can switch to it and we have
- no way to know how much of Debian should be stripped from such a system.
- </para>
- <para>
- Even where licenses are DFSG-free and mutually compatible, users may
- wish a way to identify software under certain licenses (for example,
- if they have a problem with the Affero GPL).
- </para>
- </section>
-
- <section id="acknowledgements">
- <title>Acknowledgements</title>
- <para>
- Many people have worked on this specification over the years. The
- following alphabetical list is incomplete; please suggest missing people:
- Russ Allbery,
- Ben Finney,
- Sam Hocevar,
- Steve Langasek,
- Charles Plessy,
- Noah Slater,
- Jonas Smedegaard,
- Lars Wirzenius.
- </para>
- </section>
-
- <section id="file-syntax">
- <title>File syntax</title>
- <para>
- The <filename>debian/copyright</filename> file must be
- machine-interpretable, yet human-readable, while communicating all
- mandated upstream information, copyright notices and licensing details.
- </para>
- <para>
- The syntax of the file is the same as for other Debian control files, as
- specified in the Debian Policy Manual. See its <ulink
- url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-controlsyntax">section
- 5.1</ulink> for details. Extra fields can be added to any paragraph. No
- prefixing is necessary or desired, but please avoid names similar to
- standard ones so that mistakes are easier to catch. Future versions of
- the <filename>debian/copyright</filename> specification will attempt to
- avoid conflicting specifications for widely used extra fields.
- </para>
- <para>
- The file consists of two or more paragraphs. At minimum, the file
- must include one <link linkend="header-paragraph">header
- paragraph</link> and one <link linkend="files-paragraph">Files
- paragraph</link>.
- </para>
- <para>
- There are four types of fields. The definition for each field in this
- document indicates which type of value it takes.
- </para>
-
- <section id="single-line">
- <title>Single-line values</title>
- <para>
- The entire value of a single-line field must be on a single line.
- For example, the <varname>Format</varname> field has a single-line
- value specifying the version of the machine-readable format that
- is used.
- </para>
- </section>
-
- <section id="white-space-lists">
- <title>Whitespace-separated lists</title>
- <para>
- Field values defined as whitespace-separated lists may be on one
- line or many. Values in the list are separated by one or more
- whitespace characters (space, tab, or newline). For example, the
- <varname>Files</varname> field contains a whitespace-separated
- list of filename patterns.
- </para>
- </section>
-
- <section id="line-based-lists">
- <title>Line-based lists</title>
- <para>
- Line-based lists have one value per line. For example, the
- <varname>Upstream-Contact</varname> field contains a line-based
- list of contact addresses.
- </para>
- </section>
-
- <section id="formatted-text">
- <title>Formatted text</title>
- <para>
- Formatted text fields use the same rules as the long description
- in a package's <varname>Description</varname> field in Debian
- control files. In some but not all cases, the first line may have
- special meaning as a synopsis, similar to how the
- <varname>Description</varname> field uses it for the short
- description. See Debian Policy's section 5.6.13, <ulink
- url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-f-Description"><quote>Description</quote></ulink>,
- for details. For example, <varname>Disclaimer</varname> is a
- formatted text field that has no special first line, and
- <varname>License</varname> is a formatted text field where the
- first line indicates the short name or names of the licenses.
- </para>
- </section>
- </section>
-
- <section id="paragraphs">
- <title>Paragraphs</title>
- <para>
- There are three kinds of paragraphs. The first paragraph in the file
- is called the <link linkend="header-paragraph">header paragraph</link>.
- Every other paragraph is either a <link
- linkend="files-paragraph">Files paragraph</link> or a <link
- linkend="stand-alone-license-paragraph">stand-alone License
- paragraph</link>. This is similar to source and binary package
- paragraphs in <filename>debian/control</filename> files.
- </para>
-
- <section id="header-paragraph">
- <title>Header paragraph (once)</title>
- <para>
- The following fields may be present in a header paragraph.
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <link linkend="format-field">Format</link>: required.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="upstream-name-field">Upstream-Name</link>:
- optional.
- </para>
- </listitem>
- <listitem>
- <para>
- <link
- linkend="upstream-contact-field">Upstream-Contact</link>:
- optional.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="source-field">Source</link>: optional.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="disclaimer-field">Disclaimer</link>:
- optional.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="comment-field">Comment</link>: optional.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="license-field">License</link>: optional.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="copyright-field">Copyright</link>: optional.
- </para>
- </listitem>
- </itemizedlist>
- <para>
- The <varname>Copyright</varname> and <varname>License</varname> fields
- in the <emphasis>header paragraph</emphasis> may complement but do not
- replace the <emphasis>Files paragraphs</emphasis>. They can be used
- to summarise the copyright notices or redistribution terms for the
- whole package, such as when a work combines a permissive and a
- copyleft license and the combination requires some clarification, or
- to document a <emphasis>compilation copyright</emphasis> and license.
- It is possible to use only <varname>License</varname> in the header
- paragraph, but <varname>Copyright</varname> alone makes no sense.
- </para>
-
- <section id="example-header-paragraph">
- <title>Example header paragraph</title>
-<programlisting>Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: SOFTware
-Upstream-Contact: John Doe <john.doe@example.com>
-Source: http://www.example.com/software/project</programlisting>
- </section>
- </section>
-
- <section id="files-paragraph">
- <title>Files paragraph (repeatable)</title>
- <para>
- The declaration of copyright and license for files may consist of
- one or more paragraphs. In the simplest case, a single paragraph
- with <literal>Files: *</literal> can be used to state the license
- and copyright for the whole package. Only the license and
- copyright information required by the Debian archive is required
- to be listed here.
- </para>
- <para>
- The following fields may be present in a Files paragraph.
- </para>
-
- <itemizedlist>
- <listitem>
- <para>
- <link linkend="files-field">Files</link>: required.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="copyright-field">Copyright</link>: required.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="license-field">License</link>: required.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="comment-field">Comment</link>: optional.
- </para>
- </listitem>
- </itemizedlist>
-
- <section id="example-files-paragraph">
- <title>Example files paragraphs</title>
-<programlisting>Files: *
-Copyright: 1975-2010 Ulla Upstream
-License: GPL-2+
-
-Files: debian/*
-Copyright: 2010 Daniela Debianizer
-License: GPL-2+
-
-Files: debian/patches/fancy-feature
-Copyright: 2010 Daniela Debianizer
-License: GPL-3+
-
-Files: */*.1
-Copyright: 2010 Manuela Manpager
-License: GPL-2+</programlisting>
- <para>
- In this example, all files are copyright by the upstream and licensed
- under the GPL, version 2 or later, with three exceptions. All the
- Debian packaging files are copyright by the packager, and further one
- specific file providing a new feature is licensed differently.
- Finally, there are some manual pages added to the package, written by
- a third person.
- </para>
- <para>
- Since the license of the manual pages is the same as the other
- files in the package, the last paragraph above could instead be
- combined with the first paragraph, listing both copyright
- statements in one <varname>Copyright</varname> field. Whether
- to combine paragraphs with the same license is left to the
- discretion of the author of the
- <filename>debian/copyright</filename> file.
- </para>
- </section>
- </section>
-
- <section id="stand-alone-license-paragraph">
- <title>Stand-alone License Paragraph (optional, repeatable)</title>
- <para>
- Stand-alone <varname>License</varname> paragraphs can be used to
- provide the full license text for a given license once, instead of
- repeating it in each <varname>Files</varname> paragraph that refers to
- it. The first line of the <varname>License</varname> field must be a
- single license short name or a short name followed by a license
- exception.
- </para>
- <para>
- The following fields may be present in a stand-alone License
- paragraph.
- </para>
-
- <itemizedlist>
- <listitem>
- <para>
- <link linkend="license-field">License</link>: required.
- </para>
- </listitem>
- <listitem>
- <para>
- <link linkend="comment-field">Comment</link>: optional.
- </para>
- </listitem>
- </itemizedlist>
- <example>
- <title>tri-licensed files</title>
-<programlisting>Files: src/js/editline/*
-Copyright: 1993, John Doe
- 1993, Joe Average
-License: MPL-1.1 or GPL-2 or LGPL-2.1
-
-License: MPL-1.1
- [LICENSE TEXT]
-
-License: GPL-2
- [LICENSE TEXT]
-
-License: LGPL-2.1
- [LICENSE TEXT]</programlisting>
- </example>
-
- <example>
- <title>recurrent license</title>
-<programlisting>Files: src/js/editline/*
-Copyright: 1993, John Doe
- 1993, Joe Average
-License: MPL-1.1
-
-Files: src/js/fdlibm/*
-Copyright: 1993, J-Random Corporation
-License: MPL-1.1
-
-License: MPL-1.1
- [LICENSE TEXT]</programlisting>
- </example>
- </section>
- </section>
-
- <section id="fields">
- <title>Fields</title>
- <para>
- The following fields are defined for use in
- <filename>debian/copyright</filename>.
- </para>
-
- <section id="format-field">
- <title><varname>Format</varname></title>
- <para>
- Single-line: URI of the format specification. The field that
- should be used for the current version of this document is:
-<programlisting>Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/</programlisting>
- </para>
- </section>
-
- <section id="upstream-name-field">
- <title><varname>Upstream-Name</varname></title>
- <para>
- Single-line: the name upstream uses for the software
- </para>
- </section>
-
- <section id="upstream-contact-field">
- <title><varname>Upstream-Contact</varname></title>
- <para>
- Line-based list: the preferred address(es) to reach the upstream
- project. May be free-form text, but by convention will usually be
- written as a list of RFC5322 addresses or URIs.
- </para>
- </section>
-
- <section id="source-field">
- <title><varname>Source</varname></title>
- <para>
- Formatted text, no synopsis: an explanation of where the upstream
- source came from. Typically this would be a URL, but it might be a
- free-form explanation. The Debian Policy section <ulink
- url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>
- requires this information unless there are no upstream sources,
- which is mainly the case for native Debian packages. If the
- upstream source has been modified to remove non-free parts, that
- should be explained in this field.
- </para>
- </section>
-
- <section id="disclaimer-field">
- <title><varname>Disclaimer</varname></title>
- <para>
- Formatted text, no synopsis: this field is used for non-free or
- contrib packages to say that they are not part of Debian and to
- explain why (see Debian Policy section <ulink
- url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>).
- </para>
- </section>
-
- <section id="comment-field">
- <title><varname>Comment</varname></title>
- <para>
- Formatted text, no synopsis: this field can provide additional
- information. For example, it might quote an e-mail from upstream
- justifying why the license is acceptable to the main archive, or an
- explanation of how this version of the package has been forked from
- a version known to be DFSG-free, even though the current upstream
- version is not.
- </para>
- </section>
-
- <section id="license-field">
- <title><varname>License</varname></title>
- <para>
- Formatted text, with synopsis. In the header paragraph, this field
- gives the license information for the package as a whole, which may
- be different or simplified from a combination of all the per-file
- license information. In a Files paragraph, this field gives the
- licensing terms for the files listed in the <varname>Files</varname>
- field for this paragraph. In a stand-alone License paragraph, it
- gives the licensing terms for those paragraphs which reference it.
- </para>
- <para>
- First line: an abbreviated name for the license, or expression
- giving alternatives (see the <link linkend="license-short-name">Short
- name</link> section for a list of standard abbreviations). If
- there are licenses present in the package without a standard short
- name, an arbitrary short name may be assigned for these licenses.
- These arbitrary names are only guaranteed to be unique within a
- single copyright file.
- </para>
- <para>
- If there are no remaining lines, then all of the short names
- or short names followed by license exceptions making up the
- first line must be described in <link
- linkend="stand-alone-license-paragraph">stand-alone License
- paragraphs</link>. Otherwise, this field should either
- include the full text of the license(s) or include a pointer to the
- license file under <filename>/usr/share/common-licenses</filename>.
- This field should include all text needed in order to fulfill both
- Debian Policy's requirement for including a copy of the software's
- distribution license (<ulink
- url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>),
- and any license requirements to include warranty disclaimers or
- other notices with the binary package.
- </para>
- </section>
-
- <section id="copyright-field">
- <title><varname>Copyright</varname></title>
- <para>
- Formatted text, no synopsis: one or more free-form copyright
- statements. Any formatting is permitted; see the examples below
- for some ideas for how to structure the field to make it easier to
- read. In the header paragraph, this field gives the copyright
- information for the package as a whole, which may be different or
- simplified from a combination of all the per-file copyright
- information. In the Files paragraphs, it gives the copyright
- information that applies to the files matched by the
- <varname>Files</varname> pattern. If a work has no copyright holder
- (i.e., it is in the public domain), that information should be
- recorded here.
- </para>
- <para>
- The <varname>Copyright</varname> field collects all relevant
- copyright notices for the files of this paragraph. Not all
- copyright notices may apply to every individual file, and years of
- publication for one copyright holder may be gathered together. For
- example, if file A has:
-<programlisting>Copyright 2008 John Smith
-Copyright 2009 Angela Watts</programlisting>
- and file B has:
-<programlisting>Copyright 2010 Angela Watts</programlisting>
- a single paragraph may still be used for both files. The
- <varname>Copyright</varname> field for that paragraph would
- contain:
-<programlisting>Copyright 2008 John Smith
-Copyright 2009, 2010 Angela Watts</programlisting>
- </para>
- <para>
- The <varname>Copyright</varname> field may contain the original
- copyright statement copied exactly (including the word
- <quote>Copyright</quote>), or it may shorten the text or merge it
- with other copyright statements as described above, as long as it
- does not sacrifice information. Examples in this specification use
- both forms.
- </para>
- </section>
-
- <section id="files-field">
- <title><varname>Files</varname></title>
- <para>
- Whitespace-separated list: list of patterns indicating files covered
- by the license and copyright specified in this paragraph.
- </para>
- <para>
- Filename patterns in the <varname>Files</varname> field are
- specified using a simplified shell glob syntax. Patterns are
- separated by whitespace.
- <itemizedlist>
- <listitem>
- <para>
- Only the wildcards <literal>*</literal> and <literal>?</literal>
- apply; the former matches any number of characters (including
- none), the latter a single character. Both match slashs
- (<literal>/</literal>) and leading dots, unlike shell globs.
- The pattern <literal>*.in</literal> therefore matches any
- file whose name ends in <literal>.in</literal> anywhere in
- the source tree, not just at the top level.
- </para>
- </listitem>
- <listitem>
- <para>
- Patterns match pathnames that start at the root of the source
- tree. Thus, <quote><filename>Makefile.in</filename></quote>
- matches only the file at the root of the tree, but
- <quote><filename>*/Makefile.in</filename></quote> matches at
- any depth.
- </para>
- </listitem>
- <listitem>
- <para>
- The backslash (<literal>\</literal>) is used to remove the
- magic from the next character; see table below.
- </para>
- </listitem>
- </itemizedlist>
- <informaltable>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Escape sequence</entry>
- <entry>Matches</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry><literal>\*</literal></entry>
- <entry>star (asterisk)</entry>
- </row>
- <row>
- <entry><literal>\?</literal></entry>
- <entry>question mark</entry>
- </row>
- <row>
- <entry><literal>\\</literal></entry>
- <entry>backslash</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- Any other character following a backslash is an error.
- </para>
- <para>
- Multiple <varname>Files</varname> paragraphs are allowed. The last
- paragraph that matches a particular file applies to it. More
- general paragraphs should therefore be given first, followed by
- more specific overrides.
- </para>
- <para>
- Exclusions are only supported by adding <varname>Files</varname>
- paragraphs to override the previous match.
- </para>
- </section>
-
- </section>
- <section id="license-specification">
- <title>License specification</title>
-
- <section id="license-short-name">
- <title>Short name</title>
- <para>
- Much of the value of a machine-parseable copyright file lies in being
- able to correlate the licenses of multiple pieces of software. To that
- end, this spec defines standard short names for a number of commonly
- used licenses, which can be used in the first line of a
- <varname>License</varname> field.
- </para>
- <para>
- These short names have the specified meanings across all uses of this
- file format, and <emphasis>must not</emphasis> be used to refer to any
- other licenses. Parsers may thus rely on these short names referring
- to the same licenses wherever they occur, without needing to parse or
- compare the full license text.
- </para>
- <para>
- From time to time, licenses may be added to or removed from the list of
- standard short names. Such changes in the list of short names will
- always be accompanied by changes to the version of this standard
- and to the recommended
- <varname>Format</varname> value. Implementers who are parsing copyright
- files should take care not to assume anything about the meaning of
- license short names for unknown <varname>Format</varname> versions.
- </para>
- <para>
- Use of a standard short name does not override the Debian Policy
- requirement to include the full license text in
- <filename>debian/copyright</filename>, nor any requirements in the
- license of the work regarding reproduction of legal notices. This
- information must still be included in the <varname>License</varname>
- field, either in a stand-alone License paragraph or in the relevant
- files paragraph.
- </para>
- <para>
- For licenses that have multiple versions in use, the short name is
- formed from the general short name of the license family, followed
- by a dash and the version number. If the version number is
- omitted, the lowest version number is implied. When the license
- grant permits using the terms of any later version of that
- license, add a plus sign to the end of the short name. For
- example, the short name <literal>GPL</literal> refers to the GPL
- version 1 and is equivalent to <literal>GPL-1</literal>, although
- the latter is clearer and therefore preferred. If the package may
- be distributed under the GPL version 1 or any later version, use a
- short name of <literal>GPL-1+</literal>.
- </para>
- <para>
- For <link linkend="spdx">SPDX</link> compatibility, versions with
- trailing <emphasis>dot-zeroes</emphasis> are considered to be
- equivalent to versions without (e.g., <quote>2.0.0</quote> is
- considered equal to <quote>2.0</quote> and <quote>2</quote>).
- </para>
- <para>
- Currently, the full text of the licenses is only available in the
- <ulink url="http://spdx.org/licenses">SPDX Open Source License
- Registry</ulink>.
- </para>
- <informaltable>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>Keyword</entry>
- <entry>Meaning</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>public-domain</entry>
- <entry>
- No license required for any purpose; the work is not subject to
- copyright in any jurisdiction.
- </entry>
- </row>
- <row>
- <entry>
- Apache
- </entry>
- <entry>
- Apache license
- <ulink url="http://spdx.org/licenses/Apache-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/Apache-2.0">2.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- Artistic
- </entry>
- <entry>
- Artistic license
- <ulink url="http://spdx.org/licenses/Artistic-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/Artistic-2.0">2.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- BSD-2-clause
- </entry>
- <entry>
- Berkeley software distribution license,
- <ulink url="http://spdx.org/licenses/BSD-2-Clause">2-clause
- version</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- BSD-3-clause
- </entry>
- <entry>
- Berkeley software distribution license,
- <ulink url="http://spdx.org/licenses/BSD-3-Clause">3-clause
- version</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- BSD-4-clause
- </entry>
- <entry>
- Berkeley software distribution license,
- <ulink url="http://spdx.org/licenses/BSD-4-Clause">4-clause
- version</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- ISC
- </entry>
- <entry>
- <ulink url="http://spdx.org/licenses/ISC">Internet Software
- Consortium</ulink>, sometimes also known as the OpenBSD License.
- </entry>
- </row>
- <row>
- <entry>
- CC-BY
- </entry>
- <entry>
- Creative Commons Attribution license
- <ulink url="http://spdx.org/licenses/CC-BY-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-2.5">2.5</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-3.0">3.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- CC-BY-SA
- </entry>
- <entry>
- Creative Commons Attribution Share Alike license
- <ulink url="http://spdx.org/licenses/CC-BY-SA-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-SA-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-SA-2.5">2.5</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-SA-3.0">3.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- CC-BY-ND
- </entry>
- <entry>
- Creative Commons Attribution No Derivatives license
- <ulink url="http://spdx.org/licenses/CC-BY-ND-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-ND-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-ND-2.5">2.5</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-ND-3.0">3.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- CC-BY-NC
- </entry>
- <entry>
- Creative Commons Attribution Non-Commercial license
- <ulink url="http://spdx.org/licenses/CC-BY-NC-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-2.5">2.5</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-3.0">3.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- CC-BY-NC-SA
- </entry>
- <entry>
- Creative Commons Attribution Non-Commercial Share Alike license
- <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.5">2.5</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-3.0">3.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- CC-BY-NC-ND
- </entry>
- <entry>
- Creative Commons Attribution Non-Commercial No Derivatives
- license
- <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.5">2.5</ulink>,
- <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-3.0">3.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- CC0
- </entry>
- <entry>
- Creative Commons Zero
- <ulink url="http://spdx.org/licenses/CC0-1.0">1.0 Universal</ulink>.
- Omit <quote>Universal</quote> from the license version when
- forming the short name.
- </entry>
- </row>
- <row>
- <entry>
- CDDL
- </entry>
- <entry>
- Common Development and Distribution License
- <ulink url="http://spdx.org/licenses/CDDL-1.0">1.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- CPL
- </entry>
- <entry>
- <ulink url="http://spdx.org/licenses/CPL-1.0">IBM Common Public
- License</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- EFL
- </entry>
- <entry>
- The Eiffel Forum License
- <ulink url="http://spdx.org/licenses/EFL-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/EFL-2.0">2.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- Expat
- </entry>
- <entry>
- The <ulink url="http://www.jclark.com/xml/copying.txt">Expat</ulink>
- license.
- </entry>
- </row>
- <row>
- <entry>
- GPL
- </entry>
- <entry>
- GNU General Public License
- <ulink url="http://spdx.org/licenses/GPL-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/GPL-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/GPL-3.0">3.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- LGPL
- </entry>
- <entry>
- GNU Lesser General Public License
- <ulink url="http://spdx.org/licenses/LGPL-2.1">2.1</ulink>,
- <ulink url="http://spdx.org/licenses/LGPL-3.0">3.0</ulink>, or
- GNU Library General Public License
- <ulink url="http://spdx.org/licenses/LGPL-2.0">2.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- GFDL
- </entry>
- <entry>
- GNU Free Documentation License 1.0,
- <ulink url="http://spdx.org/licenses/GFDL-1.1">1.1</ulink>,
- <ulink url="http://spdx.org/licenses/GFDL-1.2">1.2</ulink>, or
- <ulink url="http://spdx.org/licenses/GFDL-1.3">1.3</ulink>.
- Use GFDL-NIV instead if there are no Front-Cover or
- Back-Cover Texts or Invariant Sections.
- </entry>
- </row>
- <row>
- <entry>
- GFDL-NIV
- </entry>
- <entry>
- GNU Free Documentation License, with no Front-Cover or
- Back-Cover Texts or Invariant Sections. Use the same
- version numbers as GFDL.
- </entry>
- </row>
- <row>
- <entry>
- LPPL
- </entry>
- <entry>
- <ulink url="http://www.latex-project.org/lppl/">LaTeX Project
- Public License</ulink>
- <ulink url="http://spdx.org/licenses/LPPL-1.0">1.0</ulink>,
- <ulink url="http://spdx.org/licenses/LPPL-1.1">1.1</ulink>,
- <ulink url="http://spdx.org/licenses/LPPL-1.2">1.2</ulink>,
- <ulink url="http://spdx.org/licenses/LPPL-1.3c">1.3c</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- MPL
- </entry>
- <entry>
- Mozilla Public License
- <ulink url="http://spdx.org/licenses/MPL-1.1">1.1</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- Perl
- </entry>
- <entry>
- <ulink url="http://dev.perl.org/licenses/">Perl</ulink> license
- (use <quote><literal>GPL-1+ or Artistic-1</literal></quote>
- instead).
- </entry>
- </row>
- <row>
- <entry>
- Python
- </entry>
- <entry>
- Python license
- <ulink url="http://spdx.org/licenses/Python-2.0">2.0</ulink>.
- </entry>
- <!-- See https://fossbazaar.org/pipermail/spdx-legal/2011-February/000010.html -->
- </row>
- <row>
- <entry>
- QPL
- </entry>
- <entry>
- Q Public License <ulink
- url="http://spdx.org/licenses/QPL-1.0">1.0</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- W3C
- </entry>
- <entry>
- <ulink url="http://spdx.org/licenses/W3C">W3C Software
- License</ulink> For more information, consult the
- <ulink
- url="http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620">W3C
- Intellectual Rights FAQ</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- Zlib
- </entry>
- <entry>
- <ulink url="http://spdx.org/licenses/Zlib">
- zlib/libpng license</ulink>.
- </entry>
- </row>
- <row>
- <entry>
- Zope
- </entry>
- <entry>
- Zope Public License 1.0,
- <ulink url="http://spdx.org/licenses/ZPL-1.1">1.1</ulink>,
- <ulink url="http://spdx.org/licenses/ZPL-2.0">2.0</ulink>,
- <ulink url="http://spdx.org/licenses/ZPL-2.1">2.1</ulink>.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- <para>
- There are <ulink
- url="http://en.wikipedia.org/wiki/MIT_License#Various_versions">many
- versions of the MIT license</ulink>. Please use Expat instead, when it
- matches.
- </para>
- <para>
- An exception or clarification to a license is signalled in plain text,
- by appending <literal>with
- <varname><replaceable>keywords</replaceable></varname>
- exception</literal> to the short name. This document provides a list
- of keywords that must be used when referring to the most frequent
- exceptions. When exceptions other than these are in effect that
- modify a common license by granting additional permissions, you may
- use an arbitrary keyword not taken from the below list of keywords.
- When a license differs from a common license because of added
- restrictions rather than because of added permissions, a distinct
- short name should be used instead of <literal>with
- <varname><replaceable>keywords</replaceable></varname>
- exception</literal>.
- </para>
- <para>
- Only one exception may be specified for each license within a given
- license specification. If more than one exception applies to a single
- license, an arbitrary short name indicating that combination of
- multiple exceptions must be used instead.
- </para>
- <para>
- The GPL <literal>Font</literal> exception refers to the text added to
- the license notice of each file as specified at <ulink
- url="http://www.gnu.org/licenses/gpl-faq#FontException">How does the
- GPL apply to fonts</ulink>. The precise text corresponding to this
- exception is:
-<programlisting>As a special exception, if you create a document which uses this font,
-and embed this font or unaltered portions of this font into the
-document, this font does not by itself cause the resulting document to
-be covered by the GNU General Public License. This exception does not
-however invalidate any other reasons why the document might be covered
-by the GNU General Public License. If you modify this font, you may
-extend this exception to your version of the font, but you are not
-obligated to do so. If you do not wish to do so, delete this exception
-statement from your version.</programlisting>
- </para>
- <para>
- The GPL <literal>OpenSSL</literal> exception gives permission to
- link GPL-licensed code with the OpenSSL library, which contains
- GPL-incompatible clauses. For more information, see <ulink
- url="http://www.gnome.org/~markmc/openssl-and-the-gpl">The OpenSSL
- License and The GPL</ulink> by Mark McLoughlin and the message
- <ulink
- url="http://lists.debian.org/debian-legal/2004/05/msg00595.html">middleman
- software license conflicts with OpenSSL</ulink> by Mark McLoughlin
- on the <emphasis>debian-legal</emphasis> mailing list. The text
- corresponding to this exception is:
-<programlisting>In addition, as a special exception, the copyright holders give
-permission to link the code of portions of this program with the
-OpenSSL library under certain conditions as described in each
-individual source file, and distribute linked combinations including
-the two.
-
-You must obey the GNU General Public License in all respects for all
-of the code used other than OpenSSL. If you modify file(s) with this
-exception, you may extend this exception to your version of the
-file(s), but you are not obligated to do so. If you do not wish to do
-so, delete this exception statement from your version. If you delete
-this exception statement from all source files in the program, then
-also delete it here.</programlisting>
- </para>
-
- <section id="public-domain">
- <title>Public domain</title>
- <para>
- The <varname>License</varname> short name
- <literal>public-domain</literal> does not refer to a set of license
- terms. There are some works which are not subject to copyright in
- any jurisdiction and therefore no license is required for any
- purpose covered by copyright law. This short name is an explicit
- declaration that the associated files are <quote>in the public
- domain</quote>.
- </para>
- <para>
- Widespread misunderstanding about copyright in general, and the
- public domain in particular, results in the common assertion that a
- work is in the public domain when this is partly or wholly untrue
- for that work. The <ulink
- url="http://en.wikipedia.org/wiki/Public_domain">Wikipedia article
- on public domain</ulink> is a useful reference for this subject.
- </para>
- <para>
- When the <varname>License</varname> field in a paragraph has the
- short name <literal>public-domain</literal>, the remaining lines of
- the field <emphasis>must</emphasis> explain exactly what exemption
- the corresponding files for that paragraph have from default
- copyright restrictions.
- </para>
- </section>
- </section>
-
- <section id="license-syntax">
- <title>Syntax</title>
- <para>
- License names are case-insensitive, and may not contain spaces.
- </para>
- <para>
- In case of multi-licensing, the license short names are separated by
- <literal>or</literal> when the user can chose between different
- licenses, and by <literal>and</literal> when use of the work must
- simultaneously comply with the terms of multiple licenses.
- </para>
- <para>
- For instance, this is a simple, <quote>GPL version 2 or later</quote>
- field:
-<programlisting>License: GPL-2+</programlisting>
- This is a dual-licensed GPL/Artistic work such as Perl:
-<programlisting>License: GPL-1+ or Artistic</programlisting>
- This is for a file that has both GPL and classic BSD code in it:
-<programlisting>License: GPL-2+ and BSD-3-clause</programlisting>
- For the most complex cases, a comma is used to disambiguate the
- priority of <literal>or</literal>s and <literal>and</literal>s.
- The conjunction <quote><literal>and</literal></quote> has priority over
- <quote><literal>or</literal></quote> unless preceded by a comma. For
- instance:
- </para>
- <simpara>
- <literal>A or B and C</literal> means <literal>A or (B and C)</literal>.
- </simpara>
- <simpara>
- <literal>A or B, and C</literal> means <literal>(A or B) and
- C</literal>.
- </simpara>
- <para>
- This is for a file that has Perl code and classic BSD code in it:
-<programlisting>License: GPL-2+ or Artistic-2.0, and BSD-3-clause</programlisting>
- A <literal>GPL-2+</literal> work with the <literal>OpenSSL</literal>
- exception is in effect a dual-licensed work that can be redistributed
- either under the <literal>GPL-2+</literal>, or under the
- <literal>GPL-2+</literal> with the <literal>OpenSSL</literal>
- exception. It is thus expressed as <literal>GPL-2+ with OpenSSL
- exception</literal>. A possible <varname>License</varname> field for
- such a license is:
-<programlisting>License: GPL-2+ with OpenSSL exception
- This program is free software; you can redistribute it
- and/or modify it under the terms of the GNU General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later
- version.
- .
- In addition, as a special exception, the author of this
- program gives permission to link the code of its
- release with the OpenSSL project's "OpenSSL" library (or
- with modified versions of it that use the same license as
- the "OpenSSL" library), and distribute the linked
- executables. You must obey the GNU General Public
- License in all respects for all of the code used other
- than "OpenSSL". If you modify this file, you may extend
- this exception to your version of the file, but you are
- not obligated to do so. If you do not wish to do so,
- delete this exception statement from your version.
- .
- This program is distributed in the hope that it will be
- useful, but WITHOUT ANY WARRANTY; without even the implied
- warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- PURPOSE. See the GNU General Public License for more
- details.
- .
- You should have received a copy of the GNU General Public
- License along with this package; if not, write to the Free
- Software Foundation, Inc., 51 Franklin St, Fifth Floor,
- Boston, MA 02110-1301 USA
- .
- On Debian systems, the full text of the GNU General Public
- License version 2 can be found in the file
- `/usr/share/common-licenses/GPL-2'.</programlisting>
- </para>
- </section>
-
- <section id="spdx">
- <title>SPDX</title>
- <para>
- <ulink url="http://spdx.org/">SPDX</ulink> is an attempt to standardize
- a format for communicating the components, licenses and copyrights
- associated with a software package. It and the machine-readable
- <filename>debian/copyright</filename> format attempt to be somewhat
- compatible. However, the two formats have different aims, and so the
- formats are different. The <ulink
- url="http://wiki.debian.org/Proposals/CopyrightFormat">DEP5 wiki
- page</ulink> will be used to track the differences.
- </para>
- </section>
- </section>
-
- <section id="examples">
- <title>Examples</title>
- <example>
- <title>Simple</title>
- <para>
- A possible <filename>debian/copyright</filename> file for the program
- <quote>X Solitaire</quote> distributed in the Debian source package
- <literal>xsol</literal>:
-<programlisting><![CDATA[Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: X Solitaire
-Source: ftp://ftp.example.com/pub/games
-
-Files: *
-Copyright: Copyright 1998 John Doe <jdoe@example.com>
-License: GPL-2+
- This program is free software; you can redistribute it
- and/or modify it under the terms of the GNU General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later
- version.
- .
- This program is distributed in the hope that it will be
- useful, but WITHOUT ANY WARRANTY; without even the implied
- warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- PURPOSE. See the GNU General Public License for more
- details.
- .
- You should have received a copy of the GNU General Public
- License along with this package; if not, write to the Free
- Software Foundation, Inc., 51 Franklin St, Fifth Floor,
- Boston, MA 02110-1301 USA
- .
- On Debian systems, the full text of the GNU General Public
- License version 2 can be found in the file
- `/usr/share/common-licenses/GPL-2'.
-
-Files: debian/*
-Copyright: Copyright 1998 Jane Smith <jsmith@example.net>
-License: GPL-2+
- [LICENSE TEXT]]]></programlisting>
- </para>
- </example>
-
- <example>
- <title>Complex</title>
- <para>
- A possible <filename>debian/copyright</filename> file for the program
- <quote>Planet Venus</quote>, distributed in the Debian source
- package <literal>planet-venus</literal>:
-<programlisting><![CDATA[Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: Planet Venus
-Upstream-Contact: John Doe <jdoe@example.com>
-Source: http://www.example.com/code/venus
-
-Files: *
-Copyright: 2008, John Doe <jdoe@example.com>
- 2007, Jane Smith <jsmith@example.org>
- 2007, Joe Average <joe@example.org>
- 2007, J. Random User <jr@users.example.com>
-License: PSF-2
- [LICENSE TEXT]
-
-Files: debian/*
-Copyright: 2008, Dan Developer <dan@debian.example.com>
-License: permissive
- Copying and distribution of this package, with or without
- modification, are permitted in any medium without royalty
- provided the copyright notice and this notice are
- preserved.
-
-Files: debian/patches/theme-diveintomark.patch
-Copyright: 2008, Joe Hacker <hack@example.org>
-License: GPL-2+
- [LICENSE TEXT]
-
-Files: planet/vendor/compat_logging/*
-Copyright: 2002, Mark Smith <msmith@example.org>
-License: MIT
- [LICENSE TEXT]
-
-Files: planet/vendor/httplib2/*
-Copyright: 2006, John Brown <brown@example.org>
-License: MIT2
- Unspecified MIT style license.
-
-Files: planet/vendor/feedparser.py
-Copyright: 2007, Mike Smith <mike@example.org>
-License: PSF-2
- [LICENSE TEXT]
-
-Files: planet/vendor/htmltmpl.py
-Copyright: 2004, Thomas Brown <coder@example.org>
-License: GPL-2+
- This program is free software; you can redistribute it
- and/or modify it under the terms of the GNU General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later
- version.
- .
- This program is distributed in the hope that it will be
- useful, but WITHOUT ANY WARRANTY; without even the implied
- warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- PURPOSE. See the GNU General Public License for more
- details.
- .
- You should have received a copy of the GNU General Public
- License along with this package; if not, write to the Free
- Software Foundation, Inc., 51 Franklin St, Fifth Floor,
- Boston, MA 02110-1301 USA
- .
- On Debian systems, the full text of the GNU General Public
- License version 2 can be found in the file
- `/usr/share/common-licenses/GPL-2'.]]></programlisting>
- </para>
- </example>
- </section>
-
-</article>
sanitycheck := debian/rules policy.sgml
SGML_FILES := policy menu-policy perl-policy upgrading-checklist
-DESC_FILES := copyright-format debian-policy debian-menu-policy \
+DESC_FILES := copyright-format-1.0 debian-policy debian-menu-policy \
debian-perl-policy debconf-spec fhs
# While we have two versions of the FHS installed in the source package,
POLICY_FILES = $(SGML_FILES:=.sgml) $(SGML_FILES:=.txt.gz) \
virtual-package-names-list.txt \
libc6-migration.txt version.ent \
- copyright-format/copyright-format.html \
- copyright-format/copyright-format.txt.gz \
+ copyright-format/copyright-format-1.0.html \
+ copyright-format/copyright-format-1.0.txt.gz \
debconf_spec/debconf_specification.html \
debconf_spec/debconf_specification.txt.gz \
policy.ps.gz policy.pdf.gz README.txt README.html \
FILES_FROM_ORG := Process.html Process.txt README.txt README.html
# policy.{pdf,ps,tpt,txt} are generated files
-FILES_TO_CLEAN = copyright-format.xml.tar.gz \
+FILES_TO_CLEAN = copyright-format-1.0.xml.tar.gz \
debian/files debian/buildinfo debian/substvars \
debian/postinst debian/prerm \
version.ent \
$(install_file) $(FHS_FILES) $(DOCDIR)/fhs/
$(install_file) debian/copyright $(DOCDIR)/
GZIP=-9 cd copyright-format && \
- tar -zcf ../copyright-format.xml.tar.gz *
- $(install_file) copyright-format.xml.tar.gz $(DOCDIR)/
+ tar -zcf ../copyright-format-1.0.xml.tar.gz *
+ $(install_file) copyright-format-1.0.xml.tar.gz $(DOCDIR)/
@set -ex; \
GZIP=-9 cd debconf_spec && \
tar -zcf ../debconf_specification.xml.tar.gz *