[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Copyright lawyers analysis of Andreas Pour's Interpretation



On Sat, Feb 12, 2000 at 03:28:43PM -0500, Andreas Pour wrote:
> I think this is a sophism.   My point all along has been that Qt is not part of
> the "Program".
> 
> Remember where the term "Program" comes from.  It is defined in Section 0 of the
> GPL to mean:
> 
>     any program or other work which contains a notice
>     placed by the copyright holder saying it may be
>     distributed under the terms of this General Public
>     License
> 
> So obviously Qt is not a "Program".

I agree that Qt is not a "Program".

> However, Section 2 of the GPL also refers to any "work based on the Program".
> This term is also defined in Section 0 of the GPL to mean:
> 
>     either the Program or any derivative work under
>     copyright law: that is to say, a work containing the
>     Program or a portion of it, either verbatim or with
>     modifications and/or translated into another language.

Note that this requirement is leading up to the following conclusion: that
any work based on the Program is either:

(a) undistributable, or
(b) a "Program" in its own right.

> So, let's see if Qt meets that definition, in context of what appears
> to be the most vexing example of a KDE program, kghostview (in point
> of fact kghostview launches ghostview as a separate app and grabs its
> window, but let's suppose for argument that it actually reproduced
> ghostview code as part of it).

Note that kghostview (or if you don't like kghostview, consider
kscd, kdvi or kmidi) is an executable work.  And the GPL places some
additional requirements on executable works.  I'll note in passing that
you've inserted a parenthetical note in the above paragraph which isn't
pertinent to this argument, yet which attempts to imply that these GPL
requirements are somehow irrelevant.

I'll also point out that with kghostview there is no "ghostview app"
which exists independently of kghostview -- the only way to use it is
if you have Qt installed on your system.  At least, that's the way it is
in the 2000-1-13 build which I'm looking at.  So I'm doubly confused --
is kghostview being rewritten?

> Is kghostview a derivative work of Qt? No. Why not? Looking
> at the definition of derivative work in the Copyright Act
> (http://www4.law.cornell.edu/uscode/17/101.html):
>
>     A ''derivative work'' is a work based upon one or more
>     preexisting works, such as a translation, musical arrangement,
>     dramatization, fictionalization, motion picture version, sound
>     recording, art reproduction, abridgment, condensation, or any
>     other form in which a work may be recast, transformed, or
>     adapted. A work consisting of editorial revisions, annotations,
>     elaborations, or other modifications which, as a whole, represent
>     an original work of authorship, is a ''derivative work''.
>
> Now, how is kghostview "based upon" Qt (in the sense of "recast[ing],
> transform[ing], or adapt[ing]" Qt)? It's totally separate code.

For this argument to make sense, you must be considering only the
kghostview source code, and not a working copy of kghostview.  But
it doesn't make legal sense to consider these separately because

(1) the kghostview source code was carefully designed to allow the
construction of running copies of kghostview.
(2) working copies of kghostview are being distributed to many people.
(3) working copies of kghostview are being used by many people.

> To emphasize that point, the GPL section 0 has the phrase "that is to
> say, work containing the Program or a portion of it, either verbatim
> or with modifications and/or translated into another language". Does
> Qt "contain[] [kghostview] or a portion of it"? No. Hence Qt is not a
> "work based on the Program".

It was never the claim that Qt contains kghostview.

The claim is that (working copies of) kghostview contain Qt.

> Hence, Qt is neither a "Program" nor a "work based on a Program",
> though kghostview of course is.

Your argument, as it stands, is incomplete, because you're still
pretending that kghostview only exists as source code, not as an
executable work.  Each of the above logical leaps must be revisited
in the context of the executable work to determine.

> In fact, the only way Qt even gets into the picture is in Section 3
> of the GPL, which deals with binary distributions. In other words, if
> nobody compiled kghostview, the GPL would not apply to Qt at all.

But people do compile kghostview.

> Now when you compile kghostview w/ Qt, then, at least in the case of a
> statically-linked binary, Qt becomes subject to Section 2, by virtue
> of Section 3 of the GPL. This is b/c Section 3 takes a different
> approach then Section 2. Section 3 requires you to apply Section 2
> to source code that is neither a "Program" nor a "work based on the
> Program".

Indeed, and the complete source code is itself a "work based on the Program".

> It does this by requiring the distribution of the "complete
> source code" to a binary. Thus, if you combine two distinct, separate
> works into a binary, you need to distribute the source code to both.

You've introduced this term "a binary".  The requirement in the GPL is the
distribution of the "complete source code" to a program.

Also, the GPL does not specify the technology used to build the program.

> So assuming Section 2 does apply to the distribution of Qt source
> code when distributing kghostview under Section 3, what precise
> requirements apply to it?
> 
> First, the first sentence of Section 2 says:
> 
>     You may modify your copy or copies of the Program or any portion
>     of it, thus forming a work based on the Program, and copy and
>     distribute such modifications or work under the terms of Section 1
>     above, provided that you also meet all of these conditions:
> 
> OK, kghostview has modified ghostview (the "Program"). But Qt source
> code is still not part of the picture: it is neither the "Program"
> (ghostview) nor "work based on the Program" (kghostview). So this
> sentence does not apply to Qt source code (although the conditions
> still may, I'll look at those in a bit).

It's not clear to me why you claim that Qt source code is not a part of
the picture.  Are you talking about working copies of kghostview or
not?

If you are talking about working copies of kghostview then:

(1) You must have used Troll header files during compilation, and
(2) You must have Qt present with the copy of kghostview (or your
copy will not be able to run).

When you run a copy of kghostview (I'm talking about a dynamically linked
version here, since it's apparent that you are in the above paragraph),
it incorporates into its virtual memory space a copy of libqt.  Even if
you pretend that the qt headers weren't used to build that copy of the
executable, the principle of contributory infringement says that a person
who enables copies to be made has some responsibility for those copies.

> What about the statically-linked kghostview binary? That is a "work
> based on the Program". What do I have to do to that? Well, distribute
> my modifications under Section 1. Section 1 by its terms only applies
> to source code, so it does not apply to the Qt binary.

You seem to have left out the requirement that you distribute the complete
source for the kghostview binary under the terms of the GPL.  And, from
section 0, that means that the complete source for the kghostview binary
is a "Program".

Since none of the remainder of your post addresses this issue, I see no
point in addressing the remainder of your post.

-- 
Raul


Reply to: