[sword-devel] Re: Introducing BibleMemorizer
jerickson314 at users.sourceforge.net
Thu Mar 24 17:59:56 MST 2005
> I think that people should not only obey the letter of the licenses but also
> respect the will of the licensors.
Couldn't agree more. Even if the licensors use a proprietary license. In
that regard I don't agree at all with RMS and the FSF (who believe
proprietary software is unethical and that people have an obligation to share
all software out of the concept, seemingly twisted from the Bible, of
"helping one's neighbor".)
As I said in the original message, I respect the decision of Crosswire to
copyleft. I simply did not realize this could be perceived as a violation,
after reading what RMS and the FSF had to say about the issue. I was
thinking that if they, some of the strongest proponents of copyleft, didn't
find it a problem, then no one would. I was wrong, though.
Following I have some questions about my understanding of the licensing.
Please do not take this as bickering, I'm just trying to understand.
My (non-lawyer) understanding is that copyright licenses simply give
permissions people normally don't have under copyright law. I don't see how
BSD License and BSD+GPL dual license would be at all different in this
respect. Anything permitted under GPL+BSD would be permitted under BSD, and
anything not permitted under GPL+BSD would not be permitted under BSD. (I
discuss later the fact that I could specify Sword calls as not BSD-covered.)
If this were not the case, the FSF wouldn't call it "GPL-compatible". Does
Crosswire disagree? This seems to mean that there would be, from a legal
perspective, no change at all if I added a GPL license. In fact it seems
from a legal perspective that BSD'd code is essentially multi-licensed under
all licenses that have equal or greater restrictions. In other words, BSD'd
code is already implicitly GPL'd and therefore complies with the GPL's
restriction that it be GPL'd. The BSD License does require that itself be
present, but it is a very minor requirement, not considered a problem by the
FSF, and including a 186-word notice is minor compared to including a
2,984-word notice (the GPL). Is this the problem? Would it be equivalent
to, instead of an explicit dual-license, put a notice that says:
"Some code may use the Sword API from Crosswire. Due to the restrictions of
the GPL, as interpreted by them, this code is subject to the terms of the
GPL. Also due to the terms of the GPL, all other code in BibleMemorizer is
subject to the same restrictions when the Sword code is present. Otherwise,
all code may be used under the BSD License that follows this notice. Because
this license is GPL-compatible, it is also permissible to relicense code
under the GPL as long as you follow the BSDL's terms."
Or, even simpler:
"This code is subject to the terms of the GNU General Public License if any
code currently within '#ifdef USE_SWORD' blocks is included at compile time."
I already plan to enable people to compile BibleMemorizer without Sword
support in a way that does not require them to edit the source code (i.e.
#ifdef blocks). The Sword support is a completely optional extension to, not
a basis for, the rest of the program. The only "derived work" seems to be
the Sword extensions, not the whole program. (Was InVerse the same way?)
The program does contain the extensions, but that is why I made sure to use a
GPL-compatible license. (It's almost like a plugin; although I know GPL'd
plugins for non-GPL'd code are a potential issue. Wouldn't Sword extensions
on a BSD'd codebase be much like Sword using BSD'd libraries as it already
does, though?) If I were writing a Sword frontend with no significant
purpose beyond providing a GUI to Sword, I would use the GPL. However, such
is not the case here.
Although what I don't see is how even the above notices I suggested are really
different (not trying to argue, just to understand) from simply BSD'd code
that contains Sword API calls. Doing anything with the Sword-based code
permitted by the BSDL but not by the GPL would violate the GPL as soon as the
result was distributed. Therefore, for all practical purposes, wouldn't the
Sword calls be effectively GPL'd whether this was stated or not? And covered
fine by my current statement? I know that under all interpretations I've
seen (from those who define code that uses a library as a 'derivative work')
binaries are completely subject to the GPL. (e.g. proprietary programs can't
link to them. Doing so would create an easy way to circument the GPL
anyway). Therefore by putting Sword calls under the BSDL I am not granting
any permissions to third parties they don't already have under the GPL. I am
not in any way providing a way for proprietary software developers to use
Sword. I couldn't, anyway, since I don't own the copyright on Sword.
We do get into the spirit of the GPL here. Is the spirit of the GPL "you can
use our work if you give us and everyone else freedom" or "you can use our
work if you agree to spread the virus to others"? The second interpretation
doesn't seem very Christian, given that Free Software is not a concept from
the Bible. I'm not saying that it contradicts the Bible, only that it comes
from outside the Bible. The first interpretation seems more like the idea I
always got out of Sword's goals.
> It would not be very Christian to license
> a derivative work against the will of the copyright owners, even though
> interpretation of the licenses could be diffferent from RMS, FSF, US court,
> public opinion, or anything else.
It seems to me that Crosswire's desire is that Sword be used to promote FLOSS
(Free/Libre Open Source Software) Bible Study tools. In the scheme of
things, does it really make a difference whether a client program has COPYING
or LICENSE.BSD if the use of Sword still must be GPL-compliant? Doesn't
getting technical beyond what the law states and beyond practical matters
border on mimicking the Pharisees? (I am not saying we shouldn't accept the
will of the copyright holders).
Would it go with the goals for Sword if we did something like what Trolltech
did with Qt, providing licensing terms allowing linking from any FLOSS
program, whether otherwise legal or not? (If of course we removed the
current GPL'd third party code and doing so were legal). Perhaps even a
GPL/QPL dual license, maybe with a statement that the QPL's "choice of law"
clause was null and void for Sword?
<personal opinion only>
It is my opinion that if a license has as much ambiguity as to its
interpretation as the GPL seems to have, it would be better to not use it for
new code except when necessary. It would save a lot of posts to mailing
lists... That's one reason I would prefer to use a simpler, more permissive
license for BibleMemorizer. For other reasons, see
</personal opinion only>
Perhaps Chris Little would be able to answer my questions, he seemed to have a
lot to say on the thread Eeli mentioned. Again, please do recognize that I'm
not trying to pick a fight. You are brothers in Christ, not enemies.
More information about the sword-devel