Advertisement

Questions about GPL License

Started by January 25, 2010 10:11 AM
24 comments, last by jtagge75 14 years, 10 months ago
Well, the reason for all these questions is that, while we may be able to pay for the license eventually, we won't be able to at the beginning...

On a side note, with ICE you are allowed to link directly to other libraries using the apache license version 2.

from their license addition:

========

Copyright (c) 2003-2009 ZeroC, Inc. All rights reserved.

This copy of Ice is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License version 2 as
published by the Free Software Foundation.

Ice is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details.

You should have received a copy of the GNU General Public License along
with this program; if not, see http://www.gnu.org/licenses.

Linking Ice statically or dynamically with other modules is making a
combined work based on Ice. Thus, the terms and conditions of the GNU
General Public License cover the whole combination.

In addition, as a special exception, ZeroC gives you permission to
combine Ice with:

a) the OpenSSL library (or with modified versions of OpenSSL that use the
same license as OpenSSL)

b) any library licensed under the Apache License, version 2.0
(http://www.apache.org/licenses/LICENSE-2.0.html)

c) any Orca library (http://orca-robotics.sourceforge.net) licensed under
the GNU Lesser General Public License (LGPL), version 2.1
(http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html)

d) any code from the Mumble project (http://mumble.sourceforge.net)
licensed under the BSD license

You may copy and distribute such combinations following the terms of the
GNU General Public License for Ice and the licenses of the other code
concerned, provided that you include the source code of these other
libraries or code when and as the GNU General Public License requires
distribution of source code.

If you modify this copy of Ice, you may extend this exception to your
version of Ice, but you are not obligated to do so. If you do not wish to
do so, delete this exception statement from your version.

========
We are building a Server for a MMO. Our network is using ICE which is GPL. Our server is based on Plugins each plugin implementing different game logic. If we were to release our basic Server opensource because using ICE it would have to be. However would our plugins need to be released as well or could we keep them closed source if they don't contain any parts of ICE?

So, this is a really dicey issue, for the reasons given. If you are LINKING any software directly to ICE, then that software must be released under the GPL. Dynamically Linking plugins and stuff is a complex, but probably unsafe, issue. If it were me, I would not use ICE, because a GPL library means that the linked code must be GPL as well.

Also where the server would not be released to ANY ONE would it even need to be released Opensource or under that license is it just that if you were to release it it would need to be released as opensource?

Actually, this one is easy. If you do NOT release your server, ever, either in source code or binary form, in any sense, then the licence of the code is irrelevant. The GPL does not apply. See the following quote from the GPLv2.

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.


Really, just read the license. It should answer most of your questions, but here is the gist:

Derivative works are allowed, but only if you allow derivative works too....derivative works must be under GPL
If you link with GPL code, it is a derivative work, this includes dynamic linking.
You can use GPL code however you want, as long as you don't distribute it (at ALL)
Advertisement
If you are distributing a work derivative of a GPL work (which is any work that links to a GPL library or program) then you have to distribute the source code of that derivative work (I believe under the GPL). Since you are distributing the client, you would have to GPL-license and distribute the source of that client. Since you are not distributing your server, you would probably not have to GPL license/distribute the source to your server. However, if you are using the Affero GPL in any part of your server, you would have to GPL-license it and distribute the source.

You'll note I bolded the "probably." You should consult with a lawyer to make sure that this is OK. Most web services built with free software do not require distribution of source, however in your game the client is pretty strongly tied to the server. Whether this has any legal implications, I don't know, because I'm not a lawyer.

As far as my personal opinion goes, I agree with Sneftel. Its obvious that you are not interested in being "on board" with the GPL with regards to your software. That is, what you wish to do with your software is not in-line with the spirit of the license. You're not interesting in contributing to the "FOSS community," but utilizing pre-built libraries to develop a commercial/proprietary service. There's nothing wrong with that, but that means you're basically rules-lawyering, and that means you're playing with fire. I would strongly recommend you simply avoid the GPL, and stick with LGPL/BSD/Apache/Commercial licensing. There are plenty of high-quality non-GPL libraries that you can use.

I don't mind having our engine opensource. We have already talked about having it opensource because if it is opensource then people can contribute to the project and we get more done in less amount of time. However what I do not want is to have our game assets opensource. Our scripts, database, items, story, races, textures, GUI files, ect. That stuff CAN NOT be opensource if we want to have a viable project that is our own.
In Development:Rise of Heros: MORPG - http:www.riseofheroesmmo.com
Yes, but "open source" is not the same thing as the GPL -- if possible, I too would caution avoiding the GPL in favor of other open source licenses.
can you give us a list of Network Libraries that supports both C++ and Java that is free? That is the problem we are facing. Ractoc is a professional Java developer so we are doing the server in Java and I am doing the client in C++ using Ogre3D for rendering. We have $50 at the moment which is my personal money which I am planning on getting a license for Particle Universe and maybe some concept art using. Other then that we have NO funding. Also we have a deadline of June 1st for the release of our first prototype.
In Development:Rise of Heros: MORPG - http:www.riseofheroesmmo.com
Advertisement
You're probably better off asking that specific question in the Multiplayer and Networking forum.
Quote: Original post by EmpireProductions
I don't mind having our engine opensource. We have already talked about having it opensource because if it is opensource then people can contribute to the project and we get more done in less amount of time. However what I do not want is to have our game assets opensource. Our scripts, database, items, story, races, textures, GUI files, ect. That stuff CAN NOT be opensource if we want to have a viable project that is our own.


GPL doesn't cover the art assests. Nothing says you can't give all the source away for free then charge a license to use the art.


Quote: Original post by EmpireProductions
I don't mind having our engine opensource. We have already talked about having it opensource because if it is opensource then people can contribute to the project and we get more done in less amount of time. However what I do not want is to have our game assets opensource. Our scripts, database, items, story, races, textures, GUI files, ect. That stuff CAN NOT be opensource if we want to have a viable project that is our own.
The implications of the GPL (and as jpetrie said, make sure to distinguish "open source" and "GPL") get hairy when it comes to plugin architectures and multi-license aggregation, but when it comes to non-code resources they get downright hirsute. The general consensus seems to be that art and such are part of a GPLed work and must themselves be GPLed, yet nobody wants to deal with applying the GPL to things like textures. As a result, it's common to release the engine code under the GPL, and to release the resources under both the GPL (cuz its required) and a more permissive and more art-focused license such as one of the Creative Commons licenses. Alternatively, if they hold the copyright to ALL of their code and can thus multi-license at will, they release their code under GPL and their art resources remain closed-"source". Neither situation applies to you (you don't own the copyright to ICE, and you don't want your art resources to be unrestricted), which puts you in a bit of a pickle. Did I mention the whole GPL wagon thing?
Quote: Original post by EmpireProductions
I don't mind having our engine opensource. We have already talked about having it opensource because if it is opensource then people can contribute to the project and we get more done in less amount of time. However what I do not want is to have our game assets opensource. Our scripts, database, items, story, races, textures, GUI files, ect. That stuff CAN NOT be opensource if we want to have a viable project that is our own.


You don't mind, but I suspect that "Software Freedom! (as defined by Richard Stallman)" is pretty far down on the list of things you care about in your project. It's also pretty obvious that you're not interested in having your software be "Free Software," in the purest definition. The GPL is, primarily, a license designed to promote Stallman's, and the Free Software Foundation's, views on "Software Freedom." If you don't want your software to be subject to the so-called four freedoms, then full-on GPL libraries are probably a bad choice.

Now I don't recall whether art assets are covered. Sneftel says that they are, but I seem to recall that they are not. That is, the GPL only regards software, but not necessarily assets used by the software. However, its certainly not in the spirit, and so I may actually be wrong in that assumption.

Edit: I thought I'd add this: The GPL does not kick in until you actually release your software. That means that you may be able to develop your software using a GPL license and then buy a commercial license when you release. This depends on the copyright holders of the software, however. For example, some holders might stipulate that you choose commercial or GPL at the time when you start development. However, looking at Ice's licensing page, I note that they claim to be flexible and ask you to contact them to discuss licensing. Have you tried asking them directly?

This topic is closed to new replies.

Advertisement