Subject: [bug#32933] [PATCH] guix: add license prefix hackage imports

From: [email-masked] (Ludovic Courtès)
Date: Mon, 15 Oct 2018 10:07:12 +0200

Hello,

Ricardo Wurmus <[email-masked]> skribis:

>> The motivation was to be consistent with the `gnu/packages/haskell.scm` which
>> uses the `license:` prefix. I noticed this when I imported a bunch of packages
>> and all of them were missing the prefix, which then had to be manually added.
>>
>> On Fri, Oct 12, 2018 at 6:17 AM Ludovic Courtès <[email-masked]> wrote:
>>>
>>> No strong opinion, but apparently none of the importers currently adds
>>> the ‘license:’ prefix and I’d rather keep that consistent, one way or
>>> another.
>>
>> That's not entirely true. crate calls `spdx-string->license` which adds the
>> prefix, but it doesn't appear to actually work because it looks for the license
>> in the wrong part of the json output from crates.io.
>
> I have a slight preference to not adding the prefix.  It is true that
> most modules do use this prefix, but I think the importers should be
> agnostic of that.  Some modules don’t use this prefix (e.g. web.scm) or
> no prefix at all (especially user modules that don’t exist yet).
>
> I’d rather have the importers be more flexible and do the right thing
> dependent on context, but I have no good idea how to accomplish this
> considering that they are used outside of any context (unless they were
> called as part of an updater).

Right, I sort of feel along the same lines.

OTOH, the goal of ‘guix import’ is to provide templates as close as
possible to working package definitions.  In that sense, if adding the
‘license:’ prefix lowers the barrier a little bit (and it certainly
does, as Joe wrote), the better.

For the sake of consistency though, it may be best to do it for all the
importers, if we were to take that route.

WDYT, Ricardo?

Thanks,
Ludo’.