GPL Licensing

GPL Licensing

by Jamie Pratt -
Number of replies: 2
I'm unsure of how GNU GPL licensing works in the case of Flash. I did look at the GPL definition on Wikipedia (http://en.wikipedia.org/wiki/GPL) and read through an FAQ on the GNU GPL (http://www.fsf.org/licenses/gpl-faq.html) on the free software foundation web site but was hoping that someone here might clear up a couple of questions I have.

I'm hoping to release some Flash based activity modules under the GPL which I was hoping might be included in the Moodle distribution. It is my understanding that there is no problem at all releasing under the GPL a program that was created in a proprietary authoring environment like the Flash authoring environment. But I'm not so sure of whether I can release Flash movies that uses some of the pre built components under the GPL? Normally if you want to display a text box in a Flash movie with a scroll bar or even sometimes a button you would probably use the prebuilt components. These components are then included in your .fla file that can be edited and published to an .swf. I think that you have freedom to distribute these components in an fla as part of your program to anyone, but Macromedia would retain the license for these and you could probably not distribute the source code. So presumably I can't use these components in something I want to release under the GPL?

If Flash movies using Macromedia's components are not releasable under the GPL then presumably I could still offer them free for download to anyone and they could then be used by anyone. I'm working on a generic Flash movie activity and thinking that it would be possible to have an install directory in Moodle in which Flash movies are automatically detected after upload and which a user can then add to a course as a 'generic Flash activity'. It would presumably be OK to release Flash movies for installing in this directory under a non GPL license although it might not be possible to distribute them with Moodle. What licensing scheme would be best for these movies, just release them into the public domain? or is there a way to license them similar to the GPL?
Average of ratings: -
In reply to Jamie Pratt

Re: GPL Licensing for Flash code

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
I guess it boils down to the license Macromedia has on those components and whether it is GPL-compatible. I believe it's this:

    Supplemental License Terms

and here's some plain English stuff related to it.

Now, "I am not a lawyer", but it looks like you have to make "substantial" changes to those components, keep any copyright info they contain, and not use their name in vain. Providing you do that then they should be fine to distribute in a GPL package. I would include a copy of their license with the code, to be sure.

Best people to ask would be Macromedia themselves, though. If there's any problems at all then I would recommend using Open Source components all the way.
In reply to Martin Dougiamas

Re: GPL Licensing for Flash code

by Jamie Pratt -
Thanks for your response Martin.

I'm not going to modify the components but to use them in my Flash movies, so the supplemental license doesn't apply here but the main End User Licensing Agreement (EULA) for Flash MX 2004. It seems the EULA gives me permission to distribute the components I use in my movies, as part of the compiled movie and also to provide the source code. I think it is common practise to publish .fla files including these components on web sites. See the quote from the EULA for Flash MX 2004 below.

Code in Flash movies typically relies on functionality provided by these components. In Flash a text box for example with a scroll bar would be difficult, possibly impossible to do without using the components provided by Macromedia.

As you can see below the EULA allows distributing the components but with certain restrictions. My question is really is their a way to include code with some restrictions like this to be distributed with a project like Moodle licensed under the GPL.

I wonder does this EULA just grant me the right to distribute the components or if I can distribute them then does it also mean others can distribute them.

Does this EULA exert below look like it might be GPL compatible ?? :

Unless otherwise set forth in the documentation relating to such code and/or the Software or in a separate agreement between you and Macromedia, you may modify the source code form of those portions of such software programs that are identified as sample code, sample application code, or components (each, "Sample Application Code") in the accompanying documentation solely for the purposes of designing, developing and testing websites and website applications developed using Macromedia software programs; provided, however, you are permitted to copy and distribute the Sample Application Code (modified or unmodified) only if all of the following conditions are met: (1) you distribute the compiled object Sample Application Code with your application; (2) you do not include the Sample Application Code in any product or application designed for website development; and (3) you do not use Macromedia's name, logos or other Macromedia trademarks to market your application. You agree to indemnify, hold harmless and defend Macromedia from and against any loss, damage, claims or lawsuits, including attorney's fees, that arise or result from the use or distribution of your application.


*Taken from http://www.macromedia.com/software/eula/tools/

There is a clause in the GPL license that libraries that are normally part of an OS or compiler may be linked to without providing the code but since the Flash components are actually compiled into the final Flash movie these Flash components presumably don't fall within this clause.

Just thinking a loud here really. I guess I'm going to have to write to Macromedia but I want to investigate and understand the issue as much as I can before I write to them.

Jamie