[argyllcms] Re: Argyll bundled with professional proofing solution

  • From: Graeme Gill <graeme@xxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Tue, 12 Sep 2006 17:06:54 +1000

Gerhard Fuernkranz wrote:

Graeme, but what about this paragraph in the GPL FAQ?

I'd like to incorporate GPL-covered software in my proprietary system.
Can I do this?

[...] However, in many cases you can distribute the GPL-covered software
alongside your proprietary system. To do this validly, you must make sure
that the free and non-free programs communicate at arms length, that they
are not combined in a way that would make them effectively a single
program.

I don't necessarily agree with the FAQ answer (and it is not the GPL licence, so has no direct bearing on the licensing conditions), but note it says "distribute .. alongside", not "distribute together", or "package together" or "distribute with the intention of operating together". So "communicating at arms length" accommodates such things as using Argyll to generated profiles that a proprietary package would then make use of, etc.

Section 2 of the licence itself clearly states that

" ....the intent is to exercise the right to control the distribution of
  derivative or collective works based on the Program."

A product that is supplied as having certain features or functionality,
some of which depend on GNU licensed components, is a collective
work (the product is the collection of components that supply the
products features), and hence falls under the requirements of the
GNU licence, that it all be made available under the same terms
as the GNU licensed components.

This rather suggets that it is sufficient to separate the GPL and non-GPL
"programs", such the the non-GPL programs don't contain GPL code.

Under some circumstances I agree, but I don't think in itself it is sufficient under other circumstances.

Say I have two programs, program A that has features w and x,
and program B, that has features y and z. Assuming they do not
share any code, then they are independent programs and can be
run alongside each other, and clearly neither is a derivative
work of the other. If however, I combine them together into
a collection/compilation (which for convenience we'll call C),
and we say that "product C has features w, x, y and z", then
clearly C is a derivative work of A, and C is also a derivative
work of B. Compilations are regarded as a "work" under most copyright
law, if they contain sufficient expression in their selection
or arrangement of components. Selecting components so that their
feature set compliments each other, and combine to present a product
with a set of features greater than that of any components, I would
think would be enough in itself to qualify such a compilation as
a "work" under most copyright law. Arranging things so that
program B invokes program A to perform certain tasks for
product C, also contains sufficient expressive elements to
qualify I think.

The GNU licence established that "mere aggregation of another work ....
on a volume of a storage or distribution medium does not bring the other
work under the scope of this License", establishing the other end of the
scale (i.e.. a compilation without noticeable expression in its
selection or arrangement of components, is not regarded as a
derivative work).

Note that the GNU licence is not entirely clear whether the definition of
"work" has to be that used for copyright, or whether a looser
definition is sufficient within the terms of the GNU licence,
although for the sake of the argument above, I am assuming that
it is.

And the definition

You may modify your copy or copies of the Program or any portion of it,
thus forming a work based on the Program [...]

in the license itself IMO also suggest, that a "work based on the program" does not refer to another program which makes use of functionality provided by the GPL-ed program, but rathers refers to modifications/extensions of a GPL-ed program.

You are assuming the invitation narrows the definition. I don't think this is the case at all, and that on the contrary, it is expanding the definition by making it clear that permission is given to modify the program as well as using it in other ways (such as compilations) to form a derivative work.

cheers,

Graeme Gill.









Other related posts: