Subject: x11/openmotify license terms
To: Joerg Sonnenberger <joerg@netbsd.org>
From: Greg Troxel <gdt@ir.bbn.com>
List: tech-pkg
Date: 05/14/2006 13:26:45
--=-=-=

First, apologies for not involving you as ${MAINTAINER} first; I
thought this was more straightforward than it perhaps is.

The question of why we should use LICENSE and RESTRICTED instead of
NOT_FOR_PLATFORM is a good one.  I have two arguments:

1. LICENSE and RESTRICTED are about legal restrictions (mostly
copyright, a bit patent).  The LICENSE framework explicitly recognizes
that people may have private agreements with copyright holders with
different terms (e.g., buying a copy of x11/xephem gets one a license
to use for commercial purposes, while the public grant does not
include that).  The openmotif license says:

  The rights granted under this license are limited solely to
  distribution and sublicensing of the Contribution(s) on, with, or for
  operating systems which are themselves Open Source programs. Contact
  The Open Group for a license allowing distribution and sublicensing of
  the Original Program on, with, or for operating systems which are not
  Open Source programs.

So it is reasonable to assume that some parties may have licenses to
use openmotify on Interix, or other non-open-source systems.  Setting
ACCEPTABLE_LICENESES is the standard, documented way to tell pkgsrc to
build a package with a non-free license.

With NOT_FOR_PLATFORM, there is no reasonable way for a user to tell
pkgsrc that they have a license.

2.  ONLY_FOR_PLATFORM and NOT_FOR_PLATFORM are, as far as I can tell,
intended for situations where the package simply cannot be built, or
where the necessary work has not yet been done.  Mixing licensing and
technical issues in the same varaiable seems unclean.


The settings of NO*_ON* are complex.  The license has terms that many
might find objectionable for commercial distribution, so I set
NO_*_ON_CDROM.

We should perhaps clean up the definition of when NO_*_ON_* get set in
the guide.  I'd argue they should be set if such distribution is
prohibited or requires the distributor to agree to anything beyond
what is required in free licenses (indemnification, patent cross
licensing, etc.).  Otherwise someone who does not agree could
inadvertently copy without a license, and avoiding that is the whole
point of NO_*_ON_*.

For NO_*_ON_FTP, the license says "on, with, or for operating systems
which are themselves Open Source programs."  The license doesn't seem
to address "use", but use isn't a right reserved to the copyright
holder under copyright law.  NO_*_ON_FTP is squarely about
distribution, so I think the current Makefile (1.46) is correct.

For an interesting viewpoint about use and the limits of copyright
law, see http://cr.yp.to/softwarelaw.html

But, I'd argue that pkgsrc should set LICENSE= if the copyright holder
fails to grant a license approved as free, and not step into the fray
about use and licenses.



--=-=-=
Content-Type: message/rfc822
Content-Disposition: inline

From: Greg Troxel <gdt@netbsd.org>
Subject: CVS commit: pkgsrc/x11/openmotif
To: pkgsrc-changes@NetBSD.org
Reply-To: gdt@netbsd.org
Message-Id: <20060514163558.126EE2DA27@cvs.netbsd.org>
Date: Sun, 14 May 2006 16:35:58 +0000 (UTC)
MIME-Version: 1.0


Module Name:	pkgsrc
Committed By:	gdt
Date:		Sun May 14 16:35:58 UTC 2006

Modified Files:
	pkgsrc/x11/openmotif: Makefile

Log Message:
Remove NOT_FOR_PLATFORM for Interix; that should be for technical
issues only, not licensing.

Add LICENSE=openmotif-license because this software is non-Free.

Set RESTRICTED, and NO_*_ON_CDROM because the license has complex
terms for "commercial product offering".

If $(OPSYS) is not in
  DragonFly FreeBSD Linux NetBSD OpenBSD
set NO_*_ON_FTP, because the license only grants distribution rights
for open source operating systems.

I believe this commit will still prevent openmotif from building on
Interix without setting ACCEPTABLE_LICENSES, and should also result in
all 4 of NO_*_ON_* being set on Interix.

There's too much make code to implement NO_*_ON_FTP-on-other-than-list
(munged from bsd.pkg.mk), but I didn't see a way to make
ONLY_FOR_PLATFORM run a makefile fragment on other platforms.


To generate a diff of this commit:
cvs rdiff -r1.45 -r1.46 pkgsrc/x11/openmotif/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.


--=-=-=



-- 
        Greg Troxel <gdt@ir.bbn.com>

--=-=-=--