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

Thoughts about a machine-readable license summary.



Dear all,

first of all I would like to wish a nice conference to all Debconf
participants. I see a lot of enthousiasm on the mailing lists and
planet.debian.org and it really looks exciting to be there.

I am not attending Debconf, but I hope that it is the good timing to send this
email on my thoughts on a machine-readable license summary, so that pepole who
share interest in this can have opportunity to chat on the subject in the real
life rather than on this cold electroning communication channel that is so
prone to misunderstandings.

My main motivations as a packager for constucting a machine-readable format for
license summary are the following:

 - Respect upstream's license, and help our users to do so.
 - Better use the time I spend packaging, and increase the
   quality of my packages.
 - Share my work with other distributions and Upstream.

Debian has a tradition of gathering informations on license and copyrights in a
specialised file, ‘copyright’, that I suppose originate on both license
constraints (in particular, some licenses of the BSD family) and practical
consideration (help the FTP team to review).

I think that the efforts we put in maintaining this file are losing value on
the long term:

 - It is rarely detected when this file loses its accuracy after a package update.
 - In contrary to our patches, manpages, desktop files and other contributions
   to upstream works, the copyright file does not benefit back to the Communauty.

This is why I like a lot what is now called the DEP 5 format, because I see an
opportunity to improve the situation. The machine-readable format for
debian/copyright was originally proposed by Sam Hocevar, but after he stopped
working on it, the proposal grew wild and hairy because of a combination of
good brainstorming and lack of leadership.

I am working on a version of the proposal that has significant changes from the
original, and that can not be used as is without changing our Policy and
archive rules. Nevertheless, I think it has a value because its aim is more
focused. It may not necessarly be adopted, but I think that exploring that path
is a good way to contribute to the shaping of DEP 5.

To clearly mark the difference with the consensus-driven DEP 5, I renamed the
format ‘Machine-readable license summary’. Here are some of the most
significant differences.

 - Human readability: the format loses similarity with Debian control files,
   but leaves more possibility to aerate the file with spaces. Imprtantly,
   parsing would still be trivial or even easier than Debian control files.

 - Information content: everything is optional. Of course, licenses themselves are our
   guide. Our DPL has asked the SPI lawyers to clarify our duties with the BSD-style
   licenses, and the proposed format is ready for all possible outcomes.

 - Flexibility: The format allows free-form comments with the only condition
   that they do not look like starting or extending a field. This opens the
   possibility to have either dry styles with only formal fields, or mixed styles
   that would be more like a Readme with the most important information encoded in
   fields.

 - Reusability upstrem: one of the goal of the above changes is to make a
   format that is not too specialised, so that we could forward the license
   summaries upstream with good chances that they would be accepted, and later
   send patches when we detect undocumented changes. Making a Debian version can
   be matter of simply appending a few fields for the debian directory of the
   source package, or simply doing nothing is the license for packaging is the
   same as the upstream package and we agree that it is not necessary to duplicate
   copyright information that can be inferred from debian/changelog.

I started to use this format in some of my packages, and have put my current
draft in a Git repository on Alioth:
http://git.debian.org/?p=users/plessy/license-summary.git;a=blob_plain;f=dep5.mdwn;hb=HEAD
(You may have to set the enoding to utf8 by hand on your browser).

http://packages.debian.org/changelogs/pool/main/libb/libbio-graphics-perl/current/copyright
http://packages.debian.org/changelogs/pool/main/v/velvet/current/copyright
http://packages.debian.org/changelogs/pool/non-free/s/seaview/current/copyright
http://svn.debian.org/wsvn/debian-med/trunk/packages/staden-io-lib/trunk/debian/copyright

It is not prefect, but I hope it illustrates well the above points. Some
features are definitely missing, for instance managing all the BSD variants that
basically differ only by the names of the people or institutions that can not
be used to advertise the softare.

Please do not hesitate to not answer to this email :) Especially that there is
Debconf, I do not intend to start an electronic debate now. I will anyway be
mostly off-line for the next four days. I really would like that the outcome of
this email is simply pepole having new ideas, or reconsider about DEP 5 as a
tool to make everybody's life easier, not only in Debian but also upstream and
in the other distributions. 

Have a nice day,

-- 
Charles Plessy
Tsurumi, Kanagawa, Japan


Reply to: