pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/doc Regen.
details: https://anonhg.NetBSD.org/pkgsrc/rev/29c60ecf57c4
branches: trunk
changeset: 528661:29c60ecf57c4
user: wiz <wiz%pkgsrc.org@localhost>
date: Sat May 12 07:01:15 2007 +0000
description:
Regen.
diffstat:
doc/pkgsrc.html | 221 ++++++++++++++++++++++++++++++++++---------------------
doc/pkgsrc.txt | 149 +++++++++++++++++++++++-------------
2 files changed, 231 insertions(+), 139 deletions(-)
diffs (truncated from 710 to 300 lines):
diff -r 32e10d3603e9 -r 29c60ecf57c4 doc/pkgsrc.html
--- a/doc/pkgsrc.html Sat May 12 07:01:13 2007 +0000
+++ b/doc/pkgsrc.html Sat May 12 07:01:15 2007 +0000
@@ -641,6 +641,10 @@
<td><a href="http://www.tru64.org/" target="_top">OSF/1</a></td>
<td align="center">Nov 2004</td>
</tr>
+<tr>
+<td><a href="http://www.hp.com/products1/unix/" target="_top">HP-UX</a></td>
+<td align="center">Apr 2007</td>
+</tr>
</tbody>
</table></div>
</div>
@@ -903,7 +907,7 @@
quarterly basis from the current branch and only gets modified
for security updates. The names of the stable branches are built
from the year and the quarter, for example
- <code class="literal">2006Q4</code>.</p>
+ <code class="literal">2007Q1</code>.</p>
<p>The second step is to decide <span class="emphasis"><em>how</em></span> you
want to download pkgsrc. You can get it as a tar file, via SUP,
or via CVS. All three ways are described here.</p>
@@ -917,8 +921,8 @@
<p>The tar file for the current branch is in the directory
<code class="filename">current</code> and is called <a href="ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz" target="_top"><code class="filename">pkgsrc.tar.gz</code></a>.
It is autogenerated daily.</p>
-<p>The tar file for the stable branch 2006Q4 is in the
- directory <code class="filename">pkgsrc-2006Q4</code> and is also called <a href="ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2006Q4/pkgsrc-2006Q4.tar.gz" target="_top"><code
class="filename">pkgsrc-2006Q4.tar.gz</code></a>.</p>
+<p>The tar file for the stable branch 2007Q1 is in the
+ directory <code class="filename">pkgsrc-2007Q1</code> and is also called <a href="ftp://ftp.NetBSD.org/pub/pkgsrc/pkgsrc-2007Q1/pkgsrc-2007Q1.tar.gz" target="_top"><code
class="filename">pkgsrc-2007Q1.tar.gz</code></a>.</p>
<p>After downloading the tar file, change to the directory
where you want to have pkgsrc. This is usually
<code class="filename">/usr</code>. Then, run <span><strong class="command">gzcat
@@ -965,7 +969,7 @@
<code class="filename">/usr</code>. In that directory you run the
checkout command, which is <span><strong class="command">cvs -q checkout -P
pkgsrc</strong></span> for the current branch and <span><strong class="command">cvs -q
- checkout -rpkgsrc-2006Q4 -P pkgsrc</strong></span> for the stable
+ checkout -rpkgsrc-2007Q1 -P pkgsrc</strong></span> for the stable
branch. This command will create a directory called
<code class="filename">pkgsrc</code> with all the pkgsrc files in
it.</p>
@@ -1018,7 +1022,7 @@
by adding the option “<span class="quote">-A</span>” after the
“<span class="quote">update</span>” keyword. To switch from the current branch
back to the stable branch, add the
- “<span class="quote">-rpkgsrc-2006Q4</span>” option.</p>
+ “<span class="quote">-rpkgsrc-2007Q1</span>” option.</p>
</div>
<div class="sect3" lang="en">
<div class="titlepage"><div><div><h4 class="title">
@@ -1170,6 +1174,12 @@
<td class="binary-pkgs-url"> </td>
</tr>
<tr>
+<td class="osname">HP-UX 11.11/hppa</td>
+<td class="date">20070421</td>
+<td class="kit-url"><a href="ftp://ftp.NetBSD.org/pub/pkgsrc/packages/bootstrap-pkgsrc/bootstrap-pkgsrc-HPUX-B.11.11-hppa-20070421.tar.gz" target="_top">binary kit</a></td>
+<td class="binary-pkgs-url"> </td>
+</tr>
+<tr>
<td class="osname">Interix 3.5</td>
<td class="date">20061106</td>
<td class="kit-url"><a href="ftp://ftp.NetBSD.org/pub/pkgsrc/packages/bootstrap-pkgsrc/bootstrap-pkgsrc-Interix-3.5-i386-20061106.tar.gz" target="_top">binary kit</a></td>
@@ -1206,6 +1216,12 @@
<td class="binary-pkgs-url"> </td>
</tr>
<tr>
+<td class="osname">OSF1 5.1/alpha</td>
+<td class="date">20070420</td>
+<td class="kit-url"><a href="ftp://ftp.NetBSD.org/pub/pkgsrc/packages/bootstrap-pkgsrc/bootstrap-pkgsrc-OSF1-V5.1-alpha-20070420.tar.gz" target="_top">binary kit</a></td>
+<td class="binary-pkgs-url"> </td>
+</tr>
+<tr>
<td class="osname">Slackware Linux 8.1/i386</td>
<td class="date">20030417</td>
<td class="kit-url"><a href="ftp://ftp.NetBSD.org/pub/pkgsrc/packages/bootstrap-pkgsrc/bootstrap-pkgsrc-Linux-2.4.18-slackware-20030417.tar.gz" target="_top">binary kit</a></td>
@@ -3526,8 +3542,10 @@
password for each required package installed. To avoid this, the sudo
package can be used, which does password caching over a limited time. To
use it, install sudo (either as binary package or from
-<a href="ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc/security/sudo/README.html" target="_top"><code class="filename">security/sudo</code></a>) and then put the following
-into your <code class="filename">/etc/mk.conf</code>:</p>
+<a href="ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc/security/sudo/README.html" target="_top"><code class="filename">security/sudo</code></a>) and then put the
+following into your <code class="filename">/etc/mk.conf</code>, somewhere
+<span class="emphasis"><em>after</em></span> the definition of the
+<code class="varname">LOCALBASE</code> variable:</p>
<pre class="programlisting">
.if exists(${LOCALBASE}/bin/sudo)
SU_CMD= ${LOCALBASE}/bin/sudo /bin/sh -c
@@ -6983,16 +7001,10 @@
<dt><span class="term"><code class="varname">INSTALLATION_DIRS</code></span></dt>
<dd><p>A list of directories relative to
<code class="varname">PREFIX</code> that are created by pkgsrc at the
- beginning of the <span class="emphasis"><em>install</em></span> phase. If
- this variable is set,
- <code class="varname">NO_MTREE</code>=“<span class="quote">yes</span>” is assumed,
- which means that the package claims to create all needed
- directories itself before installing files to it. Therefore
- this variable should only be set in
- <code class="filename">Makefile</code>s that are under control of the
- package's author. The directories are created with the
- correct ownership, depending on their
- name.</p></dd>
+ beginning of the <span class="emphasis"><em>install</em></span> phase.
+ The package is supposed to create all needed directories itself
+ before installing files to it and list all other directories here.
+ </p></dd>
</dl></div>
<p>In the rare cases that a package shouldn't install anything,
set <code class="varname">NO_INSTALL</code> to “<span class="quote">yes</span>”. This is
@@ -7484,7 +7496,7 @@
<tbody>
<tr class="question">
<td align="left" valign="top">
-<a name="tools.new"></a><a name="id2680589"></a><b>17.4.1.</b>
+<a name="tools.new"></a><a name="id454976"></a><b>17.4.1.</b>
</td>
<td align="left" valign="top"><p>How do I add a new tool?</p></td>
</tr>
@@ -7494,7 +7506,7 @@
</tr>
<tr class="question">
<td align="left" valign="top">
-<a name="tools.listall"></a><a name="id2680599"></a><b>17.4.2.</b>
+<a name="tools.listall"></a><a name="id454985"></a><b>17.4.2.</b>
</td>
<td align="left" valign="top"><p>How do I get a list of all available
tools?</p></td>
@@ -7505,7 +7517,7 @@
</tr>
<tr class="question">
<td align="left" valign="top">
-<a name="tools.used"></a><a name="id2680610"></a><b>17.4.3.</b>
+<a name="tools.used"></a><a name="id454995"></a><b>17.4.3.</b>
</td>
<td align="left" valign="top"><p>How can I get a list of all the tools that a
package is using while being built? I want to know whether it
@@ -7665,20 +7677,35 @@
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="handling-licenses"></a>18.1.4. Handling licenses</h3></div></div></div>
-<p>A package may be covered by a license which the user has
- or has not agreed to accept. For these cases, pkgsrc contains
- a mechanism to note that a package is covered by a particular
- license, and the package cannot be built unless the user has
- accepted the license. (Installation of binary packages are
- not currently subject to this mechanism.) Packages with
- licenses that are either Open Source according to the Open
- Source Initiative or Free according to the Free Software
- Foundation will not be marked with a license tag. Packages
- with licenses that have not been determined to meet either
- definition will be marked with a license tag referring to the
- license. This will prevent building unless pkgsrc is informed
- that the license is acceptable, and enables displaying the
- license.</p>
+<p>Authors of software can choose the licence under which
+ software can be copied. This is due to copyright law, and reasons
+ for license choices are outside the scope of pkgsrc. The pkgsrc
+ system recognizes that there are a number of licenses which some
+ users may find objectionable or difficult or impossible to comply
+ with. The Free Software Foundation has declared some licenses
+ "Free", and the Open Source Initiative has a definition of "Open
+ Source". The pkgsrc system, as a policy choice, does not label
+ packages which have licenses that are Free or Open Source.
+ However, packages without a license meeting either of those tests
+ are labeled with a license tag denoting the license. Note that a
+ package with no license to copy trivially does not meet either the
+ Free or Open Source test.</p>
+<p>For packages which are not Free or Open Source, pkgsrc will
+ not build the package unless the user has indicated to pkgsrc that
+ packages with that particular license may be built. Note that
+ this documentation avoids the term "accepted the license". The
+ pkgsrc system is merely providing a mechanism to avoid
+ accidentially building a package with a non-free license;
+ judgement and responsibility remain with the user. (Installation
+ of binary packages are not currently subject to this mechanism;
+ this is a bug.)</p>
+<p>One might want to only install packages with a BSD license,
+ or the GPL, and not the other. The pkgsrc license tag mechanism
+ does not provide a way to do this. It might be possible to put in
+ tags for free licenses, and have a default
+ <code class="varname">ACCEPTABLE_LICENSES</code> variable value, but this is
+ widely viewed as having a very poor ratio of benefit to
+ work.</p>
<p>The license tag mechanism is intended to address
copyright-related issues surrounding building, installing and
using a package, and not to address redistribution issues (see
@@ -7686,9 +7713,10 @@
<code class="varname">NO_SRC_ON_FTP</code>, etc.). However, the above
definition of licenses for which tags are not needed implies
that packages with redistribution restrictions should have
- tags.</p>
-<p>Denoting that a package is covered by a particular license
- is done by placing the license in
+ tags, because Free or Open Source programs do not have
+ redistribution restrictions.</p>
+<p>Denoting that a package may be copied according to a
+ particular license is done by placing the license in
<code class="filename">pkgsrc/licenses</code> and setting the
<code class="varname">LICENSE</code> variable to a string identifying the
license, e.g. in <a href="ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc/graphics/xv/README.html" target="_top"><code class="filename">graphics/xv</code></a>:</p>
@@ -7696,8 +7724,8 @@
LICENSE= xv-license
</pre>
<p>When trying to build, the user will get a notice that the
- package is covered by a license which has not been
- accepted:</p>
+ package is covered by a license which has not been placed in the
+ <code class="varname">ACCEPTABLE_LICENSES</code> variable:</p>
<pre class="programlisting">
<code class="prompt">%</code> <strong class="userinput"><code>make</code></strong>
===> xv-3.10anb9 has an unacceptable license: xv-license.
@@ -7707,32 +7735,55 @@
*** Error code 1
</pre>
<p>The license can be viewed with <span><strong class="command">make
- show-license</strong></span>, and if it is considered appropriate,
- the line printed above can be added to
- <code class="filename">/etc/mk.conf</code> to indicate acceptance of
- the particular license:</p>
+ show-license</strong></span>, and if the user so chooses, the line
+ printed above can be added to <code class="filename">/etc/mk.conf</code> to
+ convey to pkgsrc that it should not in the future fail because of
+ that license:</p>
<pre class="programlisting">
ACCEPTABLE_LICENSES+=xv-license
</pre>
-<p>When adding a package with a new license, the license
- text should be added to <code class="filename">pkgsrc/licenses</code>
- for displaying. A list of known licenses can be seen in this
+<p>When adding a package with a new license, the license text
+ should be added to <code class="filename">pkgsrc/licenses</code> for
+ displaying. A list of known licenses can be seen in this
directory.</p>
+<p>When the license changes (in a way other than formatting),
+ please make sure that the new license has a different name (e.g.,
+ append the version number if it exists, or the date). Just
+ because a user told pkgsrc to build programs under a previous
+ version of a license does not mean that pkgsrc should build
+ programs under the new licenes. The higher-level point is that
+ pkgsrc does not evaluate licenses for reasonableness; the only
+ test is a mechanistic test of whether a particular text has been
+ approved by either of two bodies.</p>
<p>The use of <code class="varname">LICENSE=shareware</code>,
- <code class="varname">LICENSE=no-commercial-use</code>, and similar
- language is deprecated because it does not crisply refer to
- a particular license text. Another problem with such usage
- is that it does not enable a user to denote acceptance of
- the license for a single package without accepting the same
- license text for another package. In particular, this can
- be inappropriate when e.g. one accepts a particular license to
- indicate to pkgsrc that a fee has been paid.</p>
+ <code class="varname">LICENSE=no-commercial-use</code>, and similar language
+ is deprecated because it does not crisply refer to a particular
+ license text. Another problem with such usage is that it does not
+ enable a user to tell pkgsrc to proceed for a single package
+ without also telling pkgsrc to proceed for all packages with that
+ tag.</p>
</div>
<div class="sect2" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="restricted-packages"></a>18.1.5. Restricted packages</h3></div></div></div>
<p>Some licenses restrict how software may be re-distributed.
- In order to satisfy these restrictions, the package system
+ Because a license tag is required unless the package is Free or
+ Open Source, all packages with restrictions should have license
+ tags. By declaring the restrictions, package tools can
+ automatically refrain from e.g. placing binary packages on FTP
+ sites.</p>
+<p>There are four restrictions that may be encoded, which are
+ the cross product of sources (distfiles) and binaries not being
+ placed on FTP sites and CD-ROMs. Because this is rarely the exact
+ language in any license, and because non-Free licenses tend to be
+ different from each other, pkgsrc adopts a definition of FTP and
+ CD-ROM. Pkgsrc uses "FTP" to mean that the source or binary file
+ should not be made available over the Internet at no charge.
+ Pkgsrc uses "CD-ROM" to mean that the source or binary may not be
+ made available on some kind of media, together with other source
+ and binary packages, and which is sold for a distribution charge.
+ </p>
+<p>In order to encode these restrictions, the package system
defines five make variables that can be set to note these
restrictions:</p>
<div class="itemizedlist"><ul type="disc">
@@ -7740,35 +7791,38 @@
<p><code class="varname">RESTRICTED</code></p>
<p>This variable should be set whenever a restriction
exists (regardless of its kind). Set this variable to a
- string containing the reason for the restriction.</p>
+ string containing the reason for the restriction. It should
+ be understood that those wanting to understand the restriction
+ will have to read the license, and perhaps seek advice of
+ counsel.</p>
</li>
<li>
<p><code class="varname">NO_BIN_ON_CDROM</code></p>
-<p>Binaries may not be placed on CD-ROM. Set this
- variable to <code class="varname">${RESTRICTED}</code> whenever a
Home |
Main Index |
Thread Index |
Old Index