Blender GPL licences & permissive licenses

Hello. I’d like to get some clarification on licenses relating to Blender’s GPL license and other, permissive licenses. If software using a permissive license, and the license is GPL compatible, does that mean it can replace Blender’s GNU GPL license relating to add-ons and scripts that contain Blender-Python API calls? Or not because permissive licenses are weaker then GPL licenses. As with many of Blender’s license aspects, the official license statement for add-ons and API usage is a tad confusing.

I am neither a lawyer nor an expert on the subject so I’m sure someone else will chime in as well but from everything I’ve read about GPL it means that the license has to be GPL as well as soon as there are any calls to Blender’s API. No wiggling out or mixing with a different license model, as far as I am aware.

Not a lawyer or official Blender Foundation advice, but will give my personal interpretation.

Generally speaking, you receive software under certain license terms and those terms can’t be replaced. Many permissive licenses are subset of the GPL license terms, so if you combine software with those licenses then you can treat the combined work as GPL licensed.

The question is more, if you use Blender Python API calls, does that make your add-on a derived work of GPL software that should maintain the license terms, or is it a new work? This is not a settled question, people have different opinions. But my understanding is that the interpretation of the FSF is that it is a derived work, and the Blender Foundation follows that.

5 Likes

Hello and thank you for the reply. Could you explain a bit more about this section? Does derived work fall under GPL or permissive licenses?

The official license statement from that page on this subject is :

Blender’s Python API is an integral part of the software, used to define the user interface or develop tools for example. The GNU GPL license therefore requires that such scripts (if published) are being shared under a GPL compatible license.

While you may or may not agree with it, they are rather clear about their views on this. Can you elaborate on what you are confused about?

I figure it would be easier to explain if I gave some examples. A debate has been raised surrounding Armory3D, which was officially showcased at a BCON 2016. Armory’s licenses have been raised in question, because despite the Armory Engine code, which is built using Haxe and licensed under zlib/libpng (which is permissive and GPL compatible), it uses some Blender API calls for the add-on integration to Blender. The Blender license is already prominently displayed officially though.

There have been statements at the zlib/libpng license overrides the GNU GPL license because it’s GPL compatible.

However another person is claiming that because zlib/libpng is permissive, it’s weaker and not GPL compatible.

The same person from above is also claiming that Armory is an, “infringement of GPL.”

In my opinion, even if the 1st infringement statement of the person was true, how would the latter be true? It’s completely separate from the add-on and API calls and thus under its own license I believe. I very think it unlikely Blender Foundation would sponsor a person and his organization if they were, “infringing,” on the Blender license.

From what I understand, Armory itself uses the Zlib license and was not derived from Blender code. The Blender Armory add-on uses the GPL license. If so, that seems all fine, I see no reason to change anything. Maybe a text file in the repository could help make that unambiguously clear.

Could the Blender Armory add-on be distributed under only the Zlib license? There’s two issues. One is that at least in this repository, to me it looks like that code was meant to be under the GPL, and so if you want to change that to something more permissive, you’d need to get the approval of the authors of that code (including contributors).

The other is that since some of the source files are using the Blender API, it can be argued that they are a derived work of GPL software and therefore must be licensed under the GPL. Some people argue otherwise. I can’t tell you who is right, but just say that keeping it as GPL means you don’t have to care one way or the other.

1 Like

Only potential problem i can see is that they distribute the ZLIB code alongside the GPL addon and some proprietary binaries like D3DCompiler_47.dll in their SDK (the only download option on Armory | 3D Engine) which afaik the GPL (see section 5c) doesn’t allow for.

If they offered the blender addon as a separate download this should be easily resolved though.

1 Like