[Not a bug] [gzdoom.pk3] ZScript files are missing a code license

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

[gzdoom.pk3] ZScript files are missing a code license

Postby Rachael » Tue Jan 19, 2021 12:48 pm

The ZScript files in gzdoom.pk3 are all missing attribution and license headers, at least the few that I poked around to glance at, it does seem to be all of them.

I was asked about this just a few minutes ago (from this post) - someone was interested in having MIT/BSD compatible code from the ZScript files for their own project. I told him without a specific license that I believe the files would all go to GPLv3 by default which is not compatible with those college licenses.

I can't fix this one on my own. The authors in question who wrote most of the code has to do this themselves.
User avatar
Rachael
Webmaster
 
Joined: 13 Jan 2004
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle
Operating System: Windows 10/8.1/8/201x 64-bit
OS Test Version: No (Using Stable Public Version)
Graphics Processor: nVidia with Vulkan support

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Graf Zahl » Tue Jan 19, 2021 12:51 pm

The license is there, look for zscript/zscript_license.txt:

Unless noted differently in the file, the following license applies to all ZScript sources:

//-----------------------------------------------------------------------------
//
// Copyright 1993-2019 id Software, Randy Heit, Christoph Oelckers et.al.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program 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/
//
//-----------------------------------------------------------------------------
//


So yes, all files without an explicit license are GPLv3.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Rachael » Tue Jan 19, 2021 12:56 pm

Ah, okay, I see. Sorry about that. For some reason I didn't see that file.
User avatar
Rachael
Webmaster
 
Joined: 13 Jan 2004
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle
Operating System: Windows 10/8.1/8/201x 64-bit
OS Test Version: No (Using Stable Public Version)
Graphics Processor: nVidia with Vulkan support

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Matt » Wed Jan 20, 2021 1:58 am

Does this mean that any ZScript in mods where anything was copied from the GZDoom source has to be GPL?

If so, how separate does any non-GPL stuff have to be? (e.g., a mod that has ZScript combined with edited id or Freedoom sprites - do they need to be two separate translation units or can I just say "all code is GPL, all Freedoom stuff and non-code documentation is BSD, etc."?)
User avatar
Matt
Putting the XD into *xdeath since 2007
 
Joined: 04 Jan 2004
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Graf Zahl » Wed Jan 20, 2021 2:13 am

All this code is GPL because it was derived from the original EXEs. Of course here the same applies as with everything GPL. If you copy GPL'd code into your project, all of its code needs to comply with the GPL, i.e. you cannot slap on permissions that prohibit reuse of your own code because this does not constitute "mere aggregation".

For mere 'linking' to the core engine the matter is a bit trickier. I'm not sure if this automatically puts your code under the GPL or if there's some rules in the GPL dealing with such cases and whether this would require an explicit licensing exception (which for obvious reasons I cannot grant for the core code.) or if it even makes a difference to link to engine-side script or native code - but I'd assume that the engine-data barrier still applies here and it does not infest your code.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Matt » Wed Jan 20, 2021 2:22 am

I've definitely copypasted stuff in the case I'm thinking about (most notably the fastprojectile's tick and a couple playerpawn functions), it's not just linking as far as that goes.

I'm taking, possibly as wishful thinking, the lack of comment on sprites/sounds/human-facing words as their not being relevant and thus capable of distribution under a different licence in the same package.
User avatar
Matt
Putting the XD into *xdeath since 2007
 
Joined: 04 Jan 2004
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Graf Zahl » Wed Jan 20, 2021 2:38 am

I cannot answer that - you'd have to ask a lawyer here if that's important to you.
Anyway, welcome to the wonderful invasive world of the GPL...
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Caligari87 » Wed Jan 20, 2021 10:59 am

I'm not a lawyer but I feel like it'd be reasonable to say that any code not copied/modified from GZDoom's ZScript source is fair game. After all, if I use a GPL-licensed C++ compiler + built-in libraries, that doesn't require my C++ code to be GPL, right?

Separate licensing for art assets (including text) is pretty well established though. Doom itself uses this model.

If you wanted to avoid infection, it seems in my mind best option would be to put all GPL-derived code (anything copied or modified from GZDoom) in one archive as a library, and put the rest (original code, assets) in a separate archive.

8-)
User avatar
Caligari87
I'm just here for the community
User Accounts Assistant
 
Joined: 26 Feb 2004
Location: Salt Lake City, Utah, USA
Discord: Caligari87#3089

Re: [gzdoom.pk3] ZScript files are missing a code license

Postby Matt » Wed Jan 20, 2021 5:05 pm

In this particular case I think the contents are pretty inherently distinct:
- graphics and sounds ripped from Doom modified for HD (only usable with a Doom IWAD)
- sounds ripped from other games and movies (just some player vocals, still hoping to replace these)
- graphics ripped from other mods (Femdoom mugshot, I don't think there's anything else atm)
- graphics and sounds ripped from Freedoom modified for HD, including basically brand new stuff that used Freedoom sprites as a base
- documentation (basically all mine unless I'm quoting a book or something, plus a few tweaks a few people have contributed)
- code

Code includes lights definitions, SBARINFO and ZScript that I definitely copypasted large chunks of from GZDoom and modified, often for the express purpose of making sure the result resembles the source - there's no way anyone can clean-room something that specific.

So yeah, this is what I'm going with at this point:
Caligari87 wrote:Separate licensing for art assets (including text) is pretty well established though. Doom itself uses this model.
User avatar
Matt
Putting the XD into *xdeath since 2007
 
Joined: 04 Jan 2004
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia


Return to Closed Bugs

Who is online

Users browsing this forum: No registered users and 0 guests