[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: What license to use for Emacs libraries?
Re: What license to use for Emacs libraries?
Tue, 18 Aug 2015 22:48:30 +0100
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)
Marcin Borkowski <address@hidden> writes:
> This time, I reconciled myself to the idea of releasing some of my code
> under GPL (even though it seems that it is not at all obvious that
> I really have to do that).
You do not have to do anything that you do know what to do.
There are other options, I believe, including release under public
domain which I you could do, although others can argue that this is a
bad thing to do.
> The question now is: do I /have/ to use GPLv3? (Not that it's a
> problem for me - GPLv2 and GPLv3 are most probably more or less
> equally `evil' - but I'm just curious.)
In general, if you are asking for advice on what you can and cannot do,
and do not want to get into a big license battle (god knows, there have
been enough of this), it's probably politic to avoid use of terms such
as "evil" for any licence.
> This page: http://www.gnu.org/licenses/rms-why-gplv3.html states:
> | When we say that GPLv2 and GPLv3 are incompatible, it means there is
> | no legal way to combine code under GPLv2 with code under GPLv3 in
> | a single program. This is because both GPLv2 and GPLv3 are copyleft
> | licenses: each of them says, “If you include code under this license
> | in a larger program, the larger program must be under this license
> | too.” There is no way to make them compatible.
> Does that mean that releasing Emacs libraries under GPLv2 is illegal?
> I did a cursory check, and it seems that all libraries built-in in my
> Emacs are GPLv3, but some other are not: for instance, my copy of
> Icicles has GPLv2, and some code on EmacsWiki has GPLv2.
Partly, this depends on the details. Many GPLv2 libraries are actually
"GPLv2 or later". It is legal to release. v2 or later code can be
combined with v3 code. The combination would be v3.
It is also legal to release libraries for Emacs under v2, since many
versions of Emacs were released under v2. However, code under v2 could
not be combined (i.e. used, modified and released) under a current Emacs.
> OTOH, the next paragraph has this:
> | There is no problem in having GPLv3-covered and GPLv2-covered
> | programs side by side in an operating system.
> Does it mean that the famous issue "Is Emacs a program, or an OS" is of
> critical importance here?
No. While your legal system may take a different opinion on this, the
FSF has a relatively explicit meaning to this statement. You can run
Emacs on the same OS as propietary software, yet alone GPLv2 software.
If two libraries communicate only through a file system, or a pipe, or
do not communicate at all, then there is no combined work, just
"aggregation". If there is a direct function call in the same VM (lisp
or otherwise), there is a combined work.
> BTW, if my suspicion that you must not distribute Emacs libraries under
> GPLv2 is correct, does that confirm my intuition that some (many?)
> people really just don't care?
A piece of Emacs-Lisp code on it's own can be released under many
different licenses. Whether you can practically use that code is a
I would, indeed, be surprised though if there is nowhere in the entire
Emacs ecosystem you did not find some GPLv2/GPLv3 combined code which
technically cannot be actually run anywhere. Do people not care? Some
do, some don't. I'd be surprised if there were GPLv2 code in core Emacs,
> Also, the suggested licenses for GitHub repos seem to be Apache 2.0,
> MIT and GPLv2. GPLv3 is also there, but further down the list and not
> in bold, so it's well possible that many people who don't really care
> much about all this stuff (see above) just select GPLv2 and forget
> about the thing. Does that mean that GitHub is a part of a sinister
> software-patent conspiracy or something?
Github's motivations are, of course, not something that any sensible
person would wish to infer on a public mailing list without clear
evidence, at least not if they do not with to be committing libel, which
is a whole other part of the law.
As a matter of public record, though, it is clear that many people do
care. The changes between GPLv2 and v3 where put in place quite
deliberately and thoughtfully by the FSF because they care. Some
projects have, equally deliberately and thoughtfully decided to stick
with GPLv2 because they care also.
Who is right and wrong is probably an issue which would be better off
discussed on gnu.misc.discuss, rather than gnu.emacs.help.