On Sat, Feb 12, 2011 at 7:43 AM, Go-Systems <[email protected]> wrote: > Im developing an intranet appliance for recruitment companies using > Ubuntu, MySQL, OpenBD. I would like to know if im allowed to bundle > them together in a prebuilt Virtualbox image, so my clients can just > start the virtualbox on a server of theres.
Ultimately it depends on the license you're planning to apply to your CFML applications. There are multiple layers here so we'll have to walk through each one to get some discussion going. Here's the licenses that apply to the software you'd be distributing: * Ubuntu: GPL and others * MySQL :GPL * Java: GPL * Tomcat (I'm assuming you're using Tomcat?): Apache * OpenBD: GPL with classpath exception (essentially) * Apache web server: Apache * Your application code: ??? As far as OpenBD and your CFML app is concerned you're absolutely allowed to distribute things: http://openbluedragon.org/zerocost.cfm Ubuntu itself is GPL (along with other licenses specific to the applications that are bundled with Ubuntu). I'm not a lawyer but strictly speaking in terms of the GPL if you bundle an application with software that is GPL, then the GPL would apply to the software being released as well since GPL is a copyleft license. That being said, Ubuntu is distributed with all sorts of applications that are not all GPL, so my guess is either Ubuntu has an exception clause in their license (and there's layers to Ubuntu as well, starting with the kernel and moving up from there), or the subtleties of the GPL don't prohibit this. As just one example, Ubuntu ships with the Apache web server, and Apache is released (not surprisingly) under the Apache license, so obviously that's allowed. The other interesting thing that I've never quite gotten to the bottom of is it depends in which direction you look at things. The Apache license is more permissive in terms of what you can and can't do with the software, and it's also not reciprocal like the GPL is, so looking at the Ubuntu/Apache bundle from the direction of Apache, this is no problem. And since this happens all the time in the wild I assume this is the right way in which to view things. Or a much simpler example--there's tons of VM, AMI, etc. images available running a LAMP stack, which would be a mix of GPL, Apache, and PHP license (yes, PHP has their own license) so again, I'm assuming this is all above board or the respective parties would have been screaming about it long ago. That's the long answer. The short answer is based on how I understand all of this working, as well as what goes on in the wild, I don't believe there is anything prohibiting you from distributing an Ubuntu VM that has MySQL, Java, Apache, Tomcat, OpenBD, and your CFML app. > What license am i allowed > to offer it in. I dont want to allow people to repackage it as offer > it for sale, without my consent. Were you planning on offering your application under an open source license or a commercial one? I'd have to ponder this a bit but off the top of my head I do not know of an open source license that would prevent people from re-selling the app as is. The GPL for example, which is the most widely used free software license, does not prohibit resale of GPL-licensed applications. See the first four questions here: http://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney And the explanation of the GPL as it relates to selling here: http://www.gnu.org/philosophy/selling.html If people made modifications to your application and distribute it, if you release your application under the GPL they would be required to release their changes under the GPL as well. Remember that the GPL is the most widely used free software license by far (accounts for nearly 70% of all open source applications), so even though the GPL doesn't prevent someone from taking your app and reselling it, this rarely happens in the wild. In fact, one of the main reasons the GPL is so widely used is because it offers the original author of the code the best protection against people doing things like taking the code, making changes to it, not making those changes available as open source, and even offering the code (modified or otherwise) as part of an application that is closed source. All this *would* be permissible under the Apache and BSD-style licenses. And remember also that copyright comes into play. Copyright is a completely different beast than the software license so I won't even delve into that unless we have to. ;-) Peter Farrell has looked into copyright a lot for the Mach-II project so maybe he can chime in and say a word or three about how that would come into play. What I don't know is if you choose to use an open source license for your application, if you're even allowed to prohibit reselling the entire package given the licenses involved with the software with which you're bundling things. My gut tells me you're not, meaning you couldn't say "my app is GPL but you can't resell it" since at that point it's not GPL anymore (i.e. you're removing one of the rights granted by the GPL). Another option of course is to have everything *but* your application code on the VM, and then make your application a WAR that people just drop into the environment after the fact. Since you wouldn't be bundling then you could apply any license you want to your application. If you want to release your application code itself under a commercial license then you can write the license however you want, but at least based on my understanding of the GPL and taking all this in total, I'm not sure that would be allowed strictly speaking, though there's good info in the first two questions here: http://www.gnu.org/licenses/gpl-faq.html#GPLInProprietarySystem As you can tell by reading that there is a TON of gray in all of this and blurring of lines between all the various components that make up a piece of software. I think the key here is "communicate at arms length" because another key tenet of the GPL is the notion of a "derivative work" which is what the link above is getting at. Phew. Lots of info I know but I wanted to walk through that verbally to illustrate all the issues. Bottom line is this: I don't think there's anything preventing you from doing what you want. The only real question is the license under which you choose to release your application code. If you use the GPL for your application, there's nothing stopping someone from reselling it as is. If they modify the code and distribute it, however, they would be obligated under the GPL to make their changes available under the GPL. If you use the Apache license for your application, people can pretty much do whatever they want with your code, including modifying it and not making their modifications available, or even bundling the code with a closed-source application. If you use a proprietary license you can pretty much apply whatever restrictions you want, and based on the "arm's length" explanation on the FSF site concerning how a proprietary license interacts with the GPL, I think you'd be OK here. Key clause is this: "However, in many cases you can distribute the GPL-covered software alongside your proprietary system. To do this validly, you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program." So the question for a lawyer would be if your application code running on the rest of this stack "make[s] them effectively a single program." To me it doesn't since the rest of the stack certainly exists and can run independently of your application, and you can run other CFML applications on this stack. Honestly you would probably be wise to ask a lawyer about all of this, or the Free Software Foundation does have a license compliance "hotline" email address so if you're considering using the GPL, or want to ask about how a proprietary license applied to your application would interact with all of this, you could check with them: http://www.fsf.org/licensing <http://www.fsf.org/licensing>Sorry for being such a windbag but there's a lot to consider here. :-) I'll be curious to see if others have better insight on all of this. -- Matthew Woodward [email protected] http://blog.mattwoodward.com identi.ca / Twitter: @mpwoodward Please do not send me proprietary file formats such as Word, PowerPoint, etc. as attachments. http://www.gnu.org/philosophy/no-word-attachments.html -- tag/function ref: http://www.openbluedragon.org/manual/ mailing list - http://groups.google.com/group/openbd?hl=en Get to Texas in Feb for OpenCFSummit http://www.opencfsummit.org/
