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

Re: making debian/copyright machine-interpretable

On Sun, Aug 05, 2007 at 12:10:56AM +0200, Sam Hocevar wrote:
>    I guess it all comes to whether you look at the file asking "what are
> the licenses in the package?" in which case you may prefer to see most
> common licenses first, or "what license is file XXX?" in which case you
> read the file until one of the patterns matches, and you know that's
> your licensing terms.

True, both indeed make sense. Just to mention another reason which IMO
supports the "most common first" criterion (but I'm sure can be twisted
to support the other :-)), once we have an unambiguous semantics for the
file patterns we can have a couple of tools like:

1) whichlicense: invoked on a pathname rooted at the root of a debian
   source package it returns the license keyword/full text associated
   with that file

2) checklicenses (which is in need of a better name): invoked with no
   arguments it checks if all shipped files in a debian source package
   are matched (after ambiguities have been resolved) by exactly one
   file pattern in debian/copyright, that would be in the same spirit of
   "dh_install --fail-missing"

*If* (1) addresses properly your latter use case ("what license is file
XXX") than we can probably live happily with the "most common first"

> > Similarly, it might be useful to have Vim-like '**'-patterns to match
> > arbitrarily deep subdirectories, thought not really required.
>    Right. Maybe I could formalise that into saying "pattern <string> is
> what `find -wholename */<string>' will match".

That will do too, fine for me.


Stefano Zacchiroli -*- PhD in Computer Science ............... now what?
zack@{cs.unibo.it,debian.org,bononia.it} -%- http://www.bononia.it/zack/
(15:56:48)  Zack: e la demo dema ?    /\    All one has to do is hit the
(15:57:15)  Bac: no, la demo scema    \/    right keys at the right time

Attachment: signature.asc
Description: Digital signature

Reply to: