[Ohrrpgce] SVN: james/12130 Normalize the copyright header on source files

Ralph Versteegen teeemcee at gmail.com
Thu Dec 2 20:53:24 PST 2021


Oh, also we need to replace base64.c with a non-GPL implementation.
Also, we should state in LICENSE.txt that the engine is distributed under
the GPL when using SDL_mixer/SDL2_mixer linked against libmad.
We should switch to SDL2_mixer binaries not linked against libmad so that
they're suitable for use on Steam.
All of the MP3 decoding libraries we can currently use/support (libmad,
mpg123, smpeg, audiere) are GPL or LGPL, so on Switch/etc we currently
wouldn't offer MP3 playback.

On Fri, 3 Dec 2021 at 17:36, Ralph Versteegen <teeemcee at gmail.com> wrote:

> All code contributors to the OHRRPGCE (with the exception of a couple
> minor ones whose code has already been replaced) have agreed to relicense
> their code. We will switch to a dual licence under the existing GPLv2+ and
> under MIT.
>
> Digging up this old email thread, where we came to a number of conclusions:
> -change the copyright header to "Copyright 1997-20XX James Paige, Ralph
> Versteegen and the OHRRPGCE Developers"
> -have a single LICENSE.txt file, which is renamed to LICENSE-binary.txt
> when included with binaries, with suitable wording for both situations
> (otherwise, we can automatically add a header to it when renaming)
> -in LICENSE.txt list all licences and attributions for included code and
> libraries like SDL.dll with a summary at the top.
> -add an CREDITS.txt list to the source repo; it doesn't need to be
> included with binaries (though I suppose there's no reason not to include
> it with Custom). We can also link to the Developers wiki page in LICENSE.txt
>
> I suggest using this header at the top of each covered source file:
> '(C) Copyright 1997-20XX James Paige, Ralph Versteegen, and the OHRRPGCE
> Developers
> 'Dual licensed under the GNU GPL v2+ and MIT Licenses. Read LICENSE.txt
> for terms and disclaimer of liability.
>
> In cases where a file is written entirely or mostly by someone other than
> James or I, I think it's appropriate to use a modified copyright line which
> names the person who actually holds copyright (since we don't use copyright
> assignment) "and the OHRRPGCE Developers". There are plenty of files with
> other licenses anyway, and may already declare a copyright by someone else,
> and I don't want to remove the existing credits. For example,  "(C)
> Copyright 20XX-20XX Jay Tennant and the OHRRPGCE Developers"
>
> Regarding copyright years, my reading of copyright law is that bumping the
> date to match the current year is legally meaningless if none of the code
> was "first published" in that year. So I wouldn't change all the years. And
> the only reason to do so is to delay it falling into the public domain. If
> you want to bump the year at the same time as editing a file go ahead.
>
> There are also various files I've marked public domain, I may try to
> normalise those headers too. And there are many files lacking a copyright
> header.
>
>
>
>
>
> On Tue, 22 Dec 2020 at 00:44, James Paige <Bob at hamsterrepublic.com> wrote:
>
>> Oh! I understand. Yes, let's have a separate CREDITS.txt file (I like the
>> sound of that better than AUTHORS) and not cram anything into LICENSE. And
>> yes, the idea of putting all licenses into LICENSE.txt and combining
>> LICENCE-binary.txt into a single file are good ideas. Yes, let's do that.
>>
>> I look forward to reading your relicensing notes :)
>>
>> ---
>> James
>>
>> On Mon., Dec. 21, 2020, 1:38 a.m. Ralph Versteegen, <teeemcee at gmail.com>
>> wrote:
>>
>>> Oh, I didn't actually mean to suggest putting the authors in the
>>> LICENSE. I think a separate AUTHORS.txt (or CREDITS.txt) is simple,
>>> standard, and a good idea but it's not necessary to include it with
>>> binaries; I've haven't seen any other project do that (unless they include
>>> all documentation). I'm not against combining the two, it's just unusual.
>>> But since we are actually distributing software under multiple licenses I
>>> thought it's simplest to have all those licenses listed in one LICENSE file.
>>>
>>> For that matter, it's not really necessary to have two different LICENSE
>>> files (especially if they're going to need updating from time to time). We
>>> could just reword it slightly to be suitable for any context. It could
>>> still be renamed to LICENSE-binary.txt when distributed with games.
>>>
>>> Yes, I have a lot of notes for the relicensing. I wrote an enormous
>>> draft email which was far too long to send out (it has multiple
>>> appendices!), and still unfinished. It's about what license to switch to. I
>>> can have another look over it and then send it to you. I realised I should
>>> put most of the contents on the wiki instead.
>>> I went through everyone's contributions (except help pages?) and found
>>> the email address of everyone who needs to be contacted, although I didn't
>>> keep notes on what their contribution was. I found there were a few people
>>> who contributed code which has since been rewritten/replaced, or is
>>> trivial, and luckily everyone whose email I couldn't find is in this
>>> category. Some people only contributed to Custom, so we can still relicense
>>> Game without them. So only about 6 people (including the two of us) need to
>>> agree. I've also been careful to avoid any 3rd party GPL code.
>>>
>>> On Mon, 21 Dec 2020 at 04:53, James Paige <Bob at hamsterrepublic.com>
>>> wrote:
>>>
>>>> Putting the AUTHORS section in the LICENSE files would be reasonable.
>>>>
>>>> We could also adjust the builds to include AUTHORS.txt and leave the
>>>> LICENSE.txt file simple
>>>>
>>>> Do you have any written notes for the relicensing plan? Maybe we should
>>>> start a wiki page where we can track what needs to be done, who has already
>>>> granted permission, who still needs to be contacted, and what might need to
>>>> be rewritten
>>>>
>>>> On Sun., Dec. 20, 2020, 10:05 a.m. Ralph Versteegen, <
>>>> teeemcee at gmail.com> wrote:
>>>>
>>>>> OK. My only reason for arguing against it was that it felt strange
>>>>> having my name there and not Mike's, since he wrote a lot of code too. But
>>>>> then I looked at gitstats and realised I have over 10x as many svn commits
>>>>> as Mike and almost 10x more lines added. It turns out Jay contributed
>>>>> almost as much code as Mike! I'm still impressed by how many headline
>>>>> features Mike implemented; he didn't waste time on cleanup for the sake of
>>>>> it, something I still need to learn :)
>>>>>
>>>>> Isn't author information normally in AUTHORS.txt?
>>>>>
>>>>> Since LICENSE.txt / LICENSE-binary.txt are what are actually
>>>>> distributed with binaries we really ought to have the copyright info in
>>>>> there!
>>>>> On that note, I wanted to expand those files to list the copyright
>>>>> info of all the source code we incorporate (whether credit in documentation
>>>>> is technically required or not) as distributing that code under the GPL
>>>>> does not avoid attribution requirements. I'm imagining that the top of the
>>>>> file would state that the whole program is GPL'd, summarise copyrights and
>>>>> licenses of all components, and the rest of the file would be a
>>>>> concatenation of the full GPL, LGPL, Apache, etc licenses and attributions.
>>>>> This is a bit unconventional, admittedly.
>>>>>
>>>>>
>>>>> On Sun, 20 Dec 2020 at 14:52, James Paige <Bob at hamsterrepublic.com>
>>>>> wrote:
>>>>>
>>>>>> How about:
>>>>>>
>>>>>> Copyright 1997-2020 James Paige, Ralph Versteegen and the OHRRPGCE
>>>>>> Developers
>>>>>>
>>>>>> Having "Hamster Republic Productions" in there is was just
>>>>>> meaningless fluff, because I haven't kept the fictitious business name
>>>>>> registration for it current. I let it expire somewhere around 2007 or so (I
>>>>>> don't remember exactly)
>>>>>>
>>>>>> Having our real names there is good, because without a proper legal
>>>>>> umbrella organization, our names are where the copyright should actually
>>>>>> be. Saying "the OHRRPGCE Developers" is a decent shorthand to acknowledge
>>>>>> that there are others too. We could add a COPYRIGHT.txt file that describes
>>>>>> contributions in more detail, which I think is a good idea for our
>>>>>> relicensing plans anyway.
>>>>>>
>>>>>> If you would rather not have your name in there in the header, it is
>>>>>> up to you, but you've written so much code you definitely deserve it if you
>>>>>> want it :D
>>>>>>
>>>>>> On Sat., Dec. 19, 2020, 6:11 p.m. Ralph Versteegen, <
>>>>>> teeemcee at gmail.com> wrote:
>>>>>>
>>>>>>> I'm pleased to see the old file headers replaced.
>>>>>>> But I wanted to discuss what the copyright line should be. I've
>>>>>>> never been inducted into the Hamster Republic and don't think it describes
>>>>>>> the set of contributors to the project. And nobody has ever been asked to
>>>>>>> assign/transfer their copyrights in their contributions to you or HR, so
>>>>>>> they still possess them (and their permission is needed to relicense). I
>>>>>>> also don't think I need to be credited as co-maintainer.
>>>>>>> I suggest something like:
>>>>>>>  Copyright 1997-2020 James Paige and the OHRRPGCE Developers
>>>>>>>  Copyright 1997-2020 the OHRRPGCE Developers and Hamster Republic
>>>>>>> Productions
>>>>>>>  Copyright 1997-2020 James Paige, Hamster Republic Productions and
>>>>>>> the OHRRPGCE Developers
>>>>>>>
>>>>>>> I also see some inconsistencies still exist, so I'm going to fix
>>>>>>> those now without changing the copyright. (gitk makes it very easy to
>>>>>>> compare each file, I just hold down left mouse button and drag over each
>>>>>>> file in the changeset).
>>>>>>>
>>>>>>> On Sun, 20 Dec 2020 at 09:49, <subversion at hamsterrepublic.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> james
>>>>>>>> 2020-12-19 12:49:12 -0800 (Sat, 19 Dec 2020)
>>>>>>>> 77
>>>>>>>> Normalize the copyright header on source files
>>>>>>>> Deprecate the self-deprecation
>>>>>>>> ---
>>>>>>>> U   wip/attackedit.bas
>>>>>>>> U   wip/backends.bas
>>>>>>>> U   wip/bcommon.bas
>>>>>>>> U   wip/bcommon.bi
>>>>>>>> U   wip/bihead.txt
>>>>>>>> U   wip/bmod.bi
>>>>>>>> U   wip/bmod.rbas
>>>>>>>> U   wip/bmodsubs.bas
>>>>>>>> U   wip/bmodsubs.bi
>>>>>>>> U   wip/browse.bas
>>>>>>>> U   wip/cglobals.bi
>>>>>>>> U   wip/common.bi
>>>>>>>> U   wip/common.rbas
>>>>>>>> U   wip/common_menus.bas
>>>>>>>> U   wip/const.bi
>>>>>>>> U   wip/custom.bas
>>>>>>>> U   wip/custom.bi
>>>>>>>> U   wip/customsubs.bi
>>>>>>>> U   wip/customsubs.rbas
>>>>>>>> U   wip/distribmenu.bas
>>>>>>>> U   wip/distribmenu.bi
>>>>>>>> U   wip/drawing.bas
>>>>>>>> U   wip/editedit.bas
>>>>>>>> U   wip/editedit.bi
>>>>>>>> U   wip/editrunner.bas
>>>>>>>> U   wip/editrunner.bi
>>>>>>>> U   wip/enemyedit.bas
>>>>>>>> U   wip/flexmenu.bi
>>>>>>>> U   wip/formationedit.bas
>>>>>>>> U   wip/game.bas
>>>>>>>> U   wip/game.bi
>>>>>>>> U   wip/gglobals.bi
>>>>>>>> U   wip/globalstredit.bas
>>>>>>>> U   wip/heroedit.rbas
>>>>>>>> U   wip/itemedit.bas
>>>>>>>> U   wip/loading.bi
>>>>>>>> U   wip/loading.rbas
>>>>>>>> U   wip/lumpfile.bas
>>>>>>>> U   wip/lumpfile.bi
>>>>>>>> U   wip/mapsubs.bas
>>>>>>>> U   wip/menuedit.bas
>>>>>>>> U   wip/menus.bas
>>>>>>>> U   wip/menus.bi
>>>>>>>> U   wip/menustuf.rbas
>>>>>>>> U   wip/miditest.bi
>>>>>>>> U   wip/misc.bas
>>>>>>>> U   wip/moresubs.rbas
>>>>>>>> U   wip/music_native_subs.bi
>>>>>>>> U   wip/oldhsinterpreter.bas
>>>>>>>> U   wip/pathfinding.bas
>>>>>>>> U   wip/plankmenu.bas
>>>>>>>> U   wip/purchase.rbas
>>>>>>>> U   wip/reload.bas
>>>>>>>> U   wip/reload.bi
>>>>>>>> U   wip/reloadedit.bas
>>>>>>>> U   wip/reloadedit.bi
>>>>>>>> U   wip/reloadext.bas
>>>>>>>> U   wip/reloadext.bi
>>>>>>>> U   wip/relump.bas
>>>>>>>> U   wip/savegame.rbas
>>>>>>>> U   wip/scrconst.bi
>>>>>>>> U   wip/scriptcommands.bas
>>>>>>>> U   wip/scriptedit.bas
>>>>>>>> U   wip/scripting.bas
>>>>>>>> U   wip/sdl_lumprwops.bas
>>>>>>>> U   wip/shopedit.bas
>>>>>>>> U   wip/sliceedit.bas
>>>>>>>> U   wip/sliceedit.bi
>>>>>>>> U   wip/slices.bas
>>>>>>>> U   wip/slices.bi
>>>>>>>> U   wip/specialslices.bas
>>>>>>>> U   wip/subs4.bas
>>>>>>>> U   wip/testgame/autotest.rpg
>>>>>>>> U   wip/textboxedit.bas
>>>>>>>> U   wip/thingbrowser.bas
>>>>>>>> U   wip/unlump.bas
>>>>>>>> U   wip/util.bas
>>>>>>>> U   wip/util.bi
>>>>>>>> U   wip/walkabouts.bas
>>>>>>>> U   wip/yetmore2.bas
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Ohrrpgce mailing list
>>>>>>>> ohrrpgce at lists.motherhamster.org
>>>>>>>>
>>>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Ohrrpgce mailing list
>>>>>>> ohrrpgce at lists.motherhamster.org
>>>>>>>
>>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>>>
>>>>>> _______________________________________________
>>>>>> Ohrrpgce mailing list
>>>>>> ohrrpgce at lists.motherhamster.org
>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>>
>>>>> _______________________________________________
>>>>> Ohrrpgce mailing list
>>>>> ohrrpgce at lists.motherhamster.org
>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>
>>>> _______________________________________________
>>>> Ohrrpgce mailing list
>>>> ohrrpgce at lists.motherhamster.org
>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>
>>> _______________________________________________
>>> Ohrrpgce mailing list
>>> ohrrpgce at lists.motherhamster.org
>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>
>> _______________________________________________
>> Ohrrpgce mailing list
>> ohrrpgce at lists.motherhamster.org
>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.motherhamster.org/pipermail/ohrrpgce-motherhamster.org/attachments/20211203/3e43d6b2/attachment-0001.html>


More information about the Ohrrpgce mailing list