Author Topic: Planeshift License - Does it violate the GPL ?  (Read 5020 times)

Vengeance

  • Veteran
  • *
  • Posts: 1452
    • View Profile
(No subject)
« Reply #30 on: December 22, 2004, 07:20:57 am »
I think we need another sub-forum just for these repetitive GPL discussions.  It might save the team some typing.  Quotes below are from http://opensource.org/licenses/gpl-license.php

a) The GPL is about protecting the authors (us, the PS team) from potential infringers (people like you, who would take our code, modify it, and sell a game from it).  It isn\'t there to protect you.  It protects us, the authors.

Quote
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.


PS is a work written entirely by us.

b) What the GPL protects the PlaneShift team from is people taking our code and making derivative works from it.  A \"derivative work\" is a complex legal term with many nuances, but it basically means that no one can take our engine, change/add a few things and rename it to their own thing unless they too GPL their new engine and give us credit for our part.

Quote
The \"Program\", below, refers to any such program or work, and a \"work based on the Program\" means either the Program or any derivative work under copyright law


Sections 5-6 of the LGPL license get into more detail on defining derivative works in code, DLLs and so forth, but the bottom line is that no one can make a derivative work of the PS engine without GPLing it.

c) The GPL is about code, not art, not models, not quests, not config files.

Quote
For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable.


or even this is relevant:

Quote
You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange;


There are other ways to fulfill the requirement in Section 3, but they all come back to machine readable source code--not data files.

d) Art/Content is not included.  The Art and Content for PlaneShift are separate works with separate copyrights from the programs and modules which make up the GPL PlaneShift engine.  Quoth the GPL:

Quote
If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works.


i.e. Model files and ogg files are separate works from the exe files.  Whether you download them in one zip file or not.

I\'ll try to rebut some of the earlier points made in a post in a few minutes.

- Vengeance

ramlambmoo

  • Hydlaa Notable
  • *
  • Posts: 567
    • View Profile
(No subject)
« Reply #31 on: December 22, 2004, 07:24:06 am »
hmmmm vengance:

\"d) Art/Content is not included. The Art and Content for PlaneShift are separate works with separate copyrights from the programs and modules which make up the GPL PlaneShift engine. Quoth the GPL: \"For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable.:

\"If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works.\"

READ a bit more:!:

\"But when you
distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\"

It CLEARLY states that if the artwork is included as part of the program then it MUST come under the GPL.

\"the distribution of the whole must be on the terms of this License,\".

clear as ,... er cyrstal


EDIT***

\"For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable.\"

Yes.  You dont have to provide the source for the quests and models and textures.  However it is covered by the license, meaning you cannot deny the use of it to any third party.
« Last Edit: December 22, 2004, 07:33:25 am by ramlambmoo »

Diamondcite

  • Hydlaa Resident
  • *
  • Posts: 165
    • View Profile
(No subject)
« Reply #32 on: December 22, 2004, 07:34:57 am »
They are distributed together for our convience, if they so desire they can make us download each INDIVIDUAL art file from a website one at a time...

Edit: I really don\'t wish for a harder life needing to download even more... Come to think of it.. neither of us knows how CB will be released, maybe there will be a multi os art only download.. no one knowns... but packaging it with the distro makes it a quicker download with less the manage.
« Last Edit: December 22, 2004, 07:43:49 am by Diamondcite »
I like taking things literally, going overboard is fun! Now... why do I keep getting odd looks?

ramlambmoo

  • Hydlaa Notable
  • *
  • Posts: 567
    • View Profile
(No subject)
« Reply #33 on: December 22, 2004, 07:37:10 am »
\"They are distributed together for our convience, if they so desire they can make us download each INDIVIDUAL art file from a website one at a time...\"

yes but they havnt.  Thats the problem. That makes it one whole release, making everything convered under GPL.
« Last Edit: December 22, 2004, 07:37:38 am by ramlambmoo »

Vengeance

  • Veteran
  • *
  • Posts: 1452
    • View Profile
(No subject)
« Reply #34 on: December 22, 2004, 07:37:49 am »
Quote
If I add a module to a GPL-covered program, do I have to use the GPL as the license for my module?
    The GPL says that the whole combined program has to be released under the GPL. So your module has to be available for use under the GPL.


A \"module\" is a technical term.  It is a piece of code which links into an executable file.  Not just any file in a distro.

Furthermore, see this distinction in the GPL FAQ about code vs data:

Quote
If a programming language interpreter is released under the GPL, does that mean programs written to be interpreted by it must be under GPL-compatible licenses?
    When the interpreter just interprets a language, the answer is no. The interpreted program, to the interpreter, is just data; a free software license like the GPL, based on copyright law, cannot limit what data you use the interpreter on. You can run it on any data (interpreted program), any way you like, and there are no requirements about licensing that data to anyone.


Our content is our data and the GPL does not affect it or touch it.  I assume we will do what we have to do to enforce this on people who infringe our license.

- Venge

Vengeance

  • Veteran
  • *
  • Posts: 1452
    • View Profile
(No subject)
« Reply #35 on: December 22, 2004, 07:42:15 am »
Ok last post because it gets so tiresome arguing with teenagers who think they have law degrees:

from the prior post:
Quote
That makes it one whole release, making everything convered under GPL.


The distro packaging has nothing to do with what is defined as a \"Work\" or a \"Derivative Work\" under the GPL.  Please rtff.

Quote
What is the difference between \"mere aggregation\" and \"combining two modules into one program\"?
    Mere aggregation of two programs means putting them side by side on the same CD-ROM or hard disk. We use this term in the case where they are separate programs, not parts of a single program. In this case, if one of the programs is covered by the GPL, it has no effect on the other program.

    Combining two modules means connecting them together so that they form a single larger program. If either part is covered by the GPL, the whole combination must also be released under the GPL--if you can\'t, or won\'t, do that, you may not combine them.

    What constitutes combining two parts into one program? This is a legal question, which ultimately judges will decide. We believe that a proper criterion depends both on the mechanism of communication (exec, pipes, rpc, function calls within a shared address space, etc.) and the semantics of the communication (what kinds of information are interchanged).

    If the modules are included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program.

    By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.


Code and data are aggregated, not combined.  No matter how badly you want it to be otherwise.

- Venge

ramlambmoo

  • Hydlaa Notable
  • *
  • Posts: 567
    • View Profile
(No subject)
« Reply #36 on: December 22, 2004, 07:46:28 am »
\"If a programming language interpreter is released under the GPL, does that mean programs written to be interpreted by it must be under GPL-compatible licenses?
When the interpreter just interprets a language, the answer is no. The interpreted program, to the interpreter, is just data; a free software license like the GPL, based on copyright law, cannot limit what data you use the interpreter on. You can run it on any data (interpreted program), any way you like, and there are no requirements about licensing that data to anyone.\"

So your defense is that psclient.exe is an interpreter that is interpreting the date you provide?  Admirable defense, but it donst apply if you release the data with the interpreter at the same time.  You have NOT released planeshift as an interpreter, it is not stated anywhere, you have released it as a whole program that can be run.  Can planeshift be run without this data?  Planeshift is designed to run with that data.  An interpreter does not need that data to run.  Planeshift does, and the data is part of the program as a whole.

ramlambmoo

  • Hydlaa Notable
  • *
  • Posts: 567
    • View Profile
(No subject)
« Reply #37 on: December 22, 2004, 07:50:06 am »
\" If the modules are included in the same executable file, they are definitely combined in one program. If modules are designed to run linked together in a shared address space, that almost surely means combining them into one program. \"

If modules are designed to run...in a shared address space.

The art and the exe is designed to run togeather.  Therefore that \"almost surely means combining them into one program.\"
therefore
\"the whole combination must also be released under the GPL\"

