[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

DEP-5 suggestions


Here is the rough format of dep5[1] copyright files, if I understand
the proposal correctly.  {} denotes variables, [] optional elements,
and ... "et cetera".  This is almost certainly wrong in parts (it
includes guesswork), so I encourage you to correct me, especially if
this might result in the DEP-5 text being clarified.

Below that are some suggestions for changes.  Thoughts?

-- 8< --
Format-Specification: {wsvn uri}
[Name: {customary name for the package}]
[Maintainer: {upstream contact}]
[Source: {upstream tarball or vcs uri for the upstream sources used}]
[Disclaimer: {disclaimers about not being in Debian, this
 file only documenting the copyright for the source package,
 and so on}]
[X-{anything}: {anything}]

[Files: {'find'-style pattern}]
Copyright: {copyright or lack-of-copyright statements}
License: {"short" license name or empty for "other"}
 {free-form comments on license; this together with any
  corresponding standalone License stanzas should include the
  full text of the license, a mention of the file having
  been removed, or a pointer to /usr/share/common-licenses}

Files: {'find'-style pattern}
Copyright: {statements on copyright or lack}
License: {short license name, or empty for "other"}
 [{comments on license}]


License: {short license name}
 {verbatim license information, including the license text
  or a pointer to /usr/share/common-licenses}
-- >8 --

1. Certain projects (especially projects with copyright assignment)
include a CONTRIBUTORS file or snippets in the per-file license
headers to document their origin.  To me,
/usr/share/doc/<package>/copyright seems like a natural place
to mention this information, even if it is not required by law or

Suggested change: add an optional Contributors: field to the
header section and files sections.  (I would want to use Authors:, but
that is too loaded a word in copyright-related contexts.)

 Files: /usr/include/regexp.h
 Copyright: 1996, 1997, 1998, 1999, 2004 Free Software
            Foundation, Inc.
 Contributors: Ulrich Drepper, 1996.

 Name: Go
 Maintainer: golang-nuts@...
 Source: https://...
 Contributors: see /usr/share/doc/google-go/CONTRIBUTORS.gz

2. An incomplete overview of licensing information in COPYING
imho generally deserves verbatim repetition, though it is not clear
where to put it.

Suggested change: add an optional Overview: field to the
header section.

 Name: Firefox
 Maintainer: dev-apps-firefox@...
 Source: http://...
  All of the source code to this product is available under
  licenses which are both free and open source.  Most is
  available under any one of the following:
  the Mozilla Public License (MPL), the GNU General Public 
  License (GPL) and the GNU Lesser General Public License (LGPL).
  That is, you may copy and distribute such software according to the 
  terms of any one of those three licenses.
  The remainder of the software which is not under the MPL/LGPL/GPL
  tri-license is available under one of a variety of more permissive
  licenses. Those that require reproduction of the license text in
  the distribution are given below.
[etc, from toolkit/content/license.html]

3. Sometimes it is not easy to find a license in the upstream
tarball but it is online somewhere, or the license is discovered
only through correspondence with the auther.  Circumstantial
information like this can be useful.

Suggested change: clarify whether this information belongs in
the License: field.  If not, add a free-form Notes: field for

4. An increasing number of programs that operate on object
code include compiled binaries as test cases.  It is important
to be able to locate the corresponding source.

Suggested change: add an optional Source-Code: field for
files sections.

5. Some packages include machine-generated mathematical tables.
It is not important for copyright to know where they came from,
but it is practically useful.

Suggested change: add an optional Generated-With: field to
point to the code used to compute it.

6. Many packages include small pieces of code taken from other works.
Since the license is usually best documented in the package of origin,
it is useful to know what that is.

Suggested change: add a free-form Origin: field to files sections.

I have been using X- fields for these purposes so far, but I
think it is better to get some feedback on it.

Thanks for DEP-5.  At times, it can turn a copyright file from an
unmaintainable mess into something straightforward.

Looking forward to your thoughts,
[I am not subscribed to -project. Please cc me when appropriate.]
[1] http://dep.debian.net/deps/dep5/

Reply to: