GNU GPL (v2) Compliance

Discuss, get help with, or post new graphics for TTDPatch and OpenTTD, using the NewGRF system, here. Graphics for plain TTD also acceptable here.

Moderator: Graphics Moderators

Post Reply
User avatar
zero.eight
Traffic Manager
Traffic Manager
Posts: 128
Joined: 15 Jun 2007 01:14

GNU GPL (v2) Compliance

Post by zero.eight »

Hello.

I would like to release a graphics set that uses sprites from the OpenGFX project, modified by me, and combines them with my own sprites and coding. I understand that I have to release the set under the GNU GPL v2. In order to achieve GPL compliance, I believe the following will be sufficient:


1. Include a copy of the full GNU GPL v2 with the distribution.

2. Display on the NewGRF's in-game description
  • a) the text "Copyright (C) <year> <name of author>", where <year> and <name of author> are filled in as appropriate
  • b) the following text explaining under which license the set is released (GNU GPL v2):
    This program 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.
  • c) the following text explaining that the set is based on parts of OpenGFX, and that OpenGFX is released under the GNU GPL v2, and the date of modification of OpenGFX-derived sprites:
    This program is derived in part from the OpenGFX Graphics Replacement Set for OpenTTD Copyright (C) 2007-2009 OpenGFX Authors, released under the terms of the GNU General Public License version 2. Original modifications made 2010-01-24.

3. Display in the accompanying readme
  • a) an exclusion of warranty
  • b) the text "Copyright (C) <year> <name of author>" where <year> and <name of author> are filled in as appropriate (same as 1a)
  • c) text explaining under which license the set is released (GNU GPL v2) (same as 1b)
  • d) text explaining that the set is based on parts of OpenGFX, and that OpenGFX is released under the GNU GPL v2, and the date of modification of OpenGFX-derived sprites (same as 1c)
  • e) the following contact information and text explaining that the source nfo and sprites can be obtained upon request:
    I can be contacted on the Transport Tycoon Forums at http://www.tt-forums.net under the username zero.eight.
    The source nfo and sprites for this set are available upon request.



I'd just like to check if anyone can see any problems with the above or omissions that render this distribution non-GPL v2 compliant. If there are any, I will make the necessary corrections. If not, I will have a release available shortly.

Reference - GNU GPL v2 full license: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
OpenTTD: VAST - station tiles and objects | MICS - urban monorail graphical conversion | Universal Rail Type - easier train replacement
User avatar
FooBar
Tycoon
Tycoon
Posts: 6553
Joined: 21 May 2007 11:47
Location: The Netherlands
Contact:

Re: GNU GPL (v2) Compliance

Post by FooBar »

Your planned measures seem alright to me, as long as you state somewhere (in the source) which files ar original OpenGFX and which files are changed (GPL clause 2a).
I'd appreciate it if someone can confirm this.

Furthermore I wouldn't put everthing you list under 2) in the NewGRF description, simply because it won't fit. Posting all that in the readme would do and limiting the newgrf description to that it's your work and that it's derived from OpenGFX.
Yexo
Tycoon
Tycoon
Posts: 3663
Joined: 20 Dec 2007 12:49

Re: GNU GPL (v2) Compliance

Post by Yexo »

Yes, that's all ok.
zero.eight wrote: [*]e) the following contact information and text explaining that the source nfo and sprites can be obtained upon request:
I can be contacted on the Transport Tycoon Forums at http://www.tt-forums.net under the username zero.eight.
The source nfo and sprites for this set are available upon request.
While technically this is ok it's much easier to just upload the source nfo / sprites in the same post as the release. Of course you don't have to, but in case you don't expect pm requesting the source anyway :p
User avatar
planetmaker
OpenTTD Developer
OpenTTD Developer
Posts: 9432
Joined: 07 Nov 2007 22:44
Location: Sol d

Re: GNU GPL (v2) Compliance

Post by planetmaker »

Giving detailed credits in the readme is fine and it would be certainly quite kind, if in the ingame NewGRF description OpenGFX would be mentioned, if significant parts are derived from it.

