2

I would like to create a plugin using commercial software.

Does the QGis licence permit this?

Are there any restrictions on the licence I can choose to apply to my plugin?

1
  • >You can : > - Execute an external application, whatever its licence, from your >plugin, exchanging data through files for example > - Call a webservice or a socket-based service to a proprietary server >application Vincent, can you provide the source of this information please ? I couldn't find it with the links you provided. Thank you.
    – user79087
    Aug 3 '16 at 7:12
10

Foreword : I think you mean «proprietary» and not «commercial». Any opensource product can be a commercial product, even GPL ones.

You can write plugins for QGIS in C++ or Python, the latter being advised, as it simplifies plugins distribution and deployment.

QGIS is licenced as GPL, and the Python bindings are GPL too. So is PyQT, which is used in QGIS Python modules.

Therefore, any plugin written for QGIS, linking to QGIS C++ library, or importing QGIS python modules or PyQT modules has to be GPL too.

If you want to create a plugin using proprietary software, you can only do it if the link between your plugin and the proprietary software is loose.

You cannot :

  • use a proprietary (or non-gpl compliant) python module in your plugin importing a qgis module
  • link (as in compilation link) your plugin (c++ or python) with any proprietary or non-gpl compliant library.

You can :

  • Execute an external application, whatever its licence, from your plugin, exchanging data through files for example

  • Call a webservice or a socket-based service to a proprietary server application

The FSF faq answers a lot of questions regarding the GPL and what you can do with it (or not) :

http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html

Especially :

http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.html#GPLInProprietarySystem

As for Python, the Plone project ( http://www.plone.org ) has made some licence research and states in its licence FAQ that importing a GPL python module leads you to have to licence your code as GPL :

https://plone.org/foundation/copyright-licensing-logo/license-faq

Note that having your code licenced under the GPL does NOT mean you must distribute it. But if you do, you have to provide the source code as GPL.

3
  • Is this correct? It was my understanding that plgun licenses must "comply" with GPL V2 or later, not that they must "be" GPL. There are many licenses including popular non-copyleft ones like Apache 2.0 or BSD 3 Clause that are GPL compatible. source
    – user2856
    Sep 18 '18 at 22:47
  • You can make your plugin compliant with GPL, but as soon as your release and run it, the "contaminant" clause of the GPL applies, and distributed code becomes GPL.
    – Vincent
    Sep 20 '18 at 11:10
  • Yes, that's what I thought from my reading of gnu.org/licenses/gpl-faq.html#GPLAndPlugins Releasing plugin source under a GPL compatible license is fine. Once the plugin is in use by QGIS the whole combined work is covered by the GPL.
    – user2856
    Sep 21 '18 at 0:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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