Trilarion / opensourcegames

Technical infos of open source games.
https://trilarion.github.io/opensourcegames/
Creative Commons Zero v1.0 Universal
626 stars 78 forks source link

Distribution requirements for GPLed software? #231

Open Trilarion opened 4 years ago

Trilarion commented 4 years ago

In a recent conversation, some difficulties with distributing GPL software were mentioned, in particular the question was raised if the full sources of all linked libraries have to be provided or not.

For completeness here the conversation with lm8:

My understanding (from all the time I've spent reading about licenses) is that if the game itself is licensed GPL, you need to supply the source to anything that links with it and is not a part of the operating system. That would include source for libraries that are linked to it like SDL, zlib, libpng, libvorbis, etc., but could also possibly include source for the compiler libraries on systems like Windows where MinGW is not part of the operating system. LGPL is more lenient and you need to supply source for anything with LGPL license but not anything it dynamically links to. If you just link to the library homepage and the library is no longer available at some point, you can't replicate building the GPL licensed program. The GPL license is designed to try to ensure that a user can rebuild the program from source for himself/herself if desired. I've even read about one license dispute that occurred when a build tool used to build a GPL program had a license that was not compatible with the GPL. You might be able to contact the FSF for further clarification on what source is absolutely required when distributing a GPL program, but I haven't found them to be any good at answering e-mails.

lm8 commented 4 years ago

Some references on GPL...

Looks like you could possibly point to source on someone else's site as long as the source remains available while you're distributing your programs: https://www.gnu.org/licenses/gpl-faq.html#SourceAndBinaryOnDifferentSites You'd have to make sure that the source available at the other site was the same version the program was using too.

Some details on license compatibility: https://www.gnu.org/licenses/license-list.en.html More on license compatibility: https://en.wikipedia.org/wiki/License_compatibility

Trilarion commented 4 years ago

In practice this might mean that people would be obliged to check regularly if the websites they link to still exist and still contain the used versions of all libraries. Giving a few alternative possibilities like a webarchive link (that might live longer) might also be a good idea.