For sure I'll request the source :-) - but you might - as Yexo proposes - attach the zipped NFO/pcx straight away in a separate file and the clause "upon request" is automatically and more conveniently fulfilled (for others and you) as anyone can obtain it.
DaleStan
TTDPatch Developer
TTDPatch Developer
Posts: 10285
Joined: 18 Feb 2004 03:06
Contact:

Re: GNU GPL (v2) Compliance

Post by DaleStan »

Yexo wrote:Yes, that's all ok.
zero.eight wrote: [*]e) the following contact information and text explaining that the source nfo and sprites can be obtained upon request:
I can be contacted on the Transport Tycoon Forums at http://www.tt-forums.net under the username zero.eight.
The source nfo and sprites for this set are available upon request.
While technically this is ok it's much easier to just upload the source nfo / sprites in the same post as the release. Of course you don't have to, but in case you don't expect pm requesting the source anyway :p
Note that such a PM would be permitted, by the terms of the GPL, to require that source be provided on physical media. Likely a CD-R, but I believe it is your choice of any "medium customarily used for software interchange".

It is sufficient to offer the source for download with or next to the binaries.
It is also permissible to offer the source as "download upon request", but this is neither necessary nor sufficient.
To get a good answer, ask a Smart Question. Similarly, if you want a bug fixed, write a Useful Bug Report. No TTDPatch crashlog? Then follow directions.
Projects: NFORenum (download) | PlaneSet (Website) | grfcodec (download) | grfdebug.log parser
Yexo
Tycoon
Tycoon
Posts: 3663
Joined: 20 Dec 2007 12:49

Re: GNU GPL (v2) Compliance

Post by Yexo »

DaleStan wrote:Note that such a PM would be permitted, by the terms of the GPL, to require that source be provided on a CD-R.

It is sufficient to offer the source for download with or next to the binaries.
It is also permissible to offer the source as "download upon request", but this is neither necessary nor sufficient.
That's an interesting take on clause 3b. I read it as "make the source available upon request", it doesn't say that it needs to be made available in the way the requester asks for. It only says "on a medium customarily used for software interchange", and a download qualifies for that.

For reference:
GPL v2 wrote:3 b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
User avatar
Zephyris
Tycoon
Tycoon
Posts: 2890
Joined: 16 May 2007 16:59

Re: GNU GPL (v2) Compliance

Post by Zephyris »

On a more interesting note, what are you working on? Or do we have to just wait for the release? :D
User avatar
zero.eight
Traffic Manager
Traffic Manager
Posts: 128
Joined: 15 Jun 2007 01:14

Re: GNU GPL (v2) Compliance

Post by zero.eight »

Thanks for the replies,
FooBar wrote:Your planned measures seem alright to me, as long as you state somewhere (in the source) which files ar original OpenGFX and which files are changed (GPL clause 2a).
I'd appreciate it if someone can confirm this.
I've seen this written in other posts (can't find, argh...). As far as I can tell, the license does not require that I indicate which sprites are modified, just that sprites were modified and the date(s) of any such modifications. That said, I'll reference the source sprites and mention the exact changes because it makes clear to whom each work is attributable.
FooBar wrote:Furthermore I wouldn't put everthing you list under 2) in the NewGRF description, simply because it won't fit. Posting all that in the readme would do and limiting the newgrf description to that it's your work and that it's derived from OpenGFX.
OK, I'll see how much can be squeezed in and move the rest to the readme.
Yexo wrote:While technically this is ok it's much easier to just upload the source nfo / sprites in the same post as the release. Of course you don't have to, but in case you don't expect pm requesting the source anyway :p
Good point. I'll post the source with the release.
Yexo wrote:
DaleStan wrote:Note that such a PM would be permitted, by the terms of the GPL, to require that source be provided on a CD-R.

