a question about licensing

Hi Guys,

I'm almost halfway through my master thesis project, and have just
realized something that is making me got nuts with panic.

I am using orocos, and also another library for motion planning called
MPK (http://ai.stanford.edu/~mitul/mpk/). I just realized that the MPK
README file states that it is "..free for research and non-commercial
use only". So I am thinking as follows:

1) the MPK license is clearly incompatible with the GPL.
2) Orocos is GPL
3) I can't use the two together in the same project
4) If I decide not to use MPK, re-writing its functionality on my own
puts me back by several months. If I decide not to use orocos, then i'm
in trouble as well, since I need all its features
5) Finally, I would like to release my application under GPL or LGPL.
Now, with this MPK library, that doesn't seem possible.

I've stopped coding now..and i just want to sort this thing out. Is
there any way that me and other people can use orocos, MPK (and a bunch
of other GPL/LGPL libraries I am using in my application) without
getting sued to hell and back?

What if I distribute only my source code..and tell people to get MPK
themselves. They can then compile the whole thing (my code won't even
compile unless MPK is in there). Once they compile it, they can use it
for themselves..and NOT re-distribute it. or something like that.

Any ideas anyone? I did try to convince the MPK guys to LGPL their code,
but it is something about policy matters at Stanford and the code
authors apparently can't do anything about it.

Concerned,
Sagar

a question about licensing

On Tue, 4 Aug 2009, Sagar Behere wrote:

> I'm almost halfway through my master thesis project, and have just
> realized something that is making me got nuts with panic.
>
> I am using orocos, and also another library for motion planning called
> MPK (http://ai.stanford.edu/~mitul/mpk/). I just realized that the MPK
> README file states that it is "..free for research and non-commercial
> use only". So I am thinking as follows:
>
> 1) the MPK license is clearly incompatible with the GPL.
It is incompatible with everything, in the sense that you are not given the
right to even extend the code! Just use it for free, as it is...

> 2) Orocos is GPL
..._with_ runtime exceptions! Please read
<http://www.orocos.org/orocos/license>
This means that we don't mind that people link other stuff with it, as
long as you don't distribute changes to Orocos in your own private code
distribution.

> 3) I can't use the two together in the same project

You can.

> 4) If I decide not to use MPK, re-writing its functionality on my own
> puts me back by several months. If I decide not to use orocos, then i'm
> in trouble as well, since I need all its features
> 5) Finally, I would like to release my application under GPL or LGPL.
> Now, with this MPK library, that doesn't seem possible.

You have to think about these things at the start of a project :-)

> I've stopped coding now..and i just want to sort this thing out. Is
> there any way that me and other people can use orocos, MPK (and a bunch
> of other GPL/LGPL libraries I am using in my application) without
> getting sued to hell and back?

There always is the "heavy solution": if they integrate everthing
themselves, from the pieces that they can download at the individual
projects.

> What if I distribute only my source code..and tell people to get MPK
> themselves. They can then compile the whole thing (my code won't even
> compile unless MPK is in there). Once they compile it, they can use it
> for themselves..and NOT re-distribute it. or something like that.

That would work, _if_ your work carries the license of the project it is
"derived work" from. If your code extends both orocos and MPK, you cannot
give it a license that is compatible with both projects. And even derived
work from MPK cannot be given a license, since MPK does not allow you to
derive from it and distribute...

> Any ideas anyone? I did try to convince the MPK guys to LGPL their code,
> but it is something about policy matters at Stanford and the code
> authors apparently can't do anything about it.

So, don't use their stuff. Because now, the "bad guys" win: Orocos allows
you to use the MPK "license", which is not open source at all, and you
would be propagating that bad practice...

Best regards,

Herman
>
> Concerned,
> Sagar

a question about licensing

Herman Bruyninckx wrote:
> On Tue, 4 Aug 2009, Sagar Behere wrote:
>
>> I'm almost halfway through my master thesis project, and have just
>> realized something that is making me got nuts with panic.
>>
>> I am using orocos, and also another library for motion planning called
>> MPK (http://ai.stanford.edu/~mitul/mpk/). I just realized that the MPK
>> README file states that it is "..free for research and non-commercial
>> use only". So I am thinking as follows:
>>
>> 1) the MPK license is clearly incompatible with the GPL.
> It is incompatible with everything, in the sense that you are not given the
> right to even extend the code! Just use it for free, as it is...

<snipped>

>> 4) If I decide not to use MPK, re-writing its functionality on my own
>> puts me back by several months. If I decide not to use orocos, then i'm
>> in trouble as well, since I need all its features
>> 5) Finally, I would like to release my application under GPL or LGPL.
>> Now, with this MPK library, that doesn't seem possible.
>
> You have to think about these things at the start of a project :-)

Indeed!! This is a lesson learned for me.

