Blender OSS and Licenses

Blender 2.93 marks the second installment of the LTS program. This time around, the bar for sharing the builds was raised to a new level. Blender is now fully compliant with the highest standards required by third parties to redistribute it.

"The Lone Blue Widebeest (GNU)" with changes, original credit: Ray in Manila - CC BY 2.0
The Lone Blue Widebeest (GNU)” with changes, original credit: Ray in Manila – CC BY 2.0

This all started in May 2020. At the time Blender’s license was explicitly mentioned in the website as well as in a single license document present in the code base. However this didn’t account for the components Blender depended on.

More specifically, while Blender itself is licensed as GPL 2.0 or later, Blender depends on multiple libraries that each have a different license. To quickly mitigate that, Blender 2.91 started to ship with a license folder that allows users to check the full licenses of all the components built with Blender.

With the release out of the way, the Blender team could revisit this topic again. After a second pass on the state of the licenses, and …

This was not enough.

Some licenses require the full license copyright to be present with the distribution of the software, not only the license text. Usually the copyright refers to the original author of the library or the project maintaining it. For that, in Blender 2.92 an Attribution Document was built using OSS Attribution Builder.

The attribution document is now part of the release checklist and updated every release. While the license folder contains all the licenses of the internal components of Blender, the attribution document covers all the external libraries.

Another Blender release was also another opportunity to assess the requirements for its distribution, and …

This was still not good enough.

One of Blender’s long-standing issues is that a lot of the libraries it depends on are scattered around the web. What happens if the servers are down? Or if the library version needed for an old version of Blender vanishes from their backup?

Add to this that some of those libraries have licenses that require Blender to either host a copy of the source code, or to provide an “offer for source”. For years, third parties distributing Blender had simply trusted Blender to keep this in check — either by making sure the links to other projects are working or that there are local copies hanging around.

To solve this once and for all, Blender 2.93 source code will be distributed with all the libraries used for that version. For incremental versions and LTS updates only the main Blender source code package will be distributed. This was also retroactively implemented for the current stable releases of 2.83 LTS and 2.92 (see links below).

Blender is now shipped with even higher standards. This was a year long endeavour but worth it. Hopefully this journey inspires and assists other open source projects to give licenses the attention they deserve.


This is part of the ongoing effort to professionalize Blender’s infrastructure. A big thanks to the team at Amazon’s Open Source Programs Office for bringing up this topic originally and providing guidance.

Timeline:

Links:

12 comments
  1. how about today? isnt it going to be released???

    • The post was updated with the 2.93 source code links since the release on June 2.

  2. Amazing Work For All Around. Blender is Awesome.

  3. With every release Blender just gets better and better. Excellent work all around. And thanks.

  4. Hello. It would be ideal if all the blender code were provided in 1 archive as a whole, and not as now from here you need to download 1 part of the main code and another using a program from some repository.
    I’d rather download 2 GB but in 1 package and all at once than this.
    Is it really possible to organize this way at all?

    • It would be great to have all source AIO like for example Telegram Desktop has. No messing around and finding libraries, especially those people who use sources without git to compile.

    • Hi, the current archive with the libraries is a single massive package. See the “Source Code with Libraries” under Links.

      What is not implemented just yet is a way to `make deps` straight from the downloaded folder. There is a way to workaround that. But it will be soon possible (though available starting on Blender 3.0).

      That said you are better off building with the pre-compiled libraries. Compiling all the dependencies is supported mainly so it builds in the platform maintainers computers. So they can generate the pre-compiled libraries.

  5. As Long As “Everything Nodes” Converts Blender Features To Work As Nodes, Similar To VFX Pipeline Creation in DaVinci Resolve/Fusion From Black Magic Design, I’m OK With Any Delays…

  6. Hey, guys. I absolutely love what you guys have done with Blender and the unbelievable blessing that it is to be able to make 3D with it.
    Today Unreal Engine 5 has come out, and looking at the nanite technology they use for the crazy amount of polygons their engine can handle now, I was wondering, have you all thought of implementing this same tech with Blender sculpting? This would be a complete game changer (although I like Blender sculpting as it is already).
    Anyway, I’m sure you all have thought about this already. Just wanted to put this out there to see if there are any official plans or news about it. Keep up the fantastic work!

  7. I thought blender 2.93 was scheduled for today??? May 26th…what’s this about early June?

In order to prevent spam, comments are closed 15 days after the post is published.
Feel free to continue the conversation on the forums.