It is sufficient to offer the source for download with or next to the binaries.
It is also permissible to offer the source as "download upon request", but this is neither necessary nor sufficient.
That's an interesting take on clause 3b. I read it as "make the source available upon request", it doesn't say that it needs to be made available in the way the requester asks for. It only says "on a medium customarily used for software interchange", and a download qualifies for that.
That's how I interpret it too. The license doesn't state that the source can be requested on a specific medium. But I can avoid that issue by providing the source with the binaries.
Zephyris wrote:On a more interesting note, what are you working on? Or do we have to just wait for the release? :D
It's a set of sprites that replaces the full monorail track + depot with OpenGFX-derived tracks and a new depot, all of which use a concrete base rather than grass/snow/sand etc. I decided to make it using OpenGFX sprites because the default base graphics (both original and OpenGFX) didn't look "urban" enough, while the base OpenGFX monorail track is, in my opinion, very nice :) I have used OpenGFX sprites where possible, but drawn my own where I couldn't find any. To clarify, excluding track, which has to be in every sprite, I have drawn from scratch the concrete "base" on the sloped tracks, the tunnel roofs and the depot building. Every other sprite is a combination of a track sprite (from infra08.pcx) and the concrete base sprite (#43 in temprtbuilds.pcx) with some retouching where necessary. So really most of the credit should go to the OpenGFX authors in my opinion.
Preview (other sets shown: OpenGFX,  2CC set, LV4)
Preview (other sets shown: OpenGFX, 2CC set, LV4)
Fenston Transport, 2081-09-17.png (55.22 KiB) Viewed 3467 times
OpenTTD: VAST - station tiles and objects | MICS - urban monorail graphical conversion | Universal Rail Type - easier train replacement
User avatar
FooBar
Tycoon
Tycoon
Posts: 6553
Joined: 21 May 2007 11:47
Location: The Netherlands
Contact:

Re: GNU GPL (v2) Compliance

Post by FooBar »

zero.eight wrote:
FooBar wrote:Your planned measures seem alright to me, as long as you state somewhere (in the source) which files ar original OpenGFX and which files are changed (GPL clause 2a).
I've seen this written in other posts (can't find, argh...). As far as I can tell, the license does not require that I indicate which sprites are modified, just that sprites were modified and the date(s) of any such modifications. That said, I'll reference the source sprites and mention the exact changes because it makes clear to whom each work is attributable.
Well, let's first see what the GPL says about it:
You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
You don't have to indicate exactly which sprites are modified, but you have to indicate which files are modified. OpenGFX is a collection of around a hundred of files (I'm talking about the source here, as that is what you changed). Every file you changed "must carry prominent notices" that you did so. Because the OpenGFX files don't really have a place reserved in them to do so, I think it's sufficient if you list what files are changed (and which are original OpenGFX) in some additional text file in the source.


EDIT: It just occured to me that you might not be making a full base set replacement, but a newgrf instead.

In case you used OpenGFX as the base of whatever you changed, I think what I indicated above applies.
If you just used some bits and pieces from it to create a new newgrf, then just state what pieces of your work are taken from OpenGFX and then that should be sufficient. In this case your source will also not contain the full OpenGFX source, just the bits you've taken from it.
Last edited by FooBar on 30 Jan 2010 13:41, edited 1 time in total.
User avatar
Zephyris
Tycoon
Tycoon
Posts: 2890
Joined: 16 May 2007 16:59

Re: GNU GPL (v2) Compliance

Post by Zephyris »

Looks nice though!
audigex
Tycoon
Tycoon
Posts: 2010
Joined: 09 Dec 2007 21:28
Contact:

Re: GNU GPL (v2) Compliance

Post by audigex »

You're going about things the right way ;-)

TBH, if you follow the steps of giving credit in the accompanying readme, and releasing the source along with the binaries, you'll almost never come to grief. The other steps are really additional to what most people would require, although to follow the letter of the law they're indeed necessary (or rather, mostly, at least one is probably extra, but nice to do - don't quote me on that though).

I'd say to always release the source with the binary, as it makes life a lot easier for everyone involved. If you're going to supply the source anyway, why not just save them the effort of contacting you, and you the effort of uploading twice? The request thing is more for companies who release software based on GPL on hardware.
Jon
User avatar
Ammler
President
President
Posts: 953
Joined: 18 Jun 2006 18:18
Location: Switzerland
Contact:

Re: GNU GPL (v2) Compliance

Post by Ammler »

If the source is going to be too big for a attachment here, feel free to request some place on our DevZone.
Post Reply

Return to “Graphics Development”

Who is online

Users browsing this forum: Ahrefs [Bot], Google [Bot] and 33 guests