[Drawkit] DrawKit license

Brad Larson larson at sonoplot.com
Tue May 13 11:24:10 PDT 2008


On May 13, 2008, at 10:58 AM, David Catmull wrote:

> On May 12, 2008, at 6:44 PM, Graham Cox wrote:
>> If the LGPL covers all of these, then I expect we can change to use  
>> the LGPL.
>
>
> I once tried using LGPL for one of my libraries, but when I took a  
> closer look I found it wasn't going to work. In particular, there is  
> a requirement that users be able to swap in alternate versions of  
> your library, which effectively means it has to be packaged as a  
> framework. You may not want to require that.
>
> In my case I had a library that consisted largely of inline  
> functions (wrapping Carbon toolbox calls), and you can't swap those  
> out after build time. So my library was actually technically  
> incompatible with the LGPL.
>
> -- 
> David Catmull
> uncommon at uncommonplace.com
> http://www.uncommonplace.com/
>
> _______________________________________________
> Drawkit mailing list
> Drawkit at lists.apptree.net
> http://lists.apptree.net/listinfo.cgi/drawkit-apptree.net


The LGPL appears to be a compromise between the BSD/MIT license (you  
can make improvements to the library code and not release that new  
code or the code for the application, as long as proper attribution is  
maintained) and the GPL (all modifications to the library must be  
released, along with the code to the linked application).  The library  
would remain open-source, along with all improvements, but could be  
used in a closed-source application with proper attribution.  It  
sounds to me like it would be the best fit for your vision of the  
library, while allowing the widest possible use.

David, in the wording of the LGPL:
"The object code form of an Application may incorporate material from  
a header file that is part of the Library. You may convey such object  
code under terms of your choice, provided that, if the incorporated  
material is not limited to numerical parameters, data structure  
layouts and accessors, or small macros, inline functions and templates  
(ten or fewer lines in length), you do both of the following:
	• a) Give prominent notice with each copy of the object code that the  
Library is used in it and that the Library and its use are covered by  
this License.
	• b) Accompany the object code with a copy of the GNU GPL and this  
license document."

I read this as allowing inline functions in your compiled code, as  
long as you properly attribute the library and bundle a copy of the  
LGPL with your application.  The ten line limitation might be an  
issue, however.  In any case, it sounds like you could expand DrawKit  
beyond a framework in the future, if you so desire.

I don't know how you would go about organizing a Qt-style license  
that's free for non-commercial use but requiring a fee for commercial  
programs.  The payment logistics alone could make it not worth your  
while.  Also, especially for a small developer, having to pay  
something per use as opposed to nothing could be a significant barrier  
to entry and reduce the adoption rate.

I have to admit that this argument is more than a little self-serving,  
as we are looking at incorporating a part of the framework in our  
robotic control software that is installed on machinery we sell.  We  
have no problem with freely contributing source to the open library,  
however.

______________________
Brad Larson
SonoPlot, Inc.
3030 Laura Lane, Suite 120
Middleton, WI 53562





More information about the Drawkit mailing list