

Ask HN: Can someone post a summary of Licensing Terms (GPL, MIT, etc) - DevX101

I occasionally use open source software for my projects, and they usually come with some sort of licensing conditions (GPL, LGPL, MIT, etc).  To be honest, I never read the docs and I'm not really sure what the distinction are.<p>Can someone or someones post a very concise definition &#38; distinction between them?
======
DanielStraight
GPL: You can do whatever you want with the code as long as your code is GPL
too. You can't use it closed-source projects. You can't restrict the next
person in any way.

LGPL: GPL except some restricted forms of closed-source use are OK. I believe
the idea is that you can use an LGPL library in a closed-source project.
Really, both the GPL and LGPL are way too confusing.

MIT: Do basically whatever you want. Just don't claim you wrote it, and don't
try to sue anybody.

BSD: Essentially equivalent to MIT.

Microsoft Public License: Essentially equivalent to MIT.

Apache License: Essentially MIT, but you have to make sure people know that
you modified the code (if in fact you did).

Academic Free License: Basically MIT but with more legal jargon and more
protection (from patent suits, for example).

Really, other than GPL and LGPL, most open source licenses are easy to read
and quite clear in what they allow. I would urge you to read them.

~~~
_delirium
The GPL/LGPL difference is that the LGPL makes a distinction between merely
using a library, and modifying the library itself. Modifications to the
library itself have to be released under the same (LGPL) license. Merely using
the library has permissive terms, more BSD-style.

So, for example, you can write an application using the LGPL'd Qt or GTK
widget toolkits, and license your application however you want. But if you
start modifying the GTK source code to build your own new-and-improved GTK,
you have to release your new-and-improved GTK under the LGPL (but still don't
have to release the source to any applications you build on top of it).

The GPL doesn't make a distinction like that, and requires that any code that
incorporates GPL'd code be also GPL'd.

------
Wicher
Remember, most restrictions apply only if you want to _distribute_ the
resulting code. In general, if you don't distribute your code (or the open
source code you incorporate), there are no restrictions to what you can do.
For instance, you're free to modify the Linux kernel for internal use in your
company without ever publishing your modifications.

