[argyllcms] Re: Argyll bundled with professional proofing solution

  • From: Graeme Gill <graeme@xxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Mon, 11 Sep 2006 22:56:27 +1000

Kai-Uwe Behrmann wrote:

beside being angry, there is not much you can do against someone using your software without modification and for professional use.

Oh yes there is, I can (and will!) sue them for copyright infringement, if they don't comply with the (GPL) licence I have offered, and if they have not been granted any other licence to distribute my software.

The GPL cares about modification, distribution and licensing of derived work, nothing else.
A application using a commandline tool (argyll) is hardly a derived work.

I disagree. Any software package that depends for its operation on features in GPL code, is a derived work. Mere aggregation of Argyll into a package is not. The proof is easy. If (say) Argyll is removed from the distributed proofing package, and as a result the distributed software package ceases to work (or features of it cease to work), it is (at least in those aspects) a derived work (ie., functionality of the distributed software work derives some of its capabilities from the distribution of Argyll code with it).

See section 0 of the GNU licence:

 The "Program", below, refers to any such program or work, and a
 "work based on the Program" means 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.  (Hereinafter, translation is included without
 limitation in the term "modification".)  Each licensee is addressed
 as "you". "

So a "work" such as a proofing solution package, that contains a copy
of any of the code from Argyll in that work (in whatever form, human
readable or machine readable language), verbatim or modified, is defined
as being "The program", and the GNU license applies to the whole thing,
or not at all. If there is no dependence between programs in a
distributed package, then this may be "mere aggregation", and may
in that case, not be regarded as a derived work.

Moreover in sections 2 on distributing modified works:

  These requirements apply to the modified work as a whole.  If
  identifiable sections of that work are not derived from the Program,
  and can be reasonably considered independent and separate works in
  themselves, then this License, and its terms, do not apply to those
  sections when you distribute them as separate works.  But when you
  distribute the same sections as part of a whole which is a work based
  on the Program, the distribution of the whole must be on the terms of
  this License, whose permissions for other licensees extend to the
  entire whole, and thus to each and every part regardless of who wrote it.

So the "work as a whole" is the distributed application package.
If the proofing software programs have not made use of any Argyll
software directly, linked, or borrowed any software from it, and
could therefore be reasonably considered independent and separate
works in themselves, then the GNU License and its terms do not apply
to those sections when you distribute them as separate works.
But when you distribute the same sections as part of a whole which
is a work based on the Program, the distribution of the whole must
be on the terms of the GNU License, whose permissions for other
licensees extend to the entire whole, and thus to each and every
part regardless of who wrote it.

  Thus, it is not the intent of this section to claim rights or contest
  your rights to work written entirely by you; rather, the intent is to
  exercise the right to control the distribution of derivative or
  collective works based on the Program.

  In addition, mere aggregation of another work not based on the Program
  with the Program (or with a work based on the Program) on a volume of
  a storage or distribution medium does not bring the other work under
  the scope of this License.

In my view, this is all pretty clear. The mere fact that a separate
program depends on a GNU program for some of its functionality
does not in itself make it a derived work, but when packaged
into a "work as a whole", it does make the whole a derived work.

GPL FAQ:
<http://www.gnu.org/licenses/gpl-faq.html#MereAggregation>
By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.

Right, but this is making the distinction between distributing things that depend one upon another (and may communicate in this fashion), and merely running them together. The latter is permissible, and because of the arms length nature of the link between the two separate programs, does not imply that the two programs themselves are really one program, with the implications that would have for them being a derived work.

If one program depends on the other for some features however,
and they are packaging and distributing together, then the distributed
package forms a derived work.

For example, the software that Rolf Gierling has written,
that he mentioned a week or so ago, is perfectly OK as it is,
even though it is not made available under a compatible licence.
If on the other hand, someone decided to package that code and Argyll
together and distribute them, then unless Rolf's code was also made
available under a GNU compatible licence, the distribution would
not be permitted by the GNU licence.

But this interpretation is vague. For instance if a web browser (Microsoft IE) would allow to make a data base query through a web interface (intimate communication) IE will be hardly a derived work of the data base.

No, but they are independent, and not packaged and distributed together as a single work.

Graeme Gill.


Other related posts: