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

Re: [prePROPOSAL] DFSG (draft 7)

On Sat, 20 Feb 1999, Anthony Towns wrote:

> On Fri, Feb 19, 1999 at 06:57:05PM -0500, Dale Scheetz wrote:
> > >      The Debian Free Software Guidelines define what it means for software
> > >      to be free as far as the Debian project is concerned. Software that
> > >      follows these guidelines is termed "DFSG-free".
> > So what do we call software that follows the original DFSG?
> If it meets these guidelines as well, we'd call it "DFSG-free". If it
> doesn't, we call it "non-free".
> Consider the Postfix license. The one that's free except that it has the
> "you agree to terminate this license and destroy all copies" and so on.

I haven't read the license, but if it has the clause you quote it is
non-free under the current DFSG. It isn't clear under your re-written
document whether this would be free or non-free.

> You're allowed to freely redistribute it. Source code's available, you
> can make derived works, it doesn't have a patch clause, doesn't discriminate,
> you can redistribute with the same license, it doesn't contaminate other
> programs.
> So it meets the DFSG.

> So it's DFSG-free, right?

> Why is it in non-free, then?
It imposes distribution restrictions.

> The point of rewriting the DFSG is to make it more clear exactly what we
> mean by free software -- that's the point of the DFSG in the first place.
> If the DFSG doesn't quite match our ideas of free at the moment, then
> we should change it, shouldn't we?

Depends upon who "we" are doesn't it?

The current definition is the one I use. I see no reason to change it.

I certainly don't see changing it in the ways you have outlined with your
document as any kind of improvement. Sorry.

> And if some of those programs that used to satisfy the DFSG don't
> satisfy the new one, that's because we didn't consider them free in the
> first place.  So why call them anything but non-free?

The DFSG represents a line drawn in the sand. You wish to make that line a
mobile one, based on the current concensus obtainable by the loudest
mouths. There are always those who would wish that the line were a little
farther in one direction or the other, but that doesn't mean that the line
should move.

> > > 2.1. Use
> > > --------
> > >      Anyone must be able to use the software in any way without paying a
> > >      fee or royalty or performing any special actions.
> > "performing any special actions" is pretty ambiguous. Is compilation or
> > invocation considered "special actions"?
> Does changing this to "Anyone must be allowed to use the
> software..." satisfy your objection?

I'm not sure...probably not ;-)

> Running "make install" *is* a special action -- you kind of have to do
> it, but if it has an "rm -rf /" as one of its commands you shouldn't be
> required to.

Sorry, but the point of this statement completely escapes me.

> > > 2.2. Source Code
> > > ----------------
> > >      Source code must be freely available if it exists. Source code refers
> > >      to the form used to make changes to the software.
> > Sorce code refers to the actual material that is covered by the copyright.
> Huh? /bin/ls is source code? Or it's not covered by copyright?
/bin/ls is not source code, and is not covered by the copyright.

It is covered by the license. Consider the Pine license which allows free
distribution of source code, but no distribution of derived works,
including precompiled binaries. This licensce is clearly non-free under
the current DFSG
> The binaries in distributed-net-pproxy aren't covered by copyright, or are
> source code?
See above.

> > > 2.4. Derivation
> > > ---------------
> > >      Anyone must be able to use parts of the software in their own work.
> > So the GPL is no longer considered free software by these guidelines.
> > I can not include parts of a GPL licensed source into my non-GPL work.
> Yes, it is free by these guidelines. But only because there's a
> restriction that allows a license to restrict such things.
So your guidelines are self contradictory.

> The only completely free license is saying "Do what you will with it",

I submit that the above quote is not free. It allows me to take someone
elses work and place it under a proprietary license, thus reducing the
free access by the end user to said software. The intention of
restrictions within a "free license" is to restrict activity which would
weaken the freedoms we require.

> anything else restricts your freedoms. The GPL does this, in a way which
> a lot of people, myself included, find beneficial.
Because the restrictions it imposes are intended to keep the material
free, we accept the restrictions. Because those restrictions are
"unfriendly" to other licenses we consider Free, this continues to be a
contentious issue. Deprecating a set of currently accepted restrictions is
a bit more social engineering than is warranted.

> But it still restricts the freedom to reuse code (which we find important,
> yes?) in a way that actually does annoy people.
So, will this license, one day, be considered non-free? Your analysis
seems to indicate the possibility.

> > > 2.5. Distribution
> > > -----------------
> > In fact, the source availability clause requires that you distribute the
> > source (the true copyright material) whenever you distribute a derived
> > binary from that source.
> Which is another restriction the GPL places on you, but which also
> restricts your freedoms.
Only your freedom to oppress your users! 

