From: ludo@gnu.org (Ludovic Courtès)
To: Nikita Karetnikov <nikita.karetnikov@gmail.com>
Cc: bug-guix@gnu.org
Subject: Re: List of abbreviations for licenses
Date: Thu, 29 Nov 2012 23:05:08 +0100 [thread overview]
Message-ID: <87vcco2hgr.fsf@gnu.org> (raw)
In-Reply-To: <CAD15K4uRCcLfyq9Cbhp8SzvP09iWOK21T8F_H-PfgRTMTjriTA@mail.gmail.com> (Nikita Karetnikov's message of "Thu, 29 Nov 2012 07:54:02 +0300")
Hello!
Nikita Karetnikov <nikita.karetnikov@gmail.com> skribis:
> I'm trying to package 'util-linux'. It uses several licenses:
>
> - GPLv3+
> - GPLv2+
> - GPLv2
> - LGPLv2+
> - BSD with advertising
> - Public Domain
>
> What are the common abbreviations for Public Domain and BSD with
> advertising? Is there a list of abbreviations for licenses?
Nixpkgs uses this:
https://github.com/NixOS/nixpkgs/blob/master/pkgs/lib/licenses.nix
which is a subset of this:
http://fedoraproject.org/wiki/Licensing
> As far as I can tell, 'license' doesn't check the used values. So it's
> possible to use an incorrect value (e.g. "foobar"). Should we add a
> function to check this?
There could be a (guix licenses) module along these lines:
(define-module (guix licenses)
#:use-module (srfi srfi-9)
#:export (gplv2+ gplv3+))
(define-record-type <license>
(license name)
license?
(name license-name))
(define gplv3+ (license "GPLv3+"))
(define gplv2+ (license "GPLv2+"))
Packages would then do, for instance:
(package
...
(license gplv3+))
and you would get a unbound-variable warning when passing something
wrong. We could imagine a <license-union> type for multiply-licensed
code, and a <license-set> type for packages that incorporate code under
different licenses. There could be a mechanism to make sure the
‘license’ field is a <license> object, or a <license-set> or
<license-union>
And then, it would be tempting to make a graph of <license> objects to
indicate compatibility, and add additional properties to each <license>
object to describe it more precisely (copyleft, version number, etc.),
and so on.
But! We must keep in mind that people will always write new licenses;
packages will always include files covered by different licenses;
there will always be dual-licensed packages; etc.
More importantly, licensing is not a science, and we can’t pretend to
devise a universal “license calculus”. (This has been discussed at
length in the past on nix-dev.)
Thus, I would start with a simple (guix licenses) module. I would
perhaps even omit the <license> type, and use just plain strings to
start with.
WDYT?
Thanks,
Ludo’.
next prev parent reply other threads:[~2012-11-29 22:05 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-29 4:54 List of abbreviations for licenses Nikita Karetnikov
2012-11-29 22:05 ` Ludovic Courtès [this message]
2012-11-29 23:53 ` Jeff Mickey
2012-11-30 0:49 ` Ludovic Courtès
2012-12-06 22:52 ` Nikita Karetnikov
2012-12-07 9:43 ` Ludovic Courtès
2012-12-07 19:53 ` Ludovic Courtès
2012-12-07 22:34 ` Nikita Karetnikov
2012-12-07 23:24 ` Ludovic Courtès
2012-12-08 2:14 ` Nikita Karetnikov
2012-12-08 18:23 ` Ludovic Courtès
2012-12-09 2:47 ` Nikita Karetnikov
2012-12-09 13:41 ` Ludovic Courtès
2012-12-11 8:24 ` Nikita Karetnikov
2012-12-11 10:24 ` Ludovic Courtès
2012-12-11 14:04 ` Nikita Karetnikov
2012-12-11 14:31 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87vcco2hgr.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=bug-guix@gnu.org \
--cc=nikita.karetnikov@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).