[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Clarify the license field of the package
From: |
Maxime Devos |
Subject: |
Re: Clarify the license field of the package |
Date: |
Fri, 26 Aug 2022 20:38:10 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 |
On 22-08-2022 11:02, 宋文武 wrote:
Hello list, I have some questions about the 'license' of a package,
currently defined as:
The license of the package; a value from ‘(guix licenses)’, or a
list of such values.
1. It's the license of source files (guix build -S) or built binary
files?
(If 'built binary files', I would include generated or copied
documentation in the list. And icons, .desktop files, ..., I'm not
restricting myself to _executable_ binaries here and also not to
binaries that aren't sources as well.)
Rarely, there is some weirdness where the source code is free
(VSCodium?) but the official build has a non-free license (VSCode?). At
least for that example, it doesn't apply to Guix though (because
VSCodium is not packaged, and because with some rare exceptions we build
from source).
However, in my experience, in free software they almost always have the
same license, so the distinction appears meaningless to me with the
possible exception of build scripts and test files (including, but not
limited to, test code).
I think it should include the source files, as the license of the source
is important for people doing 'guix build --source'.
2. When its value is a list of multiple licenses, it's files under
different licenses (eg: lib/*.so under LGPL, while bin/* under GPL),
or files under one license select from choices?
My guess is that the license field is for source files since we can
disable binary substitutes, and list is used for files under different
licenses.
Does my guess is correct? Thank you!
As answered in a reply to a patch, myself I go for 'files under
different licenses' -- to me it seems hard to go wrong with 'just
include all participating licenses' instead of trying to make a selection.
However, keep in mind that sometimes a file is part licensed as, say,
BSD(*), part as Expat, with modifications under the GPL -- to me it
appears that for practical purposes you could consider such a thing to
be 'effectively GPL', but that's not 100% accurate, as it appears
required to preserve the BSD and Expat license text. (Such things can
happen when incorporating code from other, differently-licensed, projects).
(*) let's say without the advertising clause or whatever it was (IIRC
and IIUC the original BSD was incompatible with the GPL?).
If there's some consensus, I think it would be nice to clarify this
matter in the manual.
Greetings,
Maxime.
OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key
OpenPGP_signature
Description: OpenPGP digital signature