[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] On eggs and their licensing
From: |
Jim Ursetto |
Subject: |
Re: [Chicken-users] On eggs and their licensing |
Date: |
Wed, 2 Jun 2010 12:34:17 -0500 |
On Jun 2, 2010, at 9:43, Stephen Eilert <address@hidden> wrote:
> As I have some code that I would like to contribute back to Chicken,
> in the form of eggs, I have started to look into the licensing issue.
> I've asked that on #chicken, and the response was that I should choose
> my own license.
Good advice.
> Sure enough, the eggs page show *a mess*.
> BSD: 168 eggs
> GPL2: 47 eggs
> Public domain: 25 eggs
> LGPL2.1: 9 eggs
> MIT: 11 eggs
> Other: 31 eggs
Looks pretty straightforward to me.
> This will indubitably generate a flame fest about which license is
> best.
Certainly.
> Some deviation is unavoidable,
> specially when eggs bind to external libraries or when they are
> ported(hence the XEROX license, for instance). Ideally those should be
> an exception and chicken-install (or even chicken itself) should throw
> a warning.
I thought you *didn't* want to start a flamewar.
> As an example of how complicated things are, this is from
> http://www.gnu.org/licenses/license-list.html
A good reason to stay out of the business of legislating and policing this
stuff.
Is this a problem in practice or just in theory? The only qualm I have ever
heard is about dynamically linking to GPL (not LGPL) eggs from non-GPL code,
otherwise there doesn't seem to be a real issue. That is pretty easy to avoid
if you are concerned.
> Since eggs are just a chicken-install away, it is non-trivial to
> determine the legality of a project that uses several of these.
Other than GPL as mentioned, dynamic linking poses very few issues with license
compatibility by design, so I am not convinced this is normally a problem.
You did have an interesting idea in re license info display. Using the setup
api, it should be pretty easy to write a program to display the license for
each egg and recursively for its dependencies, since it's in the egg metadata.
Do you want a program like this?
Jim