I'm creating a software application where up until now, the majority of code and assets have been produced by me. There are smaller bits of code that I've taken from other places; these have all been licensed as "do what you want with it". I've gotten to a point however, where I want to incorporate fairly large parts of another project in mine, and this other project is licensed with GPLv3.

I hadn't considered licensing issues with my software up until this point; as of right now it's just sitting on my machine with no official license.

Incorporating this other project in mine would require me to adopt the GPLv3 license as well. I decided that while I'm okay with most of what I've written to be licensed under GPL, I want some of what I've written to be available for proprietary derivative works (which is incompatible GPL).

So how do I get around this? What I've come up with so far is using "plugins" or add-ons for my app. While the base application is GPL, I can license the code I want for derivative works to be LGPL or even closed, and simply have them be plugins for my GPL app. Is this viable? My argument is that a plugin is simply something that adds functionality, and does not make my base application a derivative work of the plugin.

2 Answers 2


You don't have to use the GPL for your own part, just one of many GPL-compatible FOSS licenses.

Using "plugins" is not always a safe way; if the main application cannot do it's work without the plugin, someone could easily claim that the whole application is a derivative work. (IANAL)


Check if the 'other project' does not offer a list other licenses that you can use instead of GPL. It's sometimes called 'FLOSS Exceptions' list.

For example MySQL client license has 24 other licenses on the list, which are not GPL compatible.

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.