Freeing the 3D desktop
Last week SGI released a new version of the SGI Free License B. The terms of this license are identical to the terms of the X11 License, with an optional notification clause added on for convenience. It is a free software license.
Previous versions of the SGI Free License B were nonfree. Luckily for us, however, they included this clause:
Once Covered Code has been published under a particular version of the License, Recipient may... choose to use such Covered Code under the terms of any subsequent version published by SGI.
So, now that SGI has released a new, free version of the license, users can take advantage of its terms. SGI has just made a large and invaluable contribution to free 3D software, and we're very thankful to them for that.
Unfortunately, today it still isn't be possible for free system distributions like gNewSense to add OpenGL support back to xorg just yet—there are still a few legal loose ends that need to be tied up first. But we're getting right to work on resolving those issues, and we're confident that we're going to be successful.
Here's the deal: all of the code that SGI contributed to Mesa is covered by the SGI Free License B, so that is all free software now. Most of the code that SGI contributed to xorg is available under this license too, but there are a few exceptions. A little bit of the code was released under the GLX Public License. That code can be found in these files:
proto/glproto/glxint.h
xserver/GL/glx/glxext.c
xserver/hw/dmx/glxProxy/glxext.c
Since that code was originally contributed, two things have happened in parallel. First, developers outside of SGI have been changing it to better meet xorg's needs. Second, SGI later released their original code under the SGI Free License B.
Because it has been released under the SGI Free License B, the code in those files that comes directly from SGI is free software. However, we can't make the same assumption about the changes that other developers made—that code is still covered under the GLX Public License, and still nonfree. We need to get permission from those developers to release their contributions under a free license as well.
Right now, it looks like there have been somewhere between ten and twenty people who made changes to code released under the GLX Public License. We plan to work with them and the rest of the xorg team to get their contributions under an appropriate free software license. We hope that this process will take less than a month. And once it's done, a complete, modern OpenGL implementation will be available to the entire free software community.
Check back at this blog for progress updates as we get the rest of this sorted out and ensure freedom for 3D rendering.