News for hackers. Stuff that matters.
Re:Blender-OSM Add-on: Current state and ongoing development by edflsafoiewq on Thursday June 10, 2021 @09:08AM (#27460247)
> If you share or publish Python scripts they have to be made available compliant to the GNU GPL as well, if they use Blender Python API calls.

Is it actually possible to put constraints on scripts that make calls to an API like this?

Re:Blender-OSM Add-on: Current state and ongoing development by ygra on Thursday June 10, 2021 @09:23AM (#27460426)
If I remember correctly that depends a lot on the interpretation of the word linking in the GPL. A lot of the license language only works reliably for C code and expectations around it, and things tend to break down in more dynamic languages.
Re:Blender-OSM Add-on: Current state and ongoing development by app4soft on Thursday June 10, 2021 @10:09AM (#27460969)
> A lot of the license language only works reliably for C

Few years ago Ton Roosendaal clarified Blender licensing in a long thread on Twitter:

> Blender is Free Software. It's free to use for everyone. Free to use for any purpose, also commercially. Blender is free to share with others, free to study its sources and free make new versions. Blender is free, forever. #b3d[0]

> This freedom is what makes the GNU GPL license so powerful and it's why it's much more than "open source". The license simply prevents anyone to put restrictions on Blender. That protects users as well as everyone who contribute to Blender.[1]

> If you decide to contribute to Blender, whether as Python script or as C++ code, you have to agree on this freedom. You can keep all rights of your own work, but if you publish or sell or share Blender code, you do it just as Free as Blender is.[2]

> Blender add-ons work, look and feel like Blender features. And as for any other Blender feature that means - it has to be free, free and free forever! Paying for an add-on just means access to the add-on download service... offering it to you as GNU GPL. Your freedom guaranteed.[3]

[0] https://twitter.com/tonroosendaal/status/1135229214607773696

[1] https://twitter.com/tonroosendaal/status/1135229215761195009

[2] https://twitter.com/tonroosendaal/status/1135229217040474113

[3] https://twitter.com/tonroosendaal/status/1135229221838761984

Re:Blender-OSM Add-on: Current state and ongoing development by leoedin on Thursday June 10, 2021 @09:26AM (#27460469)
That seems odd to me. Are they arguing that the API calls themselves are under copyright, and so the GPL applies? That sounds like a similar situation to the Google vs Oracle lawsuit - which ruled that the API usage was fair use.

If I write a Python script which a user can use to interact with Blender, and I share it without sharing a copy of Blender, why does the GPL apply?

Taking this to its conclusion - if I write a Python script on Linux which uses any system APIs, those APIs are also licensed under the GPL. By that reasoning every Python script which runs on Linux must be GPL.

That's obviously not the case - which suggests that maybe the Blender declaration is also unenforceable.

Re:Blender-OSM Add-on: Current state and ongoing development by detaro on Thursday June 10, 2021 @09:40AM (#27460629)
It's not strictly the API definition that's protected, it's the linking to the GPLed software that is (with Python imports considered equivalent to linking). The Linux APIs have an explicit exception in the license allowing this. Blender does not.
Re:Blender-OSM Add-on: Current state and ongoing development by leoedin on Thursday June 10, 2021 @12:24PM (#27462487)
That's interesting to learn about the Linux APIs - not something I knew.

I'm still not sure about the GPL claims though. Imagine I write a Python script which is entirely my own - the only reference it has to a GPLd piece of software is an import statement and a few calls to some APIs.

The Google vs Oracle case made it clear that API usage (and even re-implementation) falls under fair use. The rest of that script is entirely written by me, and therefore I own its copyright. I could even develop the script entirely without running (or even having on my computer) any GPLd software at all - relying just on published documentation of APIs, the usage of which has been established to be fair use.

If I send you just the script. I'm not distributing a GPLd work. Maybe you could choose to run it on your computer, at which point it would resolve my "import x" statement as pointing to some GPLd software. It's only at that point that there's any linking. If you had a different PYTHONPATH setup, the same module might be a different, proprietary implementation, or a mock.

What basis does the copyright owner of the GPLd software have to come after me? I haven't accepted their license. The only person they could possibly have a case against is the end user of the script - who has violated the GPL by linking my non-free script with their GPL software. But if they're not themselves distributing the combined work, is there a case of copyright violation?

Re:Blender-OSM Add-on: Current state and ongoing development by Tomte on Thursday June 10, 2021 @01:58PM (#27463516)
Your argument makes sense when you provide another implementation of that interface. That's what Google did with Android.
Re:Blender-OSM Add-on: Current state and ongoing development by rguetzkow on Thursday June 10, 2021 @12:20PM (#27462434)
I am not a lawyer and the opinions expressed herein are my own.

The argument is not that the API itself is protected by copyright. This wouldn't work anyway, as APIs aren't protected by copyright under EU law. From my understanding the argument is that the implementation of the API is protected by copyright. If the script/add-on for Blender depends on the `bpy` package (Blender's implementation of the API) and is not being able to function without out it, then it should be considered a "single program" based on the interpretation of the FSF provided in their FAQ [0]. Thus the script/add-on is derivative work and subject to the GPL license. This assumes that the interpretation the FSFs provides in their FAQ would hold up in court.

[0] https://www.gnu.org/licenses/gpl-faq.en.html#GPLPlugins

Re:Blender-OSM Add-on: Current state and ongoing development by tinus_hn on Thursday June 10, 2021 @01:11PM (#27463030)
It has been held that a module that uses the gpl only symbols in the Linux kernel needs to be gpl licensed.

In contrast the Oracle suit was more about reimplementing the api.