[R] package license questions

Duncan Murdoch murdoch at stats.uwo.ca
Sun Jan 3 13:43:18 CET 2010


On 02/01/2010 11:19 PM, Markus Weisner wrote:
> I am looking for some advice on licenses.  Here is my situation:
> 
> Over the last couple years, I have developed a rather large number of fire
> department analysis functions.  I am in the process of trying to publish
> some packages to make these functions available to the public.  I am trying
> to release two packages that essentially define S4 classes for common types
> of fire department data.  Then, I would like to publish a package that
> essentially reads in these fire department data types and returns analysis
> results.  My concern is that I may eventually want to build and sell some
> proprietary functions and I am trying not to box myself out of this future
> option.  It is my understanding that if I use the GPL license, all work
> based on my packages would have to take on the GPL license (effectively
> making it impossible to sell software). 

That only applies to other people unless you choose to incorporate other 
people's GPL'd code into your package.  The GPL imposes no conditions on 
the copyright holder, it's a license given by the copyright holder to 
other people to allow them to do things (basically copying, modifying, 
and redistributing) that otherwise would be copyright violations.

The obligation the other people need to follow is that *they* must offer 
the GPL license if they include your code.  So they'll have some trouble 
commercializing it (but it's not impossible to commercialize GPL'd code, 
it's just supposed to be impossible to do it in a closed source way).

The "trap" with GPL is that other people may make improvements to your 
code that you'd like to use.  If you do, they become copyright holders 
as well, and then the combined work has to be licensed using GPL unless 
all of you can agree otherwise.  But at that point you've accepted a 
free contribution from someone else, it's only fair to share the 
ownership of the product with them.

  It looks like the Lesser General
> Public License (LGPL) may suit my needs by allowing me to make public my
> current work without eliminating the possibility of future proprietary
> work.  I have a couple questions I am hoping somebody can answer.
> 
> 
>    - It says that "libraries" licensed under a LGPL can be used by
>    proprietary software.  What is meant by libraries?  Are class definitions
>    and functions considered libraries?
>    - If I use the LGPL for all my packages, do I maintain the right to build
>    and sell software that is based on these LGPL packages?  For instance, could
>    I use the class definitions from a LGPL package as inputs for analysis in a
>    piece of proprietary software?
>    - Other than potentially allowing competitors to also use my LGPL
>    packages in their proprietary software, are there any big disadvantages to
>    using a LGPL?
>    - If somebody improves on my LGPL S4 class definitions, can I still then
>    use them in a proprietary package despite their being modified?

The LGPL puts weaker constraints on users of your code.  You still 
maintain all the rights you ever did, but it doesn't stop them from 
commercializing closed-source products using your code as a library, 
whatever that means.

Duncan Murdoch

> 
> I am a big supporter of the open source community and have personally
> benefitted greately from open source software.  My intentions are to release
> my work as open source, but just don't want to be boxed out of future
> proprietary developments.  These licenses can be pretty confusing, so I
> appreciate any information that can help me figure this out.
> 
> Thanks,
> Markus
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list