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

Re: No more ports of unfree software

On Mon, May 26, 2003 at 01:52:48AM +0200, Marc Espie wrote:
> DJB stuff is a very special case. 
> DJB doesn't want his software patched at all.
> There is no actual licence in his software, and he refuse to set one.
> The fact is, you only found stuff on his web site. There is nothing
> reasonable bundled with the source.

"If you think you need a license from the copyright holder, you've been
bamboozled by Microsoft."

To me, that clearly shows why he doesn't feel the need to distribute
a license.

> So basically, this is very hazy legal stuff on one side. And DJB himself
> made it clear (as far as he can) that he doesn't like his software tweaked
> to install according to the OpenBSD ports tree wishes.

He can not like it all he wants, he tells us it's okay to ignore him by
explaining software law to us:

"You can distribute your patches for other people to use."

That's what the ports tree would be doing if DJB tools were marked

"As long as you're not distributing the software, you have nothing to
 worry about."

Again.. PERMIT_*=No covers this.

> Both these points, and a total inability to clarify the situation with DJB
> himself, more or less forced the removal.

What's the worst thing that can happen if software is unlicensed and we
have the PERMIT lines all set to No?  OpenBSD gets sued for distributing
a Makefile with some variables set?  I don't see how that is possible.

REPERCUSSIONS.  <-- I have never seen that in a license, ever.  Even if
I did, once again, I don't see how this would cause us problems.  Don't
we pass the burden of responsibility to the user with PERMIT_*=No?

What is the purpose of the PERMIT lines?

PERMIT_*_FTP   -- We try to protect Bob / the University of Alberta from
being sued for distributing source and modified binary versions?

PERMIT_*_CDROM -- We try to protect Theo / Austin from being sued for
"selling" distribution files and modified binary versions?

How is one to judge when to set a No or a Yes?  Do we set "Yes" only if
the license explicitly allows us to do so, or do set "Yes" only if the
license doesn't explicitly deny a right?  This is the most confusing
part for me.

There are cases where it is obvious:

- Software which contains patents.  This cannot be sold, but can be
  given away for free via package or distfile on FTP?  Is this correct?
  I remember Theo saying something to this effect at c2k3.

- Licenses which were obviously written in the DOS shareware days.  They
  usually deny anything which involves a fee.  archivers/ has good
  examples of this.

- GPL software which doesn't contain patents or is bundled with
  copyrighted contented is a Yes.

Stuff I really don't know what I should do with:


        Copyrighted but freely distributable.  That's the whole license!
        Is this PERMIT_*=Yes or PERMIT_*=No?  By what logic do I
        determine what to set the values to?


        "This program is free software; you can redistribute it and/or
        modify it under the same terms as Perl itself."
        I marked these with a "# GPL" since the "main" license is GPL and
        Perl is in the gnu directory in OpenBSD.  Unfortunately, Perl is
        actually tri-licensed GPL/Artistic/Custom.  So I am thinking
        about going through all the Perl stuff and marking it with
        # Perl instead.  But is this even valid?  "This is the same
        license as Perl" doesn't make any sense.  *Which* license(s) of
        Perl?  Am I supposed to mass e-mail all these Perl module guys
        asking for clarification or is this okay?

My favorite:


        5. This notice, and any references to this notice in the source,
        documentation, or binary, may not be removed or altered.

        But the default install scripts don't install the god damn
        license!  It's like the author wants people to violate his

What I started doing, and would like to continue doing, is go through
the whole ports tree and make sure the PERMIT lines are correct, and
put a comment above the PERMIT lines so anyone looking at them can see
how the values were determined to be what they are set to.

Once someone gets back to me about how I should go about setting the
PERMIT lines and what is acceptable and what isn't, then the question
remains.  What is unfree software?

Let me quote naddy@ here:

"We don't want to import any more ports with PERMIT_*_FTP != Yes.
There may be good reasons for exceptions and these can be individually
evaluated, but in general we want to just say, no thanks."

Uh okay... and let me quote niklas@ as well:

"The problem is, as always, where to draw the line?"

Indeed, but what's the point of drawing a line at all if you're going to
arbitrarily move it?

So when I come across software that doesn't have a license, do I remove
it like what was done with DJB* tools?  How is DJB a special case?
Because he's DJB?  OpenBSD is supposed to be free from politics.

When you started setting precedents like "no unfree software unless it's
a special case", that smells like politics to me.  What is meant by
"import any more..."?  No *new* unfree software in ports, but we can
keep all the unfree software we have now?  Where's the consistency?

We also have ports that aren't being upgraded because they're under a
new license that is less free.  I'd rather have a restricted diamond
than a free piece of coal.

If the line is going to be drawn, then fine.  But stick with it or else
don't draw a line at all.  If it isn't painfully obvious by now, I think
no line should be drawn.

If one is drawn, I will continue to root out licensing issues.  I would
like to continue doing this immediately, but I need some of the
following questions answered first:

- What consistutes a "free enough license"?  Is it okay if there are no
  explicit restrictions?  Is it bad if there are no rights explicitly
- We obviously have unfree PERMIT_*_FTP=No stuff that currently exists
  and can probably go just because no one uses it.  Does *anyone* use
  archivers/bzip?  Have you ever come across an "unace" archive?  When's
  the last time you needed to extract an "arj" archive? 1997?
- What are we supposed to do about Conditional licenses?  They give us
  rights, but with restrictions, which the ports tree meets by say,
  installing a copy of the license.  Is this free enough?
- Are licenses which say "we are under the same license as some other
  software package" okay?  Are they valid?

If this is really going to happen, then these questions, and many more
will need to answered.