1

I have a set of libraries or framework that has been under development for more than a year by my team. We are finally nearing the completion of a few of these projects and want to release them as open source like I have with my personal projects. I want to limit commercial uses (including SAAS providers) from using the libraries. For personal and non-profit uses, I feel AGPL would be perfect.

Current idea is to use AGPL, but add an exemption to the license (as owner of the library), that allows owner to sell or provide licenses to use the library to others who do not need to follow AGPL. Owner of the library can sell the software to someone using it commercially or give it for free for a start up. The recipients of this license will not need to adhere to AGPL and can use the library without releasing their source.

For contributors, they will need to sign a CTA to transfer copyright to the library owner. This will also apply to all forks who are bound by the same license. Larger impacting Contributors and Fork maintainers will also get exemption to AGPL to use in their commercial product.

Adding on the following questions, Provide customers an AGPL alternative

Is there any pre-defined open source license that generally fits what I am requesting here including holding ownership over forks? Even if it does not fit everything, it's easier for everyone if its a known license compared to writing a completely new license.

3

2 Answers 2

4

Current idea is to use AGPL, but add an exemption to the license (as owner of the library), that allows owner to sell or provide licenses to use the library to others who do not need to follow AGPL. Owner of the library can sell the software to someone using it commercially or give it for free for a start up. The recipients of this license will not need to adhere to AGPL and can use the library without releasing their source.

If you are the sole copyright holder of the project, then you do not need to add an exemption to the license, because you already have the right to distribute the project under any license you want.

For contributors, they will need to sign a CTA to transfer copyright to the library owner. This will also apply to all forks who are bound by the same license. [...]

Is there any pre-defined open source license that generally fits what I am requesting here including holding ownership over forks?

This requirement cannot be part of an open-source license.

The basic idea of open-source is that people are allowed to make improvements to your code and to publish that improved version. But if the license requires that you transfer your copyrights to Corp.A, that effectively forbids publishing new versions once Corp.A ceases to exist.

For your own repository, a CTA works because you have the right to determine under what conditions code from other people gets added to your repository. Your repository is your exclusive property and having open-source code in it does not change in any way that you can set any arbitrary condition you like on what code will get added to that repository.

Why people would sign a CTA to have their code added to your repository, instead of having it only on their fork, is because they want to have their changes in the official version of the product, instead of only in one of a large number of unofficial builds that all differ slightly.

-1

You wrote "Is there any license which is based off on AGPL, but provides exemptions for the owner to allow others use it under a different license?"

In case you agree that your copyright will be regulated under the European legal framework, the EUPL-1.2 may answer your question in so far it covers SaaS or remote distribution of the software and allows merged derivatives to be distributed under one of the compatible licenses listed in the EUPL appendix. This compatible license will then be applicable to the derivative only and will prevail on the EUPL in case of license conflict. But as none of these listed compatible licenses (including the GPL) are in conflict (= prohibit) the coverage of SaaS and the publication/sharing of source code in such case, these EUPL obligations will persist, even if the license applied to the derivative is the GPL or the MPL (and not the AGPL). This may look a little bit complex, but it is a way for EUPL licensors to allow others to distribute merged derivatives under a different license, while preserving the obligation of reciprocity (source code publication and sharing) in case the distribution is done remotely or as a service.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.