[SciPy-user] Re: ANN: Veusz 0.5 - a scientific plotting package
rkern at ucsd.edu
Tue Apr 19 05:40:36 CDT 2005
Prabhu Ramachandran wrote:
>>>>>>"Robert" == Robert Kern <rkern at ucsd.edu> writes:
> >> Maybe it would be possible to dual-licence the code if anyone
> >> would like to use it??
> Robert> Depending on how you and Trolltech and Riverbank Computing
> Robert> interpret the situation, the Qt-specific parts can
> Robert> probably only be considered GPLed. For users of the GPLed
> Robert> versions of PyQt, this shouldn't pose a problem as their
> Robert> code would have deal with the GPL license of PyQt
> Robert> regardless. Users of the non-GPL versions would be in a
> I don't completely understand this.
No one does. :-)
> Lets say I subclass a PyQt class
> called QWidget and call it SomeQtWidget, I also use a bunch of other
> PyQt widgets but don't extend them. Lets say I define this class in
> sqw.py. Can I legally distribute sqw.py separately under the BSD (or
> some GPL compatible license)?
It's less clear than the situation I defending because those classes
really do need PyQt.
I was referring to the case where bits can be separated from PyQt (tick
spacing algorithms, the non-Qt outputs formats, and the like). The
language in the GPL is rather explicit about this case.
For sqw.py, I would say, yes, but IANAL.
Like I said, for users of the GPLed versions of Qt and PyQt, it makes
little difference if sqw.py is BSD or GPL. They still have to deal with
the underlying GPL licenses of Qt and PyQt. It only makes a difference
to the users of non-GPL versions of Qt and PyQt. Trolltech seems to want
to keep the GPL developer population separate from the non-GPL
population. They would rather that both you, author of sqw.py, and the
person using sqw.py in his proprietary program to buy developer licenses
> My impression is that any extension to
> a GPL'd library *must* be GPL and therefore sqw.py must be released
> under the GPL? Right or wrong?
The modified work *as a whole* must be released under GPL terms.
Individual components can have their own GPL-compatible licenses. I'm
not entirely sure that sqw.py is an individual component, per se. If
there are generally applicable pieces of code inside sqw.py that can be
used without Qt, then I think that those pieces, certainly, can be
released under other licenses.
> Now, given the segment of the GPL that you quoted, if I did have a
> 'model' class (in the MVC world-view) separate from the SomeQWidget
> then I could release the model code under any license I choose.
More or less. You could only release it with the Qt-specific code under
a GPL-compatible license. This is clearly a case where the quoted
> However, if you look at sqw.py it isn't clear that sqw.py is really
> modifying PyQt. The "linking" really happens at runtime. There are
> no header files, nothing in PyQt is really "modified" or copied, no
> binary program that links to PyQt. So why should sqw.py be
> distributed as GPL code in the first place?
Some interpretations of copyright law (e.g. Larry Rosen's) say that no,
it doesn't have to. The FSF's, Trolltech's, and Riverbank's say
otherwise. To my knowledge, there is no case law in this area to
determine which is the right interpretation. Until such a case does come
through in your jurisdiction, it's usually wise (and courteous!) to
follow the wishes of the copyright holder (inasmuch as they aren't
blatantly unrelated to the actual text of the license).
> How then does the GPL
> differ from the LGPL in this context?
Under a Rosen-like interpretation, not much.
See Rosen's book for more details.
rkern at ucsd.edu
"In the fields of hell where the grass grows high
Are the graves of dreams allowed to die."
-- Richard Harter
More information about the SciPy-user