Is it possible to prevent a specific company or specific employee in that company from using an open-source project that uses GPLv2 license?

To give more details, the project is based on another open-source project that uses the GPLv2 license. However, the new spin-off project adds new features to the original project.

If this is possible, what are the implications for such an action? Also do I need I need to justify the prevention?

  • "to prevent ... a specific employee in that company from using an open-source project"? Are you that employee's boss or otherwise a superior? Some companies have their own internal "no-GPL" policy or may restrict on how certain open source is used. – Brandin Dec 7 '18 at 22:06
  • 1
    Buy the company, then you can prevent them from doing whatever you like ;-) – Doc Brown Dec 8 '18 at 20:34
  • @DocBrown I wish I could do that :) – IoT Dec 8 '18 at 22:26

Such a licensing term is incompatible with the definitions of free software and open source software, which may not discriminate against persons or groups to use, modify, or share the software.

For your own software (either completely original or based on permissively licensed software), it is legally possible to add such a term to your license.

For software that is derivative of someone else's GPL-licensed software, you cannot impose such a term, because that would be an "additional restriction" which you may not include in the licensing terms of a downstream derivative work.

  • But what if i want to impose restriction on my own modification? i.e. I explicitly say that this company cannot use any part of the code that I have completely developed by myself. In this way, I do not restrict them from using the original vanilla project. In my case, I want to explicitly prevent an employee from that company from using my code. In my opinion, restricting the company is a way to signal them regarding a fraud and miss use of the support I provide to my project from that particular employee. – IoT Dec 7 '18 at 22:09
  • 1
    @IoT The GPLv2 gives you permission to modify the software and to publish your modifications – but only under certain conditions! One condition is that IF you publish your modifications, then they MUST be available under the GPLv2 license as well. And the GPLv2 does not allow you to add any restrictions. The terms of the GPL are concerned about copyright and patents, not business ethics. – amon Dec 7 '18 at 23:33
  • 4
    @IoT In other words, you are indeed free to distribute your own work under such a restrictive license, but you may not distribute your work licensed in that restrictive way when it is incorporated in a work with GPL-licensed material. If you did distribute a derivative with that GPL-incompatible restriction, that would be a license violation, and the author of the original GPL'd work could successfully sue you for copyright violation (but may or may not choose to do so) -- or at the very least, those restrictions would be legally void and unenforceable. – apsillers Dec 8 '18 at 0:00
  • 1
    @IoT If you want to publish your own work under a separate, non-GPL license, the best way would be to try to re-use LGPL code or GPL code with linking exceptions, and then write your code in such a way as to fulfill the LGPL or GPL with linking exception requirements, so that your code is considered to be 'separate' from the (L)GPL code. – Brandin Dec 10 '18 at 6:10
  • 1
    @IoT Normally when you re-use GPL software (as a library), the whole program is considered to be a derivative work of the GPL program, so you must use the same license. However, if you use an LGPL software or GPL with linking exception, then when you use the software as a library, your user program is not considered a derivative work, according to the license. – Brandin Dec 10 '18 at 11:14

There are no provisions for barring a company or individual or purpose in any version of the GPL. You could write your own license, but in that case you couldn't use the other open source project.

The Gnu definition of Free Software includes the ability to use, the ability to modify, the ability to distribute the original, and the ability to distribute your changes. The use is for any purpose. The freedom to redistribute applies to anyone with a copy, and they can redistribute to whoever they want.

You don't have to give a copy of your new project to anyone, but anyone you give a copy to can give it to anyone else they want.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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