[R-pkg-devel] Relicense to GPL-3?

Henrik Bengtsson henrik.bengtsson at gmail.com
Sun Nov 6 19:05:10 CET 2016


What's already been said is good advice.  At first, it may be a bit
tricky to under copyright and licenses.  When I started out, I for the
longest held back on releasing software / packages because I somehow
thought I basically had to make a final decision on the license at
that moment and that the license was stuck forever.  I was wrong.  It
will stick forever, but only per release.

Here is how *I* think of copyright and software licenses these days:

* The copyright holder of a piece of software is the one who can
decide on what license he or she would like to distribute that
software.

* If there are multiple copyright holders of your software, then all
of you need to agree on the license.

* If someone contributed a non-trivial part of code to your software,
then that person holds copyright to that piece of code.  From this
point in time, your software has two copyright holders.

* For you to remain the sole copyright holder, you need to make an
explicit agreement with the other person that s/he transfer the
copyright to you.  Some maintainers (private person and / or
companies) do this in order to keep full control of the decision on
software licenses (for monetary and / or practical purposes).

* When releasing a software under a specific license, then you give
the users the rights specified in that license.

* It is not possible to revoke licenses retroactively because then you
would break the rights you have already given the users.  If version
1.0 was released with license A, you cannot go back a say it now
should be license B instead.

* At any time, the copyright holder may choose to use a different
license of a _future_ version of the software.  Even if version 1.0
was released with license A, version 1.1 can be with license B (and
license A can be dropped).

* Software can be release with multiple licenses.  You can choose to
release version 1.1 under license A and license B.  Then it is up to
the user to choose which one s/he wish to follow / agree to.  Moving
from GPL 2 to GPL (>= 2) == GPL 2 | GPL 3 would be such an example.

* If you're not the sole copyright holder, and you cannot agree with
the others or you fail to get in touch with the others (e.g. person
passed away), then the only way for you to become the sole copyright
holder is to remove the parts of the code that you don't have
copyright to.  When the remaining code is truly yours, i.e. you are
the sole copyright holder, then you have all the rights to choose
license going forward.

So, in your case, it is only people who have contributed to your piece
of software ("foo") that can make copyright claims to it.  Any
software that depends on your software is completely irrelevant to
this.  If you're the only one who contributed to your package, then
you can choose whatever licenses you want going forward (=next
version).  Also, the license of your software "foo" sets the rules for
any software that depends on it, and not the other way around (unless
you have a circular dependency, which is extremely rare).

Hope this helps

Henrik

On Sun, Nov 6, 2016 at 9:10 AM, Dirk Eddelbuettel <edd at debian.org> wrote:
>
> On 6 November 2016 at 16:53, Lenth, Russell V wrote:
> | Permission of "all other copyright holders" as in developers of all packages that depend on 'foo'?
>
> Please do have a look at the two FAQs I referenced before:
>
>    https://www.gnu.org/licenses/gpl-faq.en.html
>
>    https://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.en.html
>
> In particular this last question of yours is addressed in
>
>    https://www.gnu.org/licenses/gpl-faq.html#HeardOtherLicense
>
> Dependent packages are of cause NOT the copyright holders. Rather, the
> authors of a package (ie you, and whoever worked with you) are.
>
> Dirk
>
> --
> http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org
>
> ______________________________________________
> R-package-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-package-devel



More information about the R-package-devel mailing list