[erlang-questions] Licensing an Erlang/Emacs Lisp project

Thomas Järvstrand <>
Mon Sep 3 08:24:41 CEST 2012


Hi again,

After some time, I finally got the below reply from the free software
foundation. It seems my worries where unfounded and I can move on with my
life :)

Thomas

Hello and thank you for writing in.

> I'm currently working on a project in Emacs Lisp. The project is open
> sourced under the LGPL but I recently realized that some of the
> submodules I use is under GPL and so I believe I have to change my
> licensing.

LGPLv3 is compatible with GPLv3. So there isn't anything in the above
that would pose a problem.

> My problem is that I have no idea what license to choose. Part of my
> code will be running in Erlang and part of the code will be running in
> Elisp inside an Emacs instance. The submodules are not actually
> shipped *with*the project if that makes any difference, but are
> fetched upon building the project.

Generally speaking, what matters is if the separate modules combine to
make one program, not how they are distributed.

> Specifically, in Erlang I currently have one submodule licensed under
> the MIT license,

I'll assume you mean a generally permissive license such as the Expat
license (http://directory.fsf.org/wiki/License:Expat), which is often
ambiguously called the MIT license. It is GPL compatible, so no problem
here.

> and one under Apache v2.

Apache v2 is also GPLv3 compatible.

> In Elisp I'm using 3 submodules that are licensed under GPLv3.

> Is there any way that I can cook this soup? I hear that Erlang doesn't
> really work that well with GPL

People will often write in to say that because of feature X then they
think that language Y breaks the GPL. But the GPL is a copyright license
which can be applied to essentially any copyrightable work for which you
can identify the source.

There are issues regarding the use of interpreted languages with runtime
bindings (detailed in the two FAQ entries below) but it is unclear if
any of these apply to your situation:

http://www.gnu.org/licenses/gpl-faq.html#IfInterpreterIsGPL
http://www.gnu.org/licenses/gpl-faq.html#InterpreterIncompat

>  so should I pull out the Erlang parts of the project and license them
> separately? Can I then use these as part of my project?

So far I didn't really see a licensing issue, since all of the separate
parts had mutually compatible licenses. See:

http://www.gnu.org/licenses/gpl-faq.html#WhatIsCompatible
http://www.gnu.org/licenses/gpl-faq.html#WhatDoesCompatMean

> The Elisp code will be communicating with the Erlang parts through a
> rest-interface.

Actually, if your software is making calls to the Erlang code via a REST
interface, as an external service calling a published external interface
without really knowing anything about how that specific Erlang program
works internally, then it might be the case that you are interacting
with it "at arms length".

> All these licenses confuse me to no end, so it'd be great to get some
> advice. Basically my project a bunch of porcelain code that binds
> together and configures a bunch of useful tools for erlang
> development. The whole point of it is to be an easy-to-setup solution,
> so I'd really not like to have to resort to "download this from here,
> configure this way, rinse, repeat".

> I have no issue with licensing my project under GPL, but I need a
> model that will be compatible with what I currently use and gives me
> freedom to add new parts to the project in the future. It seems most
> Emacs libraries are licensed under GPL, but I hear GPL does not really
> work that well for Erlang projects due to how linking is
> interpreted. I believe for Erlang projects, the most commonly used are
> MIT or Apache.

I hope my answers above are of help. If you have further doubts or
questions, please feel free to write back and I'll do my best to
expedite my reply.

--
I am not a lawyer, the above is not legal advice

   Regards, Yoni Rabkin

On Sat, Sep 1, 2012 at 10:31 AM, Erik Søe Sørensen <>wrote:

>
> Den 31/08/2012 16.00 skrev "Thomas Järvstrand" <
> >:
>
> >
> > Hi,
> >
> > I'm currently working on a project that is a combination of Erlang and
> Emacs Lisp. The project is currently open sourced under the LGPL but I
> recently realized that some of the submodules I use are under GPL (the
> elisp ones) and so I believe I have to change my licensing.
> >
> > My problem is that I have no idea what license to choose. Part of my
> code will be running in Erlang and part of the code will be running in
> Elisp inside an Emacs instance. The submodules are not actually shipped
> with the project if that makes any difference, but are fetched upon
> building the project.
> >
> > Specifically, in Erlang I currently have one submodule licensed under
> the MIT license, and one under Apache v2. In Elisp I'm using 3 submodules,
> all of which are licensed under GPLv3.
> >
> > Is there any way that I can cook this soup? I hear that Erlang doesn't
> really work that well with GPL so should I pull out the Erlang parts of the
> project and license them separately? Can I then use these as part of my
> project? The Elisp code will be communicating with the Erlang parts through
> a rest-interface if that makes any difference.
>
> I believe it does - if your code is not linked to the GPL parts, but
> merely communicate with GPL parts which exist in a separate OS process,
> then there is no issue, as I recall it.
> (Ianal, of course.)
>
> > All these licenses confuse me to no end, so it'd be great to get some
> advice. Basically my project a bunch of porcelain code that binds together
> and configures a bunch of useful tools for erlang development. The whole
> point of it is to be an easy-to-setup solution, so I'd really not like to
> have to resort to "download this from here, configure this way, rinse,
> repeat".
> >
> > I have no issue with licensing my project under GPL, but I would like a
> model that is compatible with what I currently use and gives me freedom to
> add new parts to the project in the future.
> >
> > I would be thankful for any help
> >
> > Sincerely
> >
> > Thomas Järvstrand
> >
> >
> > _______________________________________________
> > erlang-questions mailing list
> > 
> > http://erlang.org/mailman/listinfo/erlang-questions
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20120903/9cacdf8d/attachment.html>


More information about the erlang-questions mailing list