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

Re: cdrecord: weird GPL interpretation



On Thu, Sep 02, 2004 at 12:19:26AM +0200, Francesco Poli wrote:
>  -=-=-=-= cdrecord/LICENSE =-=-=-=-
> 
> This software is under GPL but you should read the following
> clarifications:
> 
> 
> -       You may not modify certain copyright messages in cdrecord.c
> 
>         See cdrecord.c for further information.
> 
> 
> -       You may (with a few exceptions) not modify the location of the
>         configuration file /etc/default/cdrecord.
> 
>         See defaults.c for further information.
> 
> Please note that this is just the way I interpret the GPL and as this
> is my software, users should follow my interpretation of the GPL and not
> use their own different interpretations.

This came up previously:

  http://lists.debian.org/debian-legal/2003/10/msg00398.html

I concur with Mathieu Roy: this is not an interpretation that follows
from the GPL.  The GPL clearly says you can do certain things and can
not do certain other things; this "interpretation" contradicts the
text of the GPL.

I don't think it's safe to distribute a work where the author says one
thing in his license text and a different thing in his "interpretation".
This person does not want the GPL; he wants something else.

I do not believe that granting a license and then applying a bizarre
"interpretation" or "clarification" to those terms is an acceptable
approach to setting license terms.

I also don't think Debian should distribute works that claim to be under
the "GPL" when they're being modified by weird "interpretations".

(This is only my own opinion, of course, and not necessarily Debian policy.)

>  -=-=-=-= cdrecord/cdrecord.c (sorry for linewrapping) =-=-=-=-
> 
> [...]
> 	/*
> 	 * Begin restricted code for quality assurance.
> 	 *
> 	 * Warning: you are not allowed to modify or to remove the
> 	 * Copyright and version printing code below!

This is still clearly non-free.  Requiring an appropriate copyright
notice is acceptable; prohibiting me from modifying the code that does
so is not.

> 	 * See also GPL § 2 subclause c)
> 	 *
> 	 * If you modify cdrecord you need to include additional version
> 	 * printing code that:
> 	 *
> 	 *	-	Clearly states that the current version is an
> 	 *		inofficial (modified) version and thus may have bugs
> 	 *		that are not present in the original.
> 	 *
> 	 *	-	Print your support e-mail address and tell people that
> 	 *		you will do complete support for this version of
> 	 *		cdrecord.
> 	 *
> 	 *		Or clearly state that there is absolutely no support
> 	 *		for the modified version you did create.

This has been improved since the last time this came up, at least.

> 	 *
> 	 *	-	Tell the users not to ask the original author for
> 	 *		help.

I don't know if it's free to require all of this cruft.  I sure don't like
having to say "this software is buggy, the original is probably better!".

It's not clear whether this needs to be printed every time, or just in eg.
"--version" output.  I don't know if the answer to that affects freeness.

> 	 * This limitation definitely also applies when you use any other
> 	 * cdrecord release together with libscg-0.6 or later, or when you
> 	 * use any amount of code from cdrecord-1.11a17 or later.
> 	 * In fact, it applies to any version of cdrecord, see also
> 	 * GPL Preamble, subsection 6.

I wasn't aware that the GPL's preamble had subsections.
 
> 	/*
> 	 * WARNING you are only allowed to change this filename if you also
> 	 * change the documentation and add a statement that makes clear
> 	 * where the official location of the file is why you did choose a
> 	 * nonstandard location and that the nonstandard location only refers
> 	 * to inofficial cdrecord versions.
> 	 *
> 	 * I was forced to add this because some people change cdrecord without
> 	 * rational reason and then publish the result. As those people
> 	 * don't contribute work and don't give support, they are causing extra
> 	 * work for me and this way slow down the cdrecord development.
> 	 */
> 	return (defltopen("/etc/default/cdrecord"));

Requiring that I explain (or even have) rationale for changes can't possibly
be free.

-- 
Glenn Maynard



Reply to: