[lxc-devel] Clarifying the licensing of LXC

S.Çağlar Onur caglar at 10ur.org
Fri Sep 6 04:45:01 UTC 2013


Hi,

On Fri, Sep 6, 2013 at 12:10 AM, Stéphane Graber <stgraber at ubuntu.com>wrote:

> Hi,
>
> Well since they're currently shipped out of tree, you're free to do
> whatever you want. GPLv2 code is allowed to link with an LGPLv2.1+
> library so your code isn't in violation of LXC's license.
>
> However this very likely means that any software using your Go bindings
> will have to be GPLv2 in order to respect the binding's license.
> While that's your right, it's fairly uncommon and that's why I tend to
> prefer having bindings under a more permissive license with regard to
> linking, such as LGPLv2.1+.
>

That's a good point. I'll re-license them with LGPLv2.1 as your argument
really makes sense.


> Btw, speaking of those bindings, do they have to remain out of tree to
> be easily usable with go or could they be merged into LXC upstream at
> some point?


I guess one potential issue would be packaging. Right now all magic is
handled by "go get" and to be honest it's pretty convenient to use :). A
quick Google search yielded multiple discussions about packaging RFC's on
both go-nuts and debian mailing list. I haven't read all of them (so maybe
I missed something) but it looks like none of them ended up with results.
Even Juju's installation instructions says something like "install go via
sudo apt-get install golang-go and then get Juju by running go get -v
launchpad.net/juju-core/.." so I'm assuming there is a reason for that.

On Fri, Sep 06, 2013 at 12:01:15AM -0400, S.Çağlar Onur wrote:
> > Hey Stéphane,
> >
> > I realized that Go bindings are licensed as GPLv2. I've no objection to
> > re-licensing them with LGPL v2.1 but wanted to clarify it with you first.
> > Should I go ahead and change the license or is it ok to stay with GPLv2?
> >
> > Best,
> >
> > On Fri, Aug 30, 2013 at 3:42 PM, Stéphane Graber <stgraber at ubuntu.com
> >wrote:
> >
> > > Hello,
> > >
> > > First of all, sorry for the boring e-mail, nobody likes to deal with
> > > licenses but it's an unfortunate thing we have to deal with from time
> to
> > > time.
> > >
> > > Thomas Moschny reported some inconsistencies in the way LXC is
> currently
> > > licensed.
> > > The bug report is available here: https://github.com/lxc/lxc/issues/36
> > >
> > >
> > > Basically the way I see it, LXC is made of 4 different bits:
> > >  - The main library
> > >  - The language bindings
> > >  - The binary tools/scripts
> > >  - The templates
> > >
> > > In order to make the library easily usable by others, LXC was
> originally
> > > licensed entirely under the LGPL v2.1 and higher and that certainly
> > > makes sense for any bit in the main library as well as for the
> bindings.
> > >
> > > Most of the tools, scripts and templates followed course and are also
> > > under LGPLv2.1+, some are under GPLv2 and that's all fine since they're
> > > tools and not libraries.
> > >
> > >
> > > The problem is that we currently have some files that are part of the
> > > library or part of bindings which are licensed under the wrong license,
> > > namely, they're currently under GPLv2.
> > >
> > > I believe this was an oversight and that we should get those switched
> to
> > > the proper license immediately. But I'm not simply going to go ahead
> and
> > > do that myself since I'm not the actual copyright holder for those.
> > >
> > > Instead, I'd like the original/main author of those to confirm it's
> fine
> > > by them and then we can do that.
> > >
> > >
> > > This still means we'll effectively re-license the code of some of our
> > > contributors without explicitly asking them about it. As I said, I'm
> > > convinced that this isn't a problem since we're just talking about a
> > > handful of files and it's always been clear that the LXC library is
> > > licensed under LGPLv2.1+.
> > >
> > > Nevertheless, if anyone contributed to one of those files we're about
> to
> > > re-license and do not wish their contributions re-licensed, please get
> > > in touch as soon as possible so we can remove the affected code from
> the
> > > project.
> > >
> > >
> > > The following files will be re-licensed from GPLv2 to LGPLv2.1+:
> > >  - src/lua-lxc/core.c (Dwight)
> > >  - src/lxc/lxccontainer.c (Serge)
> > >  - src/lxc/lxclock.c (Serge)
> > >  - src/lxc/lxclock.h (Serge)
> > >  - src/tests/cgpath.c (Serge)
> > >  - src/tests/containertests.c (Serge)
> > >  - src/tests/createtest.c (Serge)
> > >  - src/tests/destroytest.c (Serge)
> > >  - src/tests/getkeys.c (Serge)
> > >  - src/tests/get_item.c (Serge)
> > >  - src/tests/locktests.c (Serge)
> > >  - src/tests/lxcpath.c (Serge)
> > >  - src/tests/saveconfig.c (Serge)
> > >  - src/tests/shutdowntest.c (Serge)
> > >  - src/tests/startone.c (Serge)
> > >  - templates/lxc-ubuntu.in (Serge)
> > >  - templates/lxc-ubuntu-cloud.in (Serge)
> > >
> > > Any file that currently doesn't contain a licensing header is assumed
> to
> > > be under the LGPLv2.1+ (as specified in COPYING).
> > >
> > >
> > > Additionally, some of the Android compatibility bits under
> lxc/includes/
> > > are licensed under a two-clause BSD license. To the best of my
> > > knowledge, there are no restrictions in linking LGPLv2 code to BSD
> code.
> > >
> > >
> > > While processing that bug report, I've also noticed some cases where
> our
> > > license headers are out of date (wrong FSF address) or inconsistent (in
> > > the form, not the content). I'll be fixing those too before I send the
> > > alpha1 pull-request.
> > >
> > > --
> > > Stéphane Graber
> > > Ubuntu developer
> > > http://www.ubuntu.com
> > >
> > >
> > >
> ------------------------------------------------------------------------------
> > > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> > > Discover the easy way to master current and previous Microsoft
> technologies
> > > and advance your career. Get an incredible 1,500+ hours of step-by-step
> > > tutorial videos with LearnDevNow. Subscribe today and save!
> > >
> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> > > _______________________________________________
> > > Lxc-devel mailing list
> > > Lxc-devel at lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/lxc-devel
> > >
> > >
> >
> >
> > --
> > S.Çağlar Onur <caglar at 10ur.org>
>
> --
> Stéphane Graber
> Ubuntu developer
> http://www.ubuntu.com
>


-- 
S.Çağlar Onur <caglar at 10ur.org>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxcontainers.org/pipermail/lxc-devel/attachments/20130906/13da8a86/attachment.html>


More information about the lxc-devel mailing list