Replies: 2 comments 3 replies
-
Hi Jonas, thank you for reaching out! I actually meant to reach out to you about this later I totally agree with you: using two incompatible licenses between the documentation and the code sounds like a nightmare trying to sort that out! To be totally clear: I am totally not opposed to including GPL or otherwise licensed material in principle! I actually included Magit in an earlier build of the website but removed it after reading up more about the license compatibility and being confused about how to interpret the GFDL. My main worry is as follows:
The only point I'm really sure about is 2, but that was enough for me to omit Magit for now and to put in that disclaimer (which should be modified btw, because I'm pretty sure that if GPLv3 does not fly than CC-BY-SA 4.0 also does not). Given your comment, I think I assumed wrong, which I'm very glad to hear! To be sure though, could you perhaps point me to some resource regarding how to interpret the GFDL in this case? In any case, I think including Magit should be possible regardless if you (who I'm assuming is the copyright holder) give me permission to do so! Thanks again for reaching out, and apologies for having you type out such a long comment! |
Beta Was this translation helpful? Give feedback.
-
That is a really great point, I hadn't thought about that! I guess one thing that might distinguish a Linux distribution from Emacs Docs is in the manner in which the parts make up whole, i.e. the many packages are not modified to create a giga-package, while the Emacs manuals do get modified and "sort-of" combined into a giga-manual. But, again, not completely, and I could totally see that a "bundle" which combines both the Emacs documentation in some new format and GNU Emacs slightly modified for MacOS could be shared as a bundle without someone batting an eye. I also asked about this on StackOverflow to be sure and the one answer seems to agree with you, so I will include Magit and other GPL-licensed manuals from now on! Thanks for taking the time, again! |
Beta Was this translation helpful? Give feedback.
-
This looks very nice! Thanks!
I immediately wondered why Magit was not included and appreciate that finding the answer to that required nearly no effort.
One way of looking at this is that Magit cannot be included because it uses the wrong license for its manual. My view is that Magit isn't included because this project rejects perfectly fine free licenses merely because they are not (primarily) intended for documentation.
Magit once used the FDL license for its manual--so let me explain why I made the pragmatic choice to write a new manual that uses the same license as the code.
The old manual had some serious issues that made considerable improvements necessary. (If I remember correctly) issues included that the manual was very incomplete, contained obsolete information, some parts were mere stubs, unimportant things were described in detail, while important topics were completely missing.
There also were good parts that I wanted to keep but it was clear those existing parts would only make up a fraction of an improved manual. What I would have liked to do was to keep the nice longer parts of the old manual that describe some concept, and seed the other parts with docstrings copied out of the code.
But I couldn't do that because the licenses conflicted and because I was not the author of the old manual I was not free to dual-license the docstrings. I could have tried to contact all the authors of the manual and/or code and ask them to give me permission to relicense/dual-license.
This would have been a lot of work and I came to the conclusion that it would be more productive to discard the old manual completely and start over. This was quite sad and I am sure some nice things got lost as a result.
I got over that quickly because seeding the manual with the docstrings proofed to be a good strategy, but this was still a loss and my main takeaway was that I never wanted that to happen again.
So now the documentation that lives in a separate file and the documentation that is sprinkled across the code both use the same license and I can freely copy in either direction without having to ask anyone to relicense anything.
The FSF can use different (and one may argue "more suitable") licenses for documentation and code because they require that contributors assign their copyright to the FSF. As the copyright holder they can then relicense documentation as they see fit.
IMO the problem is that the FSF does not simply use the incompatible licenses themselves but that they recommend that others in the free software community do the same. For projects that don't require copyright assignments I consider that a huge mistake. Such projects end up constantly violating the licenses they themselves have chosen when they copy across the license border, or they end up writing a lot of documentation twice to avoid doing that.
Imagine a contributor adds a new option, they forget to update the manual, and you overlook that when reviewing the pull-request. Later you notice and ask the contributor to give you permission to copy the docstring to the manual, but they have dropped of the surface of the earth and you get to write the same, yet different documentation from scratch.
So this is why Magit does not use two incompatible licenses. Please consider including manuals that use any free licenses, even licenses that are primarily intended for code.
Cheers,
Jonas
Beta Was this translation helpful? Give feedback.
All reactions