[QGIS-Developer] Plugin licensing requirements

Nyall Dawson nyall.dawson at gmail.com
Thu Jan 7 15:50:55 PST 2021


On Fri, 8 Jan 2021 at 03:18, Vincent Picavet (ml)
<vincent.ml at oslandia.com> wrote:
>
> Hi,
>
> On 07/01/2021 10:43, Nyall Dawson wrote:
> > On Thu, 7 Jan 2021 at 19:13, Topi Tjukanov <topi at gispo.fi> wrote:
> [..]
> >> So if this really is a requirement, should this be enforced somehow and
> >> checked when plugins are accepted to the official repository?
> >
> > Agreed, but keep in mind that it's a little tricky sometimes. A plugin ONLY
> > has to make the modules which import QGIS classes GPL (and consequently any
> > other modules which import these modules). It is entirely possible to
> > separate plugins into two isolated components, a non-GPL "core" layer which
> > does NOT use any QGIS modules, and a GPL layer which imports both the QGIS
> > modules and the non-gpl core. (This is how the licensed SLYR plugin works,
> > for reference).
>
> I would not bet any cent on these assertions. Would you have any serious
> references supporting this ?

No, you're correct -- there's basically only a lot of untested
theories out there, but as far as I can see no definitive answer to
this/legal outcome which has put these theories it to the test.

As you've pointed out the safest approach is complete separation
between the layers. But that approach is still entirely possible to do
for many QGIS plugins, so my original point about it being time
consuming to determine whether a certain file in a plugin's repo is
correctly licensed still stands. Maybe the whole enforcement thing
would just be an unnecessary time sink for the QGIS project itself,
and we're better off just leaving this to the "community" to police...

Nyall



>
> The GPL licence makes the code "viral" through the notion of "link". For Python
> module, it is through import. A link is bidirectionnal, and therefore your whole
> package if distributed is considered GPL.
>
> As far as I know, the only way to have a GPL/proprietary coexistence is to have
> distinct processes and inter-process communication ( through files, web
> interfaces... ). And it can be even trickier if there are strong dependencies
> between modules, which can be interpreted as "derived product" or "link", even
> if there is no link as in "library link" between the modules.
>
> Best regards,
> Vincent
>
>
> >
> > So to enforce this in some circumstances you'd need to check file-by-file,
> > which is going to be time-consuming.
> >
> > Nyall
> >
> >
> >>
> >> Kind regards, Topi Tjukanov Gispo Oy
> >> _______________________________________________ QGIS-Developer mailing
> >> list QGIS-Developer at lists.osgeo.org List info:
> >> https://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe:
> >> https://lists.osgeo.org/mailman/listinfo/qgis-developer
> > _______________________________________________ QGIS-Developer mailing list
> > QGIS-Developer at lists.osgeo.org List info:
> > https://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe:
> > https://lists.osgeo.org/mailman/listinfo/qgis-developer
> >
>
>


More information about the QGIS-Developer mailing list