>> I've stopped coding now..and i just want to sort this thing out. Is
>> there any way that me and other people can use orocos, MPK (and a bunch
>> of other GPL/LGPL libraries I am using in my application) without
>> getting sued to hell and back?
>
> There always is the "heavy solution": if they integrate everthing
> themselves, from the pieces that they can download at the individual
> projects.
>
>> What if I distribute only my source code..and tell people to get MPK
>> themselves. They can then compile the whole thing (my code won't even
>> compile unless MPK is in there). Once they compile it, they can use it
>> for themselves..and NOT re-distribute it. or something like that.
>
> That would work, _if_ your work carries the license of the project it is
> "derived work" from. If your code extends both orocos and MPK, you cannot
> give it a license that is compatible with both projects. And even derived
> work from MPK cannot be given a license, since MPK does not allow you to
> derive from it and distribute...

I think my code doesn't "derive from" anything, since I'm not starting
with an existing piece of code and modifying it. Also, I don't modify
any code that comes with orocos or MPK. I just use their headers and
link to the runtime libraries. So would it be legally clear if I release
non-compile-able code under the GPL, and my users download orocos, MPK
and all other libraries that are needed on their own, to compile an
executable for their own use?

>> Any ideas anyone? I did try to convince the MPK guys to LGPL their code,
>> but it is something about policy matters at Stanford and the code
>> authors apparently can't do anything about it.
>
> So, don't use their stuff. Because now, the "bad guys" win: Orocos allows
> you to use the MPK "license", which is not open source at all, and you
> would be propagating that bad practice...

You are right. I've looked for alternatives already, but using anything
other than MPK will delay my thesis by several months. However, I am
designing my software so that it becomes easy to swap out MPK with
something else and that shall be my first priority, after presenting my
thesis.

> Herman

Thank you very much for the clarifications. I believe in software
freedom and am incalculably mortified to be caught in this situation.

Regards,
Sagar

a question about licensing

On Tue, 4 Aug 2009, Sagar Behere wrote:

> Herman Bruyninckx wrote:
>> On Tue, 4 Aug 2009, Sagar Behere wrote:
>>
>>> I'm almost halfway through my master thesis project, and have just
>>> realized something that is making me got nuts with panic.
>>>
>>> I am using orocos, and also another library for motion planning called
>>> MPK (http://ai.stanford.edu/~mitul/mpk/). I just realized that the MPK
>>> README file states that it is "..free for research and non-commercial
>>> use only". So I am thinking as follows:
>>>
>>> 1) the MPK license is clearly incompatible with the GPL.
>> It is incompatible with everything, in the sense that you are not given the
>> right to even extend the code! Just use it for free, as it is...
>
> <snipped>
>
>>> 4) If I decide not to use MPK, re-writing its functionality on my own
>>> puts me back by several months. If I decide not to use orocos, then i'm
>>> in trouble as well, since I need all its features
>>> 5) Finally, I would like to release my application under GPL or LGPL.
>>> Now, with this MPK library, that doesn't seem possible.
>>
>> You have to think about these things at the start of a project :-)
>
> Indeed!! This is a lesson learned for me.
>
>>> I've stopped coding now..and i just want to sort this thing out. Is
>>> there any way that me and other people can use orocos, MPK (and a bunch
>>> of other GPL/LGPL libraries I am using in my application) without
>>> getting sued to hell and back?
>>
>> There always is the "heavy solution": if they integrate everthing
>> themselves, from the pieces that they can download at the individual
>> projects.
>>
>>> What if I distribute only my source code..and tell people to get MPK
>>> themselves. They can then compile the whole thing (my code won't even
>>> compile unless MPK is in there). Once they compile it, they can use it
>>> for themselves..and NOT re-distribute it. or something like that.
>>
>> That would work, _if_ your work carries the license of the project it is
>> "derived work" from. If your code extends both orocos and MPK, you cannot
>> give it a license that is compatible with both projects. And even derived
>> work from MPK cannot be given a license, since MPK does not allow you to
>> derive from it and distribute...
>
> I think my code doesn't "derive from" anything, since I'm not starting
> with an existing piece of code and modifying it. Also, I don't modify
> any code that comes with orocos or MPK. I just use their headers and
> link to the runtime libraries. So would it be legally clear if I release
> non-compile-able code under the GPL, and my users download orocos, MPK
> and all other libraries that are needed on their own, to compile an
> executable for their own use?

I think it is. (It _certainly_ is for Orocos.) But my opinion doesn't carry
any legal value :-(

>>> Any ideas anyone? I did try to convince the MPK guys to LGPL their code,
>>> but it is something about policy matters at Stanford and the code
>>> authors apparently can't do anything about it.
>>
>> So, don't use their stuff. Because now, the "bad guys" win: Orocos allows
>> you to use the MPK "license", which is not open source at all, and you
>> would be propagating that bad practice...
>
> You are right. I've looked for alternatives already, but using anything
> other than MPK will delay my thesis by several months. However, I am
> designing my software so that it becomes easy to swap out MPK with
> something else and that shall be my first priority, after presenting my
> thesis.

Fine! Of course I understand your thesis constraints, but let me envourage
you to start a new (real) open source project on that topic, once your
thesis is over :-) (Or, rather, to find an existing project to connect to.)

>> Herman
>
> Thank you very much for the clarifications. I believe in software
> freedom and am incalculably mortified to be caught in this situation.

This must be the most difficult and serious sentence that has ever been
written in a message on the Orocos mailing list! :-) But I do appreciate
its contents and sincerity!

Herman

>
> Regards,
> Sagar
>