It is the "forced" availability of source that is one of the three
underpinning structures supporting the freedoms we desire. The right to
modify the work, and the right to distribute those modifications are the
other two support structures. These three principles protect our rights to
free access, use and improvement of the existing free software.
> > > 2.6. Termination of License
> > > ---------------------------
> > >      The license must remain valid until the licensee terminates it or
> > >      violates the terms of the license.
> > The licensee (the copyright holder who assignes the license to the
> > software) is incapable of violating his on license terms. Termination of
> > the license can only be granted by the copyright holder.
> From dict:
> ]   Licensee \Li`cen*see"\ (l[imac]`sen*s[=e]"), n. (Law)
> ]      The person to whom a license is given.
> Darren, this should probably be changed to "license holder".

Absolutely, since you are looking for clarity.

> > > 3.1. Notices of Authorship
> > > --------------------------
> > Other reasonable requirements are not covered here, such as unmodified
> > source, which the current DFSG allows.
> Which are also covered below.
> > >      The license may not impose restrictions on third-party software that
> > >      merely resides on the same system or distribution as the licensed
> > >      software.
> > This has ramifications that aren't clear.
> In ways that...
> ]      The license must not place restrictions on other software that is
> ]      distributed along with the licensed software.
> ...doesn't?
> > > 3.4. Restrictions on charges (deprecated)
> > > -----------------------------------------
> > I realise that this refers to, among other things, the Artistic license.
> > While I do not particularly like this license, I do consider it to be
> > free.
> That's what's intended be the above -- you can use this clause and still
> call your software "free", but we won't like it as much as if you didn't.
> Perhaps "discouraged" would be a better word though. 
> > > 3.5. Availability of source code
> > > --------------------------------
> > >      The license may require that distributors make a reasonable effort to
> > >      provide source code of versions of the software they distribute.
> > But not make it a condition of distribution? This defeats the whole
> > purpose of source code availability.
> Huh? ``If you distribute the software by ftp, you must distribute the source
> on the same ftp site, or point them to somewhere else where they can get it'',
> is the license making a requirement of distributors to make an effort to
> provide source code of versions of the software they distribute.
> It's also a condition of distribution.
> I don't see what you're objecting to?

The term "make a reasonable effort" is ambiguous.

I sell Fred a Binary CD, and say "Do you want Source with that?", and he
says "I don't think so, maybe later." I say "It would be better if you got
it now.", and Fred says "Naw, not right now."

Have I made a "reasonable effort"? If he comes back to me three months
later and says, "OK, I really need the source now, I have to fix
something.", and I reply, "Sorry, I don't have any more of those." do you
consider that I lived up to the Free Software "contract"? I don't.

> > > 3.6.4. Original source (deprecated)
> > > -----------------------------------
> > >      Distribution of modified software may be required to be
accompanied by
> > >      an offer to distribute the original source code.
> > Not only is this deprecated, which I find objectionable, but it also
> > doesn't have any teeth in it to start with.
> `by an offer to distribute' probably shouldn't be in there. Does that add
> the teeth you want?
It means I can place a real restriction on distribution without source
code, which I see as a primary support of the freedoms desired.
> > Requirement of pristine source distribution restricts none of the freedoms
> > that we are promoting and provides assured access to the original work.
> It makes it effectively impossible to use fragments of code in other
> programs -- you have to distribute, say, the entire Xemacs source code
> so you can use their five line "getCursorPosn()" function, or some such.

Only if Xemacs were under those restrictions. Like the GPL vs LGPL, there
are reasons for having certain restrictions in one place and not in
others. The "pristine original source" provides the user with access to
the original source under circumstances where the delivered binary is
modified beyond the desires of that user. The ability to return to the
original work and selectively add only the desired features is a freedom
we should support. Allowing one section of the community to "dictate" what
the current practice is, with respect to some application program or
another, returns the oppression currently felt from proprietary vendors,
to software that we wish to think of as "free". The fact that such
oppression comes from a group of "well meaning" folks doesn't change the
dynamics of the situation.

> It also make it difficult to fork software -- if the original creator dies,
> and he didn't leave a "if I die, this is BSD'ed" like troll tech has, then
> you have to distribute the last version the creator wrote with every new
> version that gets created.

The whole point is to protect the access to the original author's work,
even after he has died. I wish to be able to apply a license that can't be
pried loose, even from my dead hands ;-) and your guidelines don't clearly
give me ways to do that.

> I think these are both fairly painful, albeit less so than the patch
> clause.

The patch clause is simply a mechanism to allow pristine source at the
same time as you allow modifications. Requiring pristine source does not
require the patch method. The patch method simply represents the most
reasonable solution to the "apparent" problem of pristine source. CVS
archives could be said to fulfill the "original source" requirements at
the same time as it deliveres the current set of modifications. The fact
that other, as yet unspecified, methods may become available is not
addressed by this approach.

> > > 3.6.5. Patch clause (deprecated)
> > > --------------------------------
> > >      Source level modifications may be required to be distributed as the
> > >      original source with a list of differences.
> This should possibly be "as a list of differences against the original
> source", so you don't have to distribute qt.tgz when you send your patch
> to TrollTech, eg.
> > I know what you are trying to avoid here, but it seems that you avoid a
> > bunch of other things as well, by being too specific here.
> > Can I require original source code be available and not require that you
> > deliver your mods via diff/patch?
> Under the previous clause you could, yes.
> Under this clause you can use a `diff-like' program to generate a list of
> difference.
> > If I allow a CVS repository to act as the distribution point for the
> > modified source, so long as the original source tree can be extracted from
> > the archives, is this the patch clause in action, or some other clause in
> > this definition?
> This is the "orginal source" clause in action.

