[R-pkg-devel] Licensing of an R package

Duncan Murdoch murdoch.duncan at gmail.com
Fri Jan 19 15:33:53 CET 2018


On 19/01/2018 3:31 AM, Chris Brien wrote:
> Dear list members,
> 
> I have come to realize that my understanding of free software licensing was somewhat naïve. The problem is that I now find that, in spite of spending quite a bit of time reading about various licenses on the web, I have been unable to identify a suitable license for the situation that I have with one of my packages.
> 
> I am solely responsible for the development of my package, `foo' say. However, most functions in `foo' call functions from a proprietary package, `bar' say , the latter not being available from an online software repository and consisting of R functions that call routines in a library. That is, `foo' enhances `bar'.
> 
> I had thought that a GPL licence was appropriate because (1) `foo' is free software and (ii) I do not distribute `bar' with `foo'. That is, I am distributing only free software.  However, I have come to understand that this is not the case because a free software package linked with a proprietary package does not satisfy the requirements to be GPL.

 From your 2nd paragraph, you can license your package any way you like. 
  You own the copyright to all of it.

You can use GPL if you feel like it.  The license you choose doesn't 
limit anything *you* do, it grants rights to other people to do things 
with your code.  Without those rights, it would be a copyright violation 
for them to make copies of your package.  With them, they are allowed to 
make and distribute copies provided they follow the terms of the license.

If you choose GPL, then other people (like CRAN) can redistribute your 
package under the terms of the GPL.  That should be enough for CRAN, but 
they might not accept your package since they can't test it (unless they 
have the rights to use "bar").

Nobody (not even the company who owns the rights to "bar") can link your 
package to "bar" and redistribute the combination, because that would 
violate the GPL, and you never gave them the right to do that.  You 
can't do it unless that company gives you permission, and apparently 
they haven't.

Duncan Murdoch



More information about the R-package-devel mailing list