planeshift is released as one, with the art and the exe togeather.  MB was ONE package.  You dont download the engine, then the artwork- it all goes togeather.  The modules ARE designed to run in a shared space, togeather.  Therefore the entire thing is GPL.

Im not saying this because i want to steal the art.  But i find it extremly doubtful your claims would be upheld if you attempted to sue somebody for copyright infringment.


Most importanty vengance:

This is a legal question, which ultimately judges will decide.

neither of us knows 100%.  We both think we\'re correct, but we dont know.

do you want a judge to decide the future of planeshift?  Im not even a part of the dev team and i can tell you i dont.  It would require minimal changes to prevent this, so why not do so?  Just to be sure, for the sake of the project.
« Last Edit: December 22, 2004, 07:59:57 am by ramlambmoo »

Vengeance

  • Veteran
  • *
  • Posts: 1452
    • View Profile
(No subject)
« Reply #38 on: December 22, 2004, 07:59:59 am »
It is somewhat amusing at this late hour that you, Ramalamb, refuse to see the difference between code and data.

I quoted the interpreter section of the GPL FAQ because it clearly does make a distinction and say that interpreted scripts are data, and thus not covered.  Saying that a jpg is data and not code is so stupidly redundant they don\'t bother talking about that obvious case.

As far as address spaces go, saying that data loaded by a program into its address space automatically forces that data to follow the license of the parent program is similarly stupid.  Under this logic, Microsoft would own every document ever written in MS Word because that data (the document) was in the address space of Word.

We are the authors.  We license whatever we want under whatever scheme we want.  The PS engine is not a derivative work of anything else and the GPL protects us, it doesn\'t force us into crazy cockamamie situations as you are trying to push here.

Sorry if that disappoints you.

- Venge

Jaedru

  • Traveller
  • *
  • Posts: 15
    • View Profile
(No subject)
« Reply #39 on: December 22, 2004, 08:03:10 am »
Actually... I just have to point something out.

By downloading the client, you\'re *not* downloading the PlaneShift project. The client download does not include source, the server, admin utils, nor MYSQL stuff.  This is where the distinction of PS the game and PS the project comes in. Nobody who just downloads a client can have the reasonable expectation of being able to develop the game based on that.

Here is also why I had thought my comparison to a Linux distro to be somewhat relevant. A linux distro can and often does contain proprietary components. Ones which are not aggregated, and are clearly considered seperate by the GPL as pointed out by Vengeance. Yet you can obtain the whole thing in one download.

Further, after some googling, projects such as KDE often license their artwork under a separate license. It lives in a different directory (as does the art in the PS client, least for MB) and includes a text file notice concerning this fact (as does the PS art directory.)

Clearly, mightier legal minds have not seen this common practice as a GPL violation.

ramlambmoo

  • Hydlaa Notable
  • *
  • Posts: 567
    • View Profile
(No subject)
« Reply #40 on: December 22, 2004, 08:03:48 am »
\"Sorry if that disappoints you. \"

ah, believe whatever you want.  I wish it wasnt that way, but if you dont want to change it dont.  But dont complain if you cant defend your copyright.  If you dont want to change it to be sure, well whatever. I dont see how youd have anything to lose, but suit yourself.

And of course i know the difference.  Im just quoting the license.  Just because we know the difference, dosnt mean a judge who has never use a computer will, you know? Just because we know the difference dosnt mean the people who have the power to decide will.  Why not make sure?
« Last Edit: December 22, 2004, 08:06:19 am by ramlambmoo »

jorrit

  • Developers
  • Hydlaa Citizen
  • *
  • Posts: 497
    • View Profile
(No subject)
« Reply #41 on: December 22, 2004, 08:33:12 am »
You are all forgetting one thing. There are two things to talk about here. First there is \'PlaneShift The Engine\'. This is what you can checkout from CVS and this is fully GPL. Then there is \'PlaneShift The Game\'. This is a non-GPL game that uses the \'PlaneShift Engine\'. The rules and art are input for the PlaneShift Engine and don\'t have to fall under the GPL license at all.

A good analogy is \'gcc\' which is GPL but you can still use GPL to make commercial or non-GPL programs. Also there are GPL databases that can be used to make commercial SQL applications. There are plenty of other examples. The point is that the rules and data are input for the GPL licensed engine. And this is fully ok.

So there is no violation here. Only you have to be careful about what you speak when you talk about \'PlaneShift\'. There are in fact two distinct entities: The Engine and The Game.

Greetings,
Project Manager of Crystal Space, CEL, CrystalBlend and Crystal Core. Please support Crystal Space with a donation.

swift

  • Hydlaa Resident
  • *
  • Posts: 148
    • View Profile
(No subject)
« Reply #42 on: December 22, 2004, 08:34:43 am »
I would strongly suggest that, while it **may** be possible to defend the present liscencing system if a malevolent group wanted to take items which should be protected under the \"Planeshift\" liscence we endeavour to change the liscence for the CB release.  

(If that is still possible using the CS engine, I\'m certainly not sure on that one)

It would be prudent to change the liscence anyway,  to something very similar to the GPL but stating explicitly that artwork does not need to be released under the same liscence as the game.  This could avoid legal problems later on, which could potentially cripple the project if a company (lets say MS) decides that they want to take Planeshift, burn it to disks, start up a large advertising campaign and sell the game to unsuspecting public without helping the project.  While we **THINK** that we are covered, MS (and other large games companies) will have legal teams that are sure to think otherwise, and will certainly delay the case until we run out of money.  

A change of liscence would be a simple step to take, requiring no change to the ideas expressed by the orginal liscenses, that might well save us lots of trouble in the future.

Edit by me:

While Jorrit\'s post suggests that the engine and game are different things, and personally I realise that this is true, the website does not show this to be the case.  It simply says \"Download Planeshift\".  To a user/evil empire lawyer this shows that they are one and all.  If the page was to say something like this:

Download Planeshift Engine, A GPLed game enigne.  

Download Planeshift Game, a game for the open source Planeshift Engine.

it would convey a different message.  
« Last Edit: December 22, 2004, 08:40:00 am by swift »
Ingame Names (CB) : Calcius Sakor, Timgiffney Calcior

ramlambmoo

  • Hydlaa Notable
  • *
  • Posts: 567
    • View Profile
(No subject)
« Reply #43 on: December 22, 2004, 09:56:35 am »
i agree with swift.  as computer programmers we understand the difference, but would a judge?  I think it certaintly would be prudent to make it clear in the license, if not for any of reason to just be sure.

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #44 on: December 22, 2004, 10:33:28 am »
Quote
In the PlaneShift Project we have three different licenses:
   1.      The first one is GPL. This license is applied to all our source files except the rpg rules ones. You learn more about that license here.
   2.      The second one is PlaneShift License. This license is applied to all artwork and texts in this web site and is applied to all art/models/music/texts/names/setting/... present in the game except the ones covered by third license (see below).
   3.      The third one is the Joint-Copyright PlaneShift License. This license is applied to contributors and allows the author to maintain his copyright while giving to PS the right to use his material. We give more details on that option below in this document


The license page clearly states that the code only is under GPL, and anything else isn\'t. Having the site say \"Download PlaneShift\" means nothing. The license page has already said  which parts of the download are under which license. Using your example of someone going and selling the game as you can download it, they would be in breach of the PlaneShift license. You can download the plain code from the CVS and all the programs will run, so you don\'t NEED the art to actually run the game. It\'s just an added extra which is under a different licence. Having the download contain both GPL and non-GPL stuff doesn\'t suggest that all of it is GPL. If I put the plain engine into a zip file with some metallica songs as the music, that wouldn\'t make the metallica songs be under GPL. :P