But isn't CVS primarily a diff repository?

Not that I want to get into technical details here. This was meant to
point out the ambiguity of your statements.

> > > 5.1. Deprecated
> > > ---------------
> > >      By deprecated, we mean this is allowed but discourage and disliked.
> > >      These items may be removed in future versions. Also, software without
> > >      deprecated clauses is recommended over software that has licenses with
> > >      such clauses.
> > So there are levels of freeness described herein who's relative merits an
> > value are deprecated as well? This is a guideline for discrimination that
> > has no value to me, or to the freedoms that I cherish in free software.
> Again, "discouraged" might be a better word, and you are, of course, free
> to ignore it, and just differentiate on "free" vs "non-free".
What do you mean by that? One group can call a program free that another
group can call non-free, using the same guidelines? And this is an
improvement? I don't get it.
> But I think there is a difference between free software that makes use of
> the advertising clause or the patch cluase and software that doesn't. Not
> enough of one to make it non-free, but enough to discourage it some what.

Such muddy thinking does not promote the clear understanding of the "line
of demarcation" between free and non-free. You would have some things
understood to be "near, or over the line" depending on the individual's
preferences in reading the guidelines. This is totally unacceptable to me.

> > > 5.2. Non-binding Requests
> > > -------------------------
> > >      The license may make any number of non-binding requests. These should
> > >      be clearly separated from the binding section of the license.
> > Licenses are legal descriptions of what you may, and may not, do with the
> > licensed material. There are no such things as "non-binding requests" with
> > requard to a license, you either regulate the behaviour or you don't.
> Maybe there shouldn't be, but there is. Consider:
> ``Vim is Charityware.  You can use and copy it as much as you like,
> but you are encouraged to make a donation to orphans in Uganda.'',
> for example.

Since it is not a legally binding portion of the license (it contributes
nothing to the definition of the license) and does not impact any of the
three freedoms that we hold dear, I believe that such statements have no
bearing upon whether the license is free, or non-free. Can you give me an
example of a "non-binding request" that would make a license non-free?
Then why mention them?

> > > 5.3. Weaker Restrictions
> > > ------------------------
> > >      The license have less restrictive versions of the restrictions listed
> > >      here.
> > This isn't a grammatical sentance. What does this statement say?
> ``The license may make use of less restrictive versions of the Restrictions
> lists above''.
So, what am I getting from this statement that didn't already exist. The
fact that you make this one point clear, implies that there are other
situations where the allowed terms are also required terms, but you don't
clarify what those terms are.

> > > 5.4. Example Licenses
> > > ---------------------
> > >      As examples, we consider the following licenses DFSG-free: 
> > >         * the MIT/X Consortium License
> > >         * the Artistic License
> > >         * the GNU General Public License v2 (GPL)
> > >         * the GNU Library General Public License v2 (LGPL)
> > >         * the BSD License
> > >         * the Mozilla Public License v1.0 (MPL)
> > >         * the Q Public License v0.92 (QPL)
> > The terms that I saw above would remove about half of the licenses from
> > this list, including several that we consider very free.
> It would remove none of them, although it would discourage many of them.
The DFSG is inteded to be a "key out" document. That is, you key the
license against the specific items in the document. If it satisfies the
terms of the key, the document is "in". If it fails on a key test, the
document is "out". 

You seem to want a document that can declare a key item as excluded, and
then later drag the document back "in" with a set of exceptions to the
previous key. Cross document ambigueties will always be resolved in favor
of the license, allowing more of what we currently consider "non-free"
while posibly removing other items we currently consider "free".

I find both the goal and the method to be flawed, and object to this
document as a replacement for the current definitions.


_-_-_-_-_-   Author of "The Debian Linux User's Guide"  _-_-_-_-_-_-

aka   Dale Scheetz                   Phone:   1 (850) 656-9769
      Flexible Software              11000 McCrackin Road
      e-mail:  dwarf@polaris.net     Tallahassee, FL  32308

_-_-_-_-_-_- If you don't see what you want, just ask _-_-_-_-_-_-_-

Reply to: