Subject: Re: bug#26256: [PATCH 5/6] gnu: Add userspace-rcu.

From: Marius Bakke <[email-masked]>
Date: Tue, 28 Mar 2017 00:57:54 +0200

Marius Bakke <[email-masked]> writes:

> Ludovic Courtès <[email-masked]> writes:
>
>> Marius Bakke <[email-masked]> skribis:
>>
>>> * gnu/packages/linux.scm (userspace-rcu): New variable.
>>
>> [...]
>>
>>> +    (license
>>> +     ;; This library is distributed under LGPL2.1+, but includes some files
>>> +     ;; covered by other licenses. The LICENSE file has full details.
>>> +     (list license:lgpl2.1+
>>> +           license:gpl3+                         ; most tests are gpl2+; tap.sh is gpl3+
>>> +           license:bsd-2                         ; tests/utils/tap/tap.[ch]
>>> +           license:expat                         ; urcu/uatomic/*
>>> +           ;; A few files use different variants of the MIT/X11 license.
>>> +           (license:x11-style "file://LICENSE"
>>> +                              "See LICENSE in the distribution for details.")))))
>>
>> It’s a case where it’d be enough to put lgpl2.1+ and gpl3+ IMO, since
>> that’s what effectively applies to the resulting work.
>
> Is this also true for the source code archive itself? As an end user,
> looking at the license list and deciding to `guix build -S`, I would
> expect the contents to match what's in the package definition.
>
> Is this a distinction we should make? I.e. "source" license vs "product"
> license. For Ceph, this would be the current license list in the first
> instance and just lgpl2.1 and gpl2 for the built product.

Thinking more about this, the "output license" for Ceph would include
BSD-{2,3} as well (some erasure code stuff), but you catch my drift.

It makes sense to focus on the license you accept by using the package,
and mention whatever other source licenses that may be present as
source code comments instead.