Question

I am using a java library licensed under AGPL3. However, I would like to license my own work as BSD, such that my code could then be integrated in proprietary projects if one strips the library. Will I be allowed to do that?

So far, I couldn't find a clear answer for my problem on the net or in the license text(not a lawyer). Dual-licensing seems cumbersome and ugly.

EDIT: What happens if I use other libraries which are licensed under BSD or anything else?

Was it helpful?

Solution

Here's a quote from the Licensing section of the GNU website:

It has always been the FSF's position that dynamically linking applications to libraries creates a single work derived from both the library code and the application code. The GPL requires that all derivative works be licensed under the GPL, an effect which can be described as “hereditary.” So, if an application links to a library licensed under the GPL, the application too must be licensed under the GPL.

(the specific page is discussing Java and LGPL, but the general point applies here)


If you want to license your original application as BSD, you must first create it without using that library at all.

Then, you can create a derivative work by combining your BSD application and the AGPL3 library, with the whole thing licensed as AGPL3.

This would effectively be a new, different application, and is not dual-licensing.

Since you want your BSD application to be used commercially, you would need to release it separately from the extended AGPL3 version of the application - which means two distinct links on your download page, with a clear explanation on the difference.

(NOTE: Anywhere I use "BSD" in this answer, it's important to note this refers to the "modified BSD" not the original BSD.)

What happens if I use other libraries which are licensed under BSD or anything else?

That's fine. So long as the license allows for the code to be re-released under a compatible license and the AGPLv3 is considered compatible (which the BSD is - see a full list here), then you've got no problem.

If you plan on using lots of libraries/etc then it's a good idea to maintain a distinct credits file, where you can list each specific component you use, its website address, licensing requirements, and so on.


(usual disclaimer: I'm not a lawyer, follow at own risk, etc)

Licensed under: CC-BY-SA with attribution
scroll top