7

I have been developing an open-source software under the GNU GPLv3 license for 3 years (as part of my PhD thesis) and I am releasing the source code to the public. Now I am planning to write a plug-in for that software and distribute the plugin commercially without disclosing the plugin's source code. I was wondering if this is allowed?

Note: I know that GPLv3 is a copyleft license and any modifications to the code must also be made available under the GPL. But here, I am not touching the source code and I am making a plugin that connects to the GPLv3 code.

2
  • 2
    Also, welcome to open source SE! The answer to your question might also depend on who is the copyright owner of your PhD's code (you or your university?)
    – Zimm i48
    Commented Sep 6, 2016 at 10:21
  • 2
    Might be a duplicate of opensource.stackexchange.com/questions/1181/… (sorry, the first time I linked an answer, not the question)
    – Zimm i48
    Commented Sep 6, 2016 at 11:38

2 Answers 2

8

From the GNU GPL FAQ:

If I write a plug-in to use with a GPL-covered program, what requirements does that impose on the licenses I can use for distributing my plug-in?

It depends on how the program invokes its plug-ins. If the program uses fork and exec to invoke plug-ins, then the plug-ins are separate programs, so the license for the main program makes no requirements for them.

If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins. This means you must license the plug-in under the GPL or a GPL-compatible free software license and distribute it with source code in a GPL-compliant way.

If the program dynamically links plug-ins, but the communication between them is limited to invoking the ‘main’ function of the plug-in with some options and waiting for it to return, that is a borderline case.

So it really depends on what "plugin" means in your case.

Now, you say that you are the author of the original software. As this was part of your PhD work, you may need to clarify who is the copyright owner for the software you wrote (often, the university is the copyright owner). If you are considered to be the copyright owner, then the GPL license doesn't restrict you in any way (supposing you are not depending on any GPL'd library).

Your question also seems to indicate that you are not completely done with your PhD. If you are still in university, you might have the power to change the license of your software (you need to check this with your supervisor / university staff). You could then just add a specific exemption from the GPL for linking with plugins.

1

Who is the copyright owner of your code? If your university paid you for that work, it probably is your university.

Then the copyright owner can dual license your GPLv3+ code (e.g. give a GPLv3+ license to outsiders, and some other license or EULA to those paying for it). Ask your university lawyers on what should exactly be done for that.

Things are more complex if you accepted patches from individuals outside of your university. But lawyers should know how to deal with that.

I am not a lawyer so don't take my advice seriously

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