[Bf-committers] GPL + Python, revisited

Ton Roosendaal ton at blender.org
Tue Mar 31 15:07:41 CEST 2009


Hi,

Still not much news from FSF on the topic, apparently it's not simple 
for them either.
I proposed to them (and to this list now) to make the following 
official FAQ statement on the Blender Python license;

(Explanation follows, scroll down)

----------------

* Licensing Blender Python scripts

When a script uses calls that are part of the Blender Python Script 
Language, the interpreted program, to the interpreter, is just data; 
you can run it any way you like, and there are no requirements about 
licensing that data to anyone.

The Blender Python Script Language is defined here:
http://www.blender.org/documentation/248PythonDoc/index.html

This is true only and if the script doesn't use "bindings" (calls to) 
to other libraries or facilities that are GPL licensed.

The GNU GPL defines that combining GPL licensed software (like 
libraries, static or dynamic) via an interpreted script, effectively 
will make the script GPL-compatible too.

http://www.gnu.org/licenses/gpl-faq.html#IfInterpreterIsGPL

In case you link a Blender Python script to modules, libraries, 
plug-ins or programs that are not compatible with the GPL license, the 
GPL license defines they form a single program, and that the terms of 
the GPL must be followed for all components when this case gets 
distributed.

* Licensing Blender .blend files

The output of Blender, in the form or .blend files, is considered 
program output, and the sole copyright of the user. The .blend file 
format only stores data definitions.
In case you embed the .blend file with Python scripts, and the scripts 
provide bindings to other libraries or facilities, the above topic 
applies.

* Disclaimer

The above statements are not yet officially confirmed by the Free 
Software Foundation. In case the FSF concludes there's a conflicting 
situation with the GNU GPL, the Blender Foundation will seek efforts to 
include an amendment in Blender's GNU GPL license to secure this, based 
on permission from all contributors, and relying on BF's compilation 
copyright.

-----------------

Note: Once 2.5 is out, we can also limit a license amendment to the 2.5 
Python API, making it less complicated to get the contributors to agree 
on it.

The basic thought behind this proposal is to ensure that all artistic 
output that's stored in a .blend file, remains the sole property of its 
creator. Python constraints, logic scripts, procedural objects, custom 
editors or exporters included.

However, if you extend Blender - via Python - to link to other programs 
or libraries, you have to follow the letter of GPL still. This 
extension simply occurs when your code doesn't run anymore in the 
Blender script interpretor.

What this would enable is for example:

- Companies posting exporters or importers under own copyright and 
license conditions.
- Studios creating a Blender configured level editor, with proprietary 
file exporting, and limit distribution of these scripts or .blends to 
own relations only.

What is *not* possible then:

- Offering the Blender binary with own scripts under a single closed 
license.
- Combining the Blender Player with a .blend file, under own license.
- Or in general, limit distribution or usage of Blender in any way 
other than GPL. :)


-Ton-

------------------------------------------------------------------------
Ton Roosendaal  Blender Foundation   ton at blender.org    www.blender.org
Blender Institute BV  Entrepotdok 57A  1018AD Amsterdam The Netherlands



More information about the Bf-committers mailing list