<div dir="ltr"><div>Ralph, did you already have a script for normalizing the headers? I vaguely remembered something like that, but could not remember</div><div><br></div><div>I was looking at the daunting number of headers that need updating, and thinking I should write a script rather than trying to do it by hand, and then that reminded me that the idea seemed awfully familiar :D</div><div><br></div><div>---</div><div>James</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Dec 2, 2021 at 11:53 PM Ralph Versteegen <<a href="mailto:teeemcee@gmail.com">teeemcee@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Oh, also we need to replace base64.c with a non-GPL implementation.</div><div>Also, we should state in LICENSE.txt that the engine is distributed under the GPL when using SDL_mixer/SDL2_mixer linked against libmad.</div><div>We should switch to SDL2_mixer binaries not linked against libmad so that they're suitable for use on Steam.</div><div>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.<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, 3 Dec 2021 at 17:36, Ralph Versteegen <<a href="mailto:teeemcee@gmail.com" target="_blank">teeemcee@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>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.<br></div><div><br></div><div></div><div>Digging up this old email thread, where we came to a number of conclusions:</div><div>-change the copyright header to<span style="font-family:sans-serif"> "Copyright 1997-20XX James Paige, Ralph Versteegen and the OHRRPGCE Developers"</span></div><div>-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)</div><div>-in LICENSE.txt list all licences and attributions for included code and libraries like SDL.dll with a summary at the top.<br></div><div>-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<br></div><div><br></div><div>I suggest using this header at the top of each covered source file:<br>'(C) Copyright 1997-20XX James Paige, Ralph Versteegen, and the OHRRPGCE Developers</div><div>'Dual licensed under the GNU GPL v2+ and MIT Licenses. Read LICENSE.txt for terms and disclaimer of liability.<br></div><div><br></div><div>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"</div><div><br></div><div>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.<br></div><div><br></div><div>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.<br></div><div><br></div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, 22 Dec 2020 at 00:44, James Paige <<a href="mailto:Bob@hamsterrepublic.com" target="_blank">Bob@hamsterrepublic.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">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.<div dir="auto"><br></div><div dir="auto">I look forward to reading your relicensing notes :)</div><div dir="auto"><br></div><div dir="auto">---</div><div dir="auto">James</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon., Dec. 21, 2020, 1:38 a.m. Ralph Versteegen, <<a href="mailto:teeemcee@gmail.com" target="_blank">teeemcee@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>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.</div><div><br></div><div>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.<br></div><div><br></div><div>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.</div><div>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.<br></div> </div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 21 Dec 2020 at 04:53, James Paige <<a href="mailto:Bob@hamsterrepublic.com" rel="noreferrer" target="_blank">Bob@hamsterrepublic.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Putting the AUTHORS section in the LICENSE files would be reasonable.<div dir="auto"><br></div><div dir="auto">We could also adjust the builds to include AUTHORS.txt and leave the LICENSE.txt file simple</div><div dir="auto"><br></div><div dir="auto">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</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun., Dec. 20, 2020, 10:05 a.m. Ralph Versteegen, <<a href="mailto:teeemcee@gmail.com" rel="noreferrer" target="_blank">teeemcee@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>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 :)<br></div><div><br></div><div>Isn't author information normally in AUTHORS.txt?<br></div><div><br></div><div>Since LICENSE.txt / LICENSE-binary.txt are what are actually distributed with binaries we really ought to have the copyright info in there!</div><div>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.<br></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, 20 Dec 2020 at 14:52, James Paige <<a href="mailto:Bob@hamsterrepublic.com" rel="noreferrer noreferrer" target="_blank">Bob@hamsterrepublic.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div>How about:</div><div dir="auto"><br></div><div dir="auto"><span style="font-family:sans-serif">Copyright 1997-2020 James Paige, Ralph Versteegen and the OHRRPGCE Developers</span><br><br>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)</div><div dir="auto"><br></div><div dir="auto">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.</div><div dir="auto"><br></div><div dir="auto">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<br><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Sat., Dec. 19, 2020, 6:11 p.m. Ralph Versteegen, <<a href="mailto:teeemcee@gmail.com" rel="noreferrer noreferrer" target="_blank">teeemcee@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>I'm pleased to see the old file headers replaced.<br></div><div>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.</div><div>I suggest something like:</div><div> Copyright 1997-2020 James Paige and the OHRRPGCE Developers</div><div> Copyright 1997-2020 the OHRRPGCE Developers and Hamster Republic Productions</div><div> Copyright 1997-2020 James Paige, Hamster Republic Productions and the OHRRPGCE Developers</div><div><br></div><div>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).</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, 20 Dec 2020 at 09:49, <<a href="mailto:subversion@hamsterrepublic.com" rel="noreferrer noreferrer noreferrer" target="_blank">subversion@hamsterrepublic.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">james<br>
2020-12-19 12:49:12 -0800 (Sat, 19 Dec 2020)<br>
77<br>
Normalize the copyright header on source files<br>
Deprecate the self-deprecation<br>
---<br>
U   wip/attackedit.bas<br>
U   wip/backends.bas<br>
U   wip/bcommon.bas<br>
U   wip/<a href="http://bcommon.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">bcommon.bi</a><br>
U   wip/bihead.txt<br>
U   wip/<a href="http://bmod.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">bmod.bi</a><br>
U   wip/bmod.rbas<br>
U   wip/bmodsubs.bas<br>
U   wip/<a href="http://bmodsubs.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">bmodsubs.bi</a><br>
U   wip/browse.bas<br>
U   wip/<a href="http://cglobals.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">cglobals.bi</a><br>
U   wip/<a href="http://common.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">common.bi</a><br>
U   wip/common.rbas<br>
U   wip/common_menus.bas<br>
U   wip/<a href="http://const.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">const.bi</a><br>
U   wip/custom.bas<br>
U   wip/<a href="http://custom.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">custom.bi</a><br>
U   wip/<a href="http://customsubs.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">customsubs.bi</a><br>
U   wip/customsubs.rbas<br>
U   wip/distribmenu.bas<br>
U   wip/<a href="http://distribmenu.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">distribmenu.bi</a><br>
U   wip/drawing.bas<br>
U   wip/editedit.bas<br>
U   wip/<a href="http://editedit.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">editedit.bi</a><br>
U   wip/editrunner.bas<br>
U   wip/<a href="http://editrunner.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">editrunner.bi</a><br>
U   wip/enemyedit.bas<br>
U   wip/<a href="http://flexmenu.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">flexmenu.bi</a><br>
U   wip/formationedit.bas<br>
U   wip/game.bas<br>
U   wip/<a href="http://game.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">game.bi</a><br>
U   wip/<a href="http://gglobals.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">gglobals.bi</a><br>
U   wip/globalstredit.bas<br>
U   wip/heroedit.rbas<br>
U   wip/itemedit.bas<br>
U   wip/<a href="http://loading.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">loading.bi</a><br>
U   wip/loading.rbas<br>
U   wip/lumpfile.bas<br>
U   wip/<a href="http://lumpfile.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">lumpfile.bi</a><br>
U   wip/mapsubs.bas<br>
U   wip/menuedit.bas<br>
U   wip/menus.bas<br>
U   wip/<a href="http://menus.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">menus.bi</a><br>
U   wip/menustuf.rbas<br>
U   wip/<a href="http://miditest.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">miditest.bi</a><br>
U   wip/misc.bas<br>
U   wip/moresubs.rbas<br>
U   wip/<a href="http://music_native_subs.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">music_native_subs.bi</a><br>
U   wip/oldhsinterpreter.bas<br>
U   wip/pathfinding.bas<br>
U   wip/plankmenu.bas<br>
U   wip/purchase.rbas<br>
U   wip/reload.bas<br>
U   wip/<a href="http://reload.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">reload.bi</a><br>
U   wip/reloadedit.bas<br>
U   wip/<a href="http://reloadedit.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">reloadedit.bi</a><br>
U   wip/reloadext.bas<br>
U   wip/<a href="http://reloadext.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">reloadext.bi</a><br>
U   wip/relump.bas<br>
U   wip/savegame.rbas<br>
U   wip/<a href="http://scrconst.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">scrconst.bi</a><br>
U   wip/scriptcommands.bas<br>
U   wip/scriptedit.bas<br>
U   wip/scripting.bas<br>
U   wip/sdl_lumprwops.bas<br>
U   wip/shopedit.bas<br>
U   wip/sliceedit.bas<br>
U   wip/<a href="http://sliceedit.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">sliceedit.bi</a><br>
U   wip/slices.bas<br>
U   wip/<a href="http://slices.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">slices.bi</a><br>
U   wip/specialslices.bas<br>
U   wip/subs4.bas<br>
U   wip/testgame/autotest.rpg<br>
U   wip/textboxedit.bas<br>
U   wip/thingbrowser.bas<br>
U   wip/unlump.bas<br>
U   wip/util.bas<br>
U   wip/<a href="http://util.bi" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">util.bi</a><br>
U   wip/walkabouts.bas<br>
U   wip/yetmore2.bas<br>
<br>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" rel="noreferrer noreferrer noreferrer" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" rel="noreferrer noreferrer noreferrer" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div></div></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" rel="noreferrer noreferrer" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer noreferrer noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" rel="noreferrer noreferrer" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer noreferrer noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" rel="noreferrer" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" rel="noreferrer" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>
</blockquote></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>