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

Re: Defining 'preferred form for making modifications'

Mark Rafn <dagon@dagon.net> writes:

> Goodness, this is easy.  There are a number of icons and images in
> products whose original creator preferred to edit in photoshop, with crazy
> psd files that contain layering, gamma, and other useful information.  I
> made further modifications to the resulting GIF file.  My preferred form
> is gif, hers is psd.  I don't even have the psd anymore.

The .psd is the source.  Some people prefer to hack on binary code
too, but this is really the same case as that one, except that more
people hack .gif than binary code.

But the fact that there are people who prefer to hack binary code
(indeed, the fact that it's sometimes useful and valuable) doesn't at
all mean that the binary code is therefore "source" in the context of
the copyleft.

> Can my gif file ever be free?  Can her psd file be free if it's in an 
> undocumented format which is only editable in a proprietary tool?

Once again, I'm only talking about GPL concerns.  It's clear to me
that she cannot add the gif to a GPL'd program and refuse to
distribute the .psd file.  

The lack of a free program to turn the .psd into a .gif is no more
controlling than the lack of a free compiler was for the original
pre-gcc GNU Emacs.  

> I say "yes" to both.  I believe the requirement should be interpreted as 
> the preferred form for modification by the distributor of the work.  I 
> would have no problem with a prohibition against explicit obfuscation.

Her .psd file can most certainly be free.  For her to refuse to
distribute the .psd and only distribute the .gif, in the context of a
modification to a copylefted program, would be a license violation.

> Yup, this one seems unambiguous.  It's less clear in the case where 
> there's a custom preprocessor (that handles localization of strings or 
> something) - if I do edits on the post-processed code, what is now the 
> preferred form?

Seems to me the answer is clearly: *both* are preferred, once you've
actually made such a modification, and if it's a copylefted program,
you should distribute both.

The copyleft does *not* say anything about there being an automated
process for turning source into something else, and certainly not
about there being a free tool to do the transformation.

So in cases where the source was transformed into something else, and
then people start changing the something else (even though the source
is the preferred form), the result is that now both the original
source *and* the something else are "source" in the terms of the

The reason people think this is an interesting case is only because we
have a bunch of people who have become so accustomed to the total
absence of source that they have begun frequently hacking on the
object.  But the principles (as far as the copyleft goes) are exactly
the same as for programs.

Otherwise, consider the disaster:

Someone creates a programmatic font, making use of GPL'd code.  But
they want to keep their program seekrit.  So they compile font images,
and then tweak a few bits on the bitmaps, claiming now that the
bitmaps are the preferred form for modifications, and then refuse to
distribute the program.  This cannot be permitted!

So we must judge the bitmaps alone to *not* meet the source code
requirement (whether or not they have in fact been modified from what
the source first produced), and this must be true not just for the
person who did the tweaking, but for everyone who got the bitmaps from


Reply to: