From f9318ccae2bb9aecf7f87f60ce47bd6fdd8fef10 Mon Sep 17 00:00:00 2001 From: wiz Date: Sat, 7 May 2005 22:41:15 +0000 Subject: regen (various fixes and updates) --- doc/pkgsrc.html | 1244 ++++++++++++++++++++++++++++--------------------------- doc/pkgsrc.txt | 138 +++--- 2 files changed, 714 insertions(+), 668 deletions(-) diff --git a/doc/pkgsrc.html b/doc/pkgsrc.html index 0c7165dd930..e2dfd84586e 100644 --- a/doc/pkgsrc.html +++ b/doc/pkgsrc.html @@ -8,7 +8,7 @@ The pkgsrc guide + "DocBook XSL Stylesheets VX.X.X" /> @@ -19,8 +19,8 @@ alink="#0000FF">
-

The pkgsrc guide

+

The pkgsrc guide

@@ -65,9 +65,9 @@ alink="#0000FF"> NetBSD Foundation, Inc

-
-

$NetBSD: pkgsrc.xml,v 1.3 2004/10/22 - 00:24:48 hubertf Exp $

+
+

$NetBSD: pkgsrc.xml,v 1.4 + 2005/05/07 22:28:47 wiz Exp $

@@ -93,7 +93,7 @@ alink="#0000FF">
-
1.1. +
1.1. Introduction
1.2. @@ -117,13 +117,13 @@ alink="#0000FF">
-
2.1. +
2.1. As tar file
-
2.2. +
2.2. Via SUP
-
2.3. +
2.3. Via CVS
@@ -133,35 +133,35 @@ alink="#0000FF">
-
3.1. +
3.1. Bootstrapping pkgsrc
-
3.2. +
3.2. Platform specific notes
3.2.1. Darwin (Mac OS + "#id2569717">3.2.1. Darwin (Mac OS X)
3.2.2. FreeBSD
+ "#id2569879">3.2.2. FreeBSD
3.2.3. Interix
+ "#id2570459">3.2.3. Interix
3.2.4. IRIX
+ "#id2570693">3.2.4. IRIX
3.2.5. Linux
+ "#id2570777">3.2.5. Linux
3.2.6. OpenBSD
+ "#id2570838">3.2.6. OpenBSD
3.2.7. Solaris
+ "#id2570950">3.2.7. Solaris
@@ -179,38 +179,38 @@ alink="#0000FF">
4.1.1. Where to get binary + "#id2571155">4.1.1. Where to get binary packages
4.1.2. How to use binary + "#id2571264">4.1.2. How to use binary packages
4.1.3. A word of + "#id2571371">4.1.3. A word of warning
-
4.2. +
4.2. Building packages from source
4.2.1. + "#id2571393">4.2.1. Requirements
4.2.2. Fetching + "#id2571822">4.2.2. Fetching distfiles
4.2.3. How to build and + "#id2571875">4.2.3. How to build and install
4.2.4. Selecting the + "#id2623810">4.2.4. Selecting the compiler
@@ -222,10 +222,10 @@ alink="#0000FF">
-
5.1. +
5.1. Building a single binary package
-
5.2. +
5.2. Settings for creation of binary packages
@@ -239,26 +239,26 @@ alink="#0000FF"> Configuration
5.3.2. Other environmental + "#id2624115">5.3.2. Other environmental considerations
5.3.3. Operation
+ "#id2624155">5.3.3. Operation
5.3.4. What it + "#id2624225">5.3.4. What it does
5.3.5. Disk space + "#id2624281">5.3.5. Disk space requirements
5.3.6. Setting up a sandbox for + "#id2624308">5.3.6. Setting up a sandbox for chroot'ed builds
5.3.7. Building a partial set of + "#id2624905">5.3.7. Building a partial set of packages
-
5.4. +
5.4. Creating a multiple CD-ROM packages collection
5.4.1. Example of + "#id2625289">5.4.1. Example of cdpack
@@ -286,54 +286,54 @@ alink="#0000FF">
-
6.1. +
6.1. Are there any mailing lists for pkg-related discussion?
-
6.2. +
6.2. Where's the pkgviews documentation?
6.3. Utilities for package management (pkgtools)
-
6.4. +
6.4. How to use pkgsrc as non-root
-
6.5. +
6.5. How to resume transfers when fetching distfiles?
-
6.6. +
6.6. How can I install/use XFree86 from pkgsrc?
-
6.7. +
6.7. How can I install/use X.org from pkgsrc?
-
6.8. +
6.8. How to fetch files from behind a firewall
-
6.9. +
6.9. How do I tell make fetch to do passive FTP?
-
6.10. +
6.10. How to fetch all distfiles at once
-
6.11. +
6.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
-
6.12. +
6.12. What does “Could not find bsd.own.mk” mean?
-
6.13. +
6.13. Using 'sudo' with pkgsrc
6.14. @@ -371,17 +371,17 @@ alink="#0000FF"> "#components.patches">7.3. patches/*
-
7.4. +
7.4. Other mandatory files
7.5. Optional files
-
7.6. +
7.6. work*
-
7.7. +
7.7. files/*
@@ -392,10 +392,10 @@ alink="#0000FF">
-
8.1. +
8.1. RCS ID
-
8.2. +
8.2. Semi-automatic PLIST generation
@@ -407,14 +407,14 @@ alink="#0000FF">
8.4. Variable substitution in PLIST
-
8.5. +
8.5. Manpage-compression
-
8.6. +
8.6. Changing PLIST source with PLIST_SRC
-
8.7. +
8.7. Platform specific and differing PLISTs
@@ -429,22 +429,22 @@ alink="#0000FF">
-
9.1. +
9.1. Converting packages to use buildlink3
-
9.2. +
9.2. Writing buildlink3.mk files
9.2.1. Anatomy of a buildlink3.mk + "#id2628941">9.2.1. Anatomy of a buildlink3.mk file
9.2.2. Updating 9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk @@ -452,19 +452,19 @@ alink="#0000FF">
-
9.3. +
9.3. Writing builtin.mk files
9.3.1. Anatomy of a 9.3.1. Anatomy of a builtin.mk file
9.3.2. Global preferences for + "#id2629837">9.3.2. Global preferences for native or pkgsrc software
@@ -476,10 +476,10 @@ alink="#0000FF">
-
10.1. +
10.1. Global default options
-
10.2. +
10.2. Converting packages to use bsd.options.mk
@@ -494,7 +494,7 @@ alink="#0000FF"> "#build.prefix">11.1. Program location -
11.2. +
11.2. Main targets
-
12.1. +
12.1. General operation
12.1.1. How to pull in variables + "#id2632073">12.1.1. How to pull in variables from /etc/mk.conf
12.1.2. Restricted + "#id2632156">12.1.2. Restricted packages
dependencies
12.1.4. Handling conflicts with + "#id2632672">12.1.4. Handling conflicts with other packages
12.1.5. Packages that cannot or + "#id2632790">12.1.5. Packages that cannot or should not be built
12.1.6. Packages which should not + "#id2632816">12.1.6. Packages which should not be deleted, once installed
with security problems
12.1.8. How to handle compiler + "#id2632907">12.1.8. How to handle compiler bugs
12.1.9. How to handle incrementing + "#id2632930">12.1.9. How to handle incrementing versions when fixing an existing package
12.1.10. Portability of + "#id2632979">12.1.10. Portability of packages
-
12.2. +
12.2. Possible downloading issues
12.2.1. Packages whose distfiles + "#id2633006">12.2.1. Packages whose distfiles aren't available for plain downloading
12.2.2. How to handle modified + "#id2633069">12.2.2. How to handle modified distfiles with the 'old' name
-
12.3. +
12.3. Configuration gotchas
@@ -582,66 +582,66 @@ alink="#0000FF"> libtool
12.3.2. Using libtool on GNU + "#id2633438">12.3.2. Using libtool on GNU packages that already support libtool
12.3.3. GNU + "#id2633588">12.3.3. GNU Autoconf/Automake
-
12.4. +
12.4. Building considerations
12.4.1. CPP + "#id2633704">12.4.1. CPP defines
-
12.5. +
12.5. Package specific actions
12.5.1. Package configuration + "#id2633805">12.5.1. Package configuration files
12.5.2. User + "#id2633908">12.5.2. User interaction
12.5.3. Handling + "#id2633953">12.5.3. Handling licenses
12.5.4. Creating an account from a + "#id2634036">12.5.4. Creating an account from a package
12.5.5. Installing score + "#id2634166">12.5.5. Installing score files
12.5.6. Packages providing login + "#id2634210">12.5.6. Packages providing login shells
12.5.7. Packages containing perl + "#id2634267">12.5.7. Packages containing perl scripts
12.5.8. Packages with hardcoded + "#id2634422">12.5.8. Packages with hardcoded paths to other interpreters
12.5.9. Packages installing perl + "#id2634443">12.5.9. Packages installing perl modules
info files
12.5.11. Packages installing + "#id2634663">12.5.11. Packages installing GConf2 data files
12.5.12. Packages installing + "#id2634763">12.5.12. Packages installing scrollkeeper data files
12.5.13. Packages installing X11 + "#id2634814">12.5.13. Packages installing X11 fonts
12.5.14. Packages installing GTK2 + "#id2634861">12.5.14. Packages installing GTK2 modules
12.5.15. Packages installing SGML + "#id2634931">12.5.15. Packages installing SGML or XML data
12.5.16. Packages installing + "#id2635051">12.5.16. Packages installing extensions to the MIME database
12.5.17. Packages using + "#id2635190">12.5.17. Packages using intltool
12.5.18. Packages installing + "#id2635204">12.5.18. Packages installing startup scripts
-
12.6. +
12.6. Feedback to the author
@@ -695,18 +695,18 @@ alink="#0000FF">
-
14.1. +
14.1. Submitting your packages
-
14.2. +
14.2. Committing: Importing a package into CVS
-
14.3. +
14.3. Updating a package to a newer version
-
14.4. +
14.4. Moving a package in pkgsrc
@@ -718,27 +718,27 @@ alink="#0000FF">
-
A.1. +
A.1. files
-
A.1.1. +
A.1.1. Makefile
-
A.1.2. +
A.1.2. DESCR
-
A.1.3. +
A.1.3. PLIST
-
A.1.4. +
A.1.4. Checking a package with pkglint
-
A.2. Steps +
A.2. Steps for building, installing, packaging
@@ -764,10 +764,10 @@ alink="#0000FF">
-
D.1. +
D.1. Targets
-
D.2. +
D.2. Procedure
@@ -788,7 +788,7 @@ alink="#0000FF">

Table of Contents

-
1.1. +
1.1. Introduction
1.2. @@ -807,8 +807,8 @@ alink="#0000FF">

1.1. Introduction

+ "id2623536" id= + "id2623536">1.1. Introduction
@@ -1118,13 +1118,13 @@ alink="#0000FF">
-
2.1. As +
2.1. As tar file
-
2.2. Via +
2.2. Via SUP
-
2.3. Via +
2.3. Via CVS
@@ -1134,35 +1134,35 @@ alink="#0000FF">
-
3.1. +
3.1. Bootstrapping pkgsrc
-
3.2. +
3.2. Platform specific notes
3.2.1. Darwin (Mac OS + "#id2569717">3.2.1. Darwin (Mac OS X)
3.2.2. FreeBSD
+ "#id2569879">3.2.2. FreeBSD
3.2.3. Interix
+ "#id2570459">3.2.3. Interix
3.2.4. IRIX
+ "#id2570693">3.2.4. IRIX
3.2.5. Linux
+ "#id2570777">3.2.5. Linux
3.2.6. OpenBSD
+ "#id2570838">3.2.6. OpenBSD
3.2.7. Solaris
+ "#id2570950">3.2.7. Solaris
@@ -1180,37 +1180,37 @@ alink="#0000FF">
4.1.1. Where to get binary + "#id2571155">4.1.1. Where to get binary packages
4.1.2. How to use binary + "#id2571264">4.1.2. How to use binary packages
4.1.3. A word of + "#id2571371">4.1.3. A word of warning
-
4.2. +
4.2. Building packages from source
4.2.1. Requirements
+ "#id2571393">4.2.1. Requirements
4.2.2. Fetching + "#id2571822">4.2.2. Fetching distfiles
4.2.3. How to build and + "#id2571875">4.2.3. How to build and install
4.2.4. Selecting the + "#id2623810">4.2.4. Selecting the compiler
@@ -1222,10 +1222,10 @@ alink="#0000FF">
-
5.1. +
5.1. Building a single binary package
-
5.2. +
5.2. Settings for creation of binary packages
@@ -1239,25 +1239,25 @@ alink="#0000FF"> Configuration
5.3.2. Other environmental + "#id2624115">5.3.2. Other environmental considerations
5.3.3. Operation
+ "#id2624155">5.3.3. Operation
5.3.4. What it does
+ "#id2624225">5.3.4. What it does
5.3.5. Disk space + "#id2624281">5.3.5. Disk space requirements
5.3.6. Setting up a sandbox for + "#id2624308">5.3.6. Setting up a sandbox for chroot'ed builds
5.3.7. Building a partial set of + "#id2624905">5.3.7. Building a partial set of packages
-
5.4. +
5.4. Creating a multiple CD-ROM packages collection
5.4.1. Example of + "#id2625289">5.4.1. Example of cdpack
@@ -1285,52 +1285,52 @@ alink="#0000FF">
-
6.1. Are +
6.1. Are there any mailing lists for pkg-related discussion?
-
6.2. +
6.2. Where's the pkgviews documentation?
6.3. Utilities for package management (pkgtools)
-
6.4. How +
6.4. How to use pkgsrc as non-root
-
6.5. How +
6.5. How to resume transfers when fetching distfiles?
-
6.6. How +
6.6. How can I install/use XFree86 from pkgsrc?
-
6.7. How +
6.7. How can I install/use X.org from pkgsrc?
-
6.8. How +
6.8. How to fetch files from behind a firewall
-
6.9. How +
6.9. How do I tell make fetch to do passive FTP?
-
6.10. +
6.10. How to fetch all distfiles at once
-
6.11. +
6.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
-
6.12. +
6.12. What does “Could not find bsd.own.mk” mean?
-
6.13. +
6.13. Using 'sudo' with pkgsrc
6.14. @@ -1360,13 +1360,13 @@ alink="#0000FF">

Table of Contents

-
2.1. As +
2.1. As tar file
-
2.2. Via +
2.2. Via SUP
-
2.3. Via +
2.3. Via CVS
@@ -1380,7 +1380,7 @@ alink="#0000FF">

2.1. As tar + "id2569303" id="id2569303">2.1. As tar file

@@ -1398,7 +1398,7 @@ alink="#0000FF">

2.2. Via + "id2569319" id="id2569319">2.2. Via SUP

@@ -1424,7 +1424,7 @@ release=pkgsrc

2.3. Via + "id2569351" id="id2569351">2.3. Via CVS

@@ -1481,33 +1481,33 @@ release=pkgsrc

Table of Contents

-
3.1. +
3.1. Bootstrapping pkgsrc
-
3.2. +
3.2. Platform specific notes
-
3.2.1. +
3.2.1. Darwin (Mac OS X)
-
3.2.2. +
3.2.2. FreeBSD
-
3.2.3. +
3.2.3. Interix
-
3.2.4. +
3.2.4. IRIX
-
3.2.5. +
3.2.5. Linux
-
3.2.6. +
3.2.6. OpenBSD
-
3.2.7. +
3.2.7. Solaris
@@ -1519,8 +1519,8 @@ release=pkgsrc

3.1. Bootstrapping pkgsrc

+ "id2569529" id= + "id2569529">3.1. Bootstrapping pkgsrc
@@ -1610,7 +1610,7 @@ release=pkgsrc

3.2. Platform + "id2569710" id="id2569710">3.2. Platform specific notes

@@ -1623,8 +1623,8 @@ release=pkgsrc
-

3.2.1. Darwin (Mac OS +

3.2.1. Darwin (Mac OS X)

@@ -1756,8 +1756,8 @@ release=pkgsrc
-

3.2.2. FreeBSD

+

3.2.2. FreeBSD

@@ -1813,8 +1813,8 @@ release=pkgsrc
-

3.2.3. Interix

+

3.2.3. Interix

@@ -1995,8 +1995,8 @@ interix:kP=\E[S:kN=\E[T:kH=\E[U:dc@:DC@:tc=pcansi:
-

3.2.4. IRIX

+

3.2.4. IRIX

@@ -2069,8 +2069,8 @@ PKGSRC_COMPILER=mipspro
-

3.2.5. Linux

+

3.2.5. Linux

@@ -2143,8 +2143,8 @@ ICCBASE=/opt/icc
-

3.2.6. OpenBSD

+

3.2.6. OpenBSD

@@ -2210,8 +2210,8 @@ ICCBASE=/opt/icc
-

3.2.7. Solaris

+

3.2.7. Solaris

@@ -2255,8 +2255,8 @@ ICCBASE=/opt/icc
-

3.2.7.1. If you are using +

3.2.7.1. If you are using gcc

@@ -2285,8 +2285,8 @@ ICCBASE=/opt/icc
-

3.2.7.2. If you are using +

3.2.7.2. If you are using Sun WorkShop

@@ -2363,32 +2363,32 @@ CFLAGS= -xtarget=ultra -xarch=v9
-
4.1.1. +
4.1.1. Where to get binary packages
-
4.1.2. +
4.1.2. How to use binary packages
-
4.1.3. +
4.1.3. A word of warning
-
4.2. +
4.2. Building packages from source
-
4.2.1. +
4.2.1. Requirements
-
4.2.2. +
4.2.2. Fetching distfiles
-
4.2.3. +
4.2.3. How to build and install
-
4.2.4. +
4.2.4. Selecting the compiler
@@ -2415,8 +2415,8 @@ CFLAGS= -xtarget=ultra -xarch=v9
-

4.1.1. Where to get binary +

4.1.1. Where to get binary packages

@@ -2447,15 +2447,15 @@ CFLAGS= -xtarget=ultra -xarch=v9
-

4.1.2. How to use binary +

4.1.2. How to use binary packages

If you have the files on a CDROM or downloaded them - to your hard disk, youcan install them with the + to your hard disk, you can install them with the following command (be sure tosu to root first):

@@ -2482,6 +2482,32 @@ CFLAGS= -xtarget=ultra -xarch=v9
             run the package in question will be installed, too,
             assuming they are present where you install from.

+

To save some typing, you can set the PKG_PATH environment variable to a + semicolon separated list of paths (including remote + URLs); trailing slashes are not allowed.

+ +

Additionally to the All directory there exists a + vulnerable directory to + which binary packages with known vulnerabilities are + moved, since removing them could cause missing + dependencies. To use these packages, add the + vulnerable directory to + your PKG_PATH. However, + you should run security/audit-packages regularly, + and especially after installing new packages, and + verify that the vulnerabilities are acceptable for your + configuration. An example PKG_PATH would be: ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/All;ftp://ftp.NetBSD.org/pub/NetBSD/packages/<OSvers>/<arch>/vulnerable + Please note that semicolon (';') is a shell + meta-character, so you'll probably have to quote + it.

+

After you've installed packages, be sure to have /usr/pkg/bin in your PATH so you can actually @@ -2492,8 +2518,8 @@ CFLAGS= -xtarget=ultra -xarch=v9

-

4.1.3. A word of +

4.1.3. A word of warning

@@ -2516,7 +2542,7 @@ CFLAGS= -xtarget=ultra -xarch=v9

4.2. Building + "id2571383" id="id2571383">4.2. Building packages from source

@@ -2531,8 +2557,8 @@ CFLAGS= -xtarget=ultra -xarch=v9
-

4.2.1. Requirements

+

4.2.1. Requirements

@@ -2551,8 +2577,8 @@ CFLAGS= -xtarget=ultra -xarch=v9
-

4.2.2. Fetching +

4.2.2. Fetching distfiles

@@ -2593,8 +2619,8 @@ CFLAGS= -xtarget=ultra -xarch=v9
-

4.2.3. How to build and +

4.2.3. How to build and install

@@ -2762,8 +2788,8 @@ CFLAGS= -xtarget=ultra -xarch=v9
-

4.2.4. Selecting the +

4.2.4. Selecting the compiler

@@ -2863,10 +2889,10 @@ CFLAGS= -xtarget=ultra -xarch=v9

Table of Contents

-
5.1. +
5.1. Building a single binary package
-
5.2. +
5.2. Settings for creation of binary packages
@@ -2879,23 +2905,23 @@ CFLAGS= -xtarget=ultra -xarch=v9 "#binary.configuration">5.3.1. Configuration -
5.3.2. +
5.3.2. Other environmental considerations
-
5.3.3. +
5.3.3. Operation
-
5.3.4. +
5.3.4. What it does
-
5.3.5. +
5.3.5. Disk space requirements
-
5.3.6. +
5.3.6. Setting up a sandbox for chroot'ed builds
-
5.3.7. +
5.3.7. Building a partial set of packages
-
5.4. +
5.4. Creating a multiple CD-ROM packages collection
-
5.4.1. +
5.4.1. Example of cdpack
@@ -2922,7 +2948,7 @@ CFLAGS= -xtarget=ultra -xarch=v9

5.1. Building a + "id2623896" id="id2623896">5.1. Building a single binary package

@@ -2976,7 +3002,7 @@ CFLAGS= -xtarget=ultra -xarch=v9

5.2. Settings + "id2623974" id="id2623974">5.2. Settings for creation of binary packages

@@ -3001,10 +3027,10 @@ CFLAGS= -xtarget=ultra -xarch=v9

If you want to get a full set of precompiled binary packages, this section describes how to get them. Beware that the bulk build will remove all currently installed - packages from your system! Having a FTP server configured - either on the machine doing the bulk builds or on a - nearby NFS server can help to make the packages available - to everyone. See ftpd(8) for more @@ -3033,7 +3059,7 @@ CFLAGS= -xtarget=ultra -xarch=v9

-

You may want to set things in You may want to set variables in /etc/mk.conf. Look at pkgsrc/mk/defaults/mk.conf for details of the default settings. You will want to @@ -3058,8 +3084,8 @@ _ACCEPTABLE= yes

-

5.3.1.2. 5.3.1.2. build.conf

@@ -3071,11 +3097,11 @@ _ACCEPTABLE= yes it, following the comments in that file. This is the config file that determines where log files are generated after the build, where to mail the build - report to, where your pkgsrc tree is located and - which user to su(8) to to do a + "refentrytitle">su(8) to do a cvs update.

@@ -3084,8 +3110,8 @@ _ACCEPTABLE= yes
-

5.3.1.3. 5.3.1.3. pre-build.local

@@ -3095,7 +3121,7 @@ _ACCEPTABLE= yes perform certain site specific tasks at the end of the pre-build stage. If the file pre-build.local exists in - /usr/pkgsrc/mk/bulk it + /usr/pkgsrc/mk/bulk, it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to @@ -3103,7 +3129,7 @@ _ACCEPTABLE= yes
 # echo "I do not have enough disk space to build this pig." \
-    > pkgsrc/games/crafty-book-enormous/$BROKENF
+    > pkgsrc/misc/openoffice/$BROKENF
 

to prevent the system from trying to build a @@ -3116,8 +3142,8 @@ _ACCEPTABLE= yes

-

5.3.2. Other environmental +

5.3.2. Other environmental considerations

@@ -3158,8 +3184,8 @@ fi
-

5.3.3. Operation

+

5.3.3. Operation

@@ -3205,8 +3231,8 @@ fi
-

5.3.4. What it does

+

5.3.4. What it does

@@ -3264,8 +3290,8 @@ fi
-

5.3.5. Disk space +

5.3.5. Disk space requirements

@@ -3307,8 +3333,8 @@ fi
-

5.3.6. Setting up a sandbox +

5.3.6. Setting up a sandbox for chroot'ed builds

@@ -3316,8 +3342,8 @@ fi

If you don't want all the packages nuked from a machine (rendering it useless for anything but pkg - compiling), there is the possibility of doing the pkg - bulk build inside a chroot environment.

+ compiling), there is the possibility of doing the + package bulk build inside a chroot environment.

The first step is to set up a chroot sandbox, e.g. /usr/sandbox. This can be @@ -3405,7 +3431,7 @@ fi # ln -s ../disk1/cvs . # ln -s cvs/src-1.6 src +"userinput">ln -s cvs/src-2.0 src

@@ -3497,8 +3523,8 @@ fi
-

5.3.7. Building a partial +

5.3.7. Building a partial set of packages

@@ -3570,7 +3596,7 @@ fi (highly recommended!), remember to set SIGN_AS=username@NetBSD.org in your mk/bulk/build.conf. This - will prompt you for your gpg password to sign the files + will prompt you for your GPG password to sign the files before uploading everything.

Then, make sure that you have -

Please use appropviate values for "pkgsrc-200xQ4", +

Please use appropviate values for "pkgsrc-200xQy", "NetBSD-a.b.c" and "arch" here. If your login on ftp.NetBSD.org is different from CVS_USER, write your login directly @@ -3609,7 +3635,7 @@ nbftp% /pub/pkgsrc.

Before uploading the binary pkgs, ssh authentication - needs to be setup next. This example shows how to setup + needs to be set up. This example shows how to setup temporary keys for the root account inside the sandbox (assuming that no keys should be present there usually):

@@ -3681,7 +3707,7 @@ nbftp% chmod 755 .

5.4. Creating a + "id2625274" id="id2625274">5.4. Creating a multiple CD-ROM packages collection

@@ -3704,8 +3730,8 @@ nbftp% chmod 755 .
-

5.4.1. Example of +

5.4.1. Example of cdpack

@@ -3778,51 +3804,51 @@ nbftp% chmod 755 .

Table of Contents

-
6.1. Are +
6.1. Are there any mailing lists for pkg-related discussion?
-
6.2. +
6.2. Where's the pkgviews documentation?
6.3. Utilities for package management (pkgtools)
-
6.4. How +
6.4. How to use pkgsrc as non-root
-
6.5. How +
6.5. How to resume transfers when fetching distfiles?
-
6.6. How +
6.6. How can I install/use XFree86 from pkgsrc?
-
6.7. How +
6.7. How can I install/use X.org from pkgsrc?
-
6.8. How +
6.8. How to fetch files from behind a firewall
-
6.9. How +
6.9. How do I tell make fetch to do passive FTP?
-
6.10. How +
6.10. How to fetch all distfiles at once
-
6.11. What +
6.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?
-
6.12. What +
6.12. What does “Could not find bsd.own.mk” mean?
-
6.13. +
6.13. Using 'sudo' with pkgsrc
6.14. @@ -3844,7 +3870,7 @@ nbftp% chmod 755 .

6.1. Are there + "id2625481" id="id2625481">6.1. Are there any mailing lists for pkg-related discussion?

@@ -3903,7 +3929,7 @@ nbftp% chmod 755 .

6.2. Where's + "id2625616" id="id2625616">6.2. Where's the pkgviews documentation?

@@ -4158,7 +4184,7 @@ nbftp% chmod 755 .

6.4. How to use + "id2625937" id="id2625937">6.4. How to use pkgsrc as non-root

@@ -4176,7 +4202,7 @@ nbftp% chmod 755 .

6.5. How to + "id2625948" id="id2625948">6.5. How to resume transfers when fetching distfiles?

@@ -4215,7 +4241,7 @@ nbftp% chmod 755 .

6.6. How can I + "id2625991" id="id2625991">6.6. How can I install/use XFree86 from pkgsrc?

@@ -4238,7 +4264,7 @@ nbftp% chmod 755 .

6.7. How can I + "id2626019" id="id2626019">6.7. How can I install/use X.org from pkgsrc?

@@ -4261,7 +4287,7 @@ nbftp% chmod 755 .

6.8. How to + "id2626046" id="id2626046">6.8. How to fetch files from behind a firewall

@@ -4286,7 +4312,7 @@ http_proxy=http://orpheus.amdahl.com:80/

6.9. How do I + "id2626060" id="id2626060">6.9. How do I tell make fetch to do passive FTP?

@@ -4320,7 +4346,7 @@ ${LOCALBASE}/bin/ftp

6.10. How to + "id2626112" id="id2626112">6.10. How to fetch all distfiles at once

@@ -4339,7 +4365,7 @@ ${LOCALBASE}/bin/ftp "command">make fetch-list
in /usr/pkgsrc or one of it's subdirectories, carry the resulting list to your machine - at work/school and use it there If you don't have a + at work/school and use it there. If you don't have a NetBSD-compatible ftp(1) (like lukemftp) at work, don't forget to set FETCH_CMD to something that fetches a URL:

@@ -4389,7 +4415,7 @@ ${LOCALBASE}/bin/ftp

6.11. What does + "id2626251" id="id2626251">6.11. What does “Don't know how to make /usr/share/tmac/tmac.andoc” mean?

@@ -4403,9 +4429,9 @@ ${LOCALBASE}/bin/ftp the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates that you don't have installed the - “text” set on your - machine (nroff, ...). It is recommended to do that to - format manpages.

+ “text” set (nroff, + ...) from the NetBSD base distribution on your machine. + It is recommended to do that to format manpages.

In the case of the

6.12. What does + "id2626290" id="id2626290">6.12. What does “Could not find bsd.own.mk” mean?

@@ -4450,7 +4476,7 @@ ${LOCALBASE}/bin/ftp

6.13. Using + "id2626347" id="id2626347">6.13. Using 'sudo' with pkgsrc

@@ -4468,8 +4494,8 @@ ${LOCALBASE}/bin/ftp following into your /etc/mk.conf:

-        .if exists(/usr/pkg/bin/sudo)
-        SU_CMD=/usr/pkg/bin/sudo /bin/sh -c
+        .if exists(${LOCALBASE}/bin/sudo)
+        SU_CMD=${LOCALBASE}/bin/sudo /bin/sh -c
         .endif
     
 
@@ -4666,36 +4692,15 @@ CONF_FILES= ${EGDIR}/Muttrc ${PKG_SYSCONFDIR}/Muttrc
-

Use of the audit-packages package is strongly - recommended!

- -

The following message is displayed as part of the - audit-packages installation procedure:

-
-===========================================================================
-$NetBSD: faq.xml,v 1.5 2005/02/24 14:24:32 jschauma Exp $
-
-You may wish to have the vulnerabilities file downloaded daily so that
-it remains current.  This may be done by adding an appropriate entry
-to the root users crontab(5) entry.  For example the entry
-
-# download vulnerabilities file
-0 3 * * * ${PREFIX}/sbin/download-vulnerability-list >/dev/null 2>&1
-
-will update the vulnerability list every day at 3AM. You may wish to do
-this more often than once a day.
-
-In addition, you may wish to run the package audit from the daily
-security script.  This may be accomplished by adding the following
-lines to /etc/security.local
-
-if [ -x ${PREFIX}/sbin/audit-packages ]; then
-          ${PREFIX}/sbin/audit-packages
-fi
-
-===========================================================================
-    
-
+

Use of the security/audit-packages package is + strongly recommended! After “audit-packages” is installed, please + read the package's message, which you can get by running + pkg_info -D + audit-package.

@@ -4732,17 +4737,17 @@ fi
7.3. patches/*
-
7.4. +
7.4. Other mandatory files
7.5. Optional files
-
7.6. +
7.6. work*
-
7.7. +
7.7. files/*
@@ -4752,10 +4757,10 @@ fi
-
8.1. RCS +
8.1. RCS ID
-
8.2. +
8.2. Semi-automatic PLIST generation
@@ -4766,14 +4771,14 @@ fi
8.4. Variable substitution in PLIST
-
8.5. +
8.5. Manpage-compression
-
8.6. +
8.6. Changing PLIST source with PLIST_SRC
-
8.7. +
8.7. Platform specific and differing PLISTs
@@ -4788,21 +4793,21 @@ fi
-
9.1. +
9.1. Converting packages to use buildlink3
-
9.2. +
9.2. Writing buildlink3.mk files
9.2.1. Anatomy of a buildlink3.mk + "#id2628941">9.2.1. Anatomy of a buildlink3.mk file
9.2.2. Updating 9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk @@ -4810,18 +4815,18 @@ fi
-
9.3. +
9.3. Writing builtin.mk files
9.3.1. Anatomy of a 9.3.1. Anatomy of a builtin.mk file
9.3.2. Global preferences for native + "#id2629837">9.3.2. Global preferences for native or pkgsrc software
@@ -4833,10 +4838,10 @@ fi
-
10.1. +
10.1. Global default options
-
10.2. +
10.2. Converting packages to use bsd.options.mk
@@ -4850,7 +4855,7 @@ fi
11.1. Program location
-
11.2. +
11.2. Main targets
-
12.1. +
12.1. General operation
12.1.1. How to pull in variables + "#id2632073">12.1.1. How to pull in variables from /etc/mk.conf
12.1.2. Restricted + "#id2632156">12.1.2. Restricted packages
12.1.4. Handling conflicts with + "#id2632672">12.1.4. Handling conflicts with other packages
12.1.5. Packages that cannot or + "#id2632790">12.1.5. Packages that cannot or should not be built
12.1.6. Packages which should not be + "#id2632816">12.1.6. Packages which should not be deleted, once installed
12.1.8. How to handle compiler + "#id2632907">12.1.8. How to handle compiler bugs
12.1.9. How to handle incrementing + "#id2632930">12.1.9. How to handle incrementing versions when fixing an existing package
12.1.10. Portability of + "#id2632979">12.1.10. Portability of packages
-
12.2. +
12.2. Possible downloading issues
12.2.1. Packages whose distfiles + "#id2633006">12.2.1. Packages whose distfiles aren't available for plain downloading
12.2.2. How to handle modified + "#id2633069">12.2.2. How to handle modified distfiles with the 'old' name
-
12.3. +
12.3. Configuration gotchas
@@ -4938,65 +4943,65 @@ fi libtool
12.3.2. Using libtool on GNU + "#id2633438">12.3.2. Using libtool on GNU packages that already support libtool
12.3.3. GNU + "#id2633588">12.3.3. GNU Autoconf/Automake
-
12.4. +
12.4. Building considerations
12.4.1. CPP defines
+ "#id2633704">12.4.1. CPP defines
-
12.5. +
12.5. Package specific actions
12.5.1. Package configuration + "#id2633805">12.5.1. Package configuration files
12.5.2. User + "#id2633908">12.5.2. User interaction
12.5.3. Handling + "#id2633953">12.5.3. Handling licenses
12.5.4. Creating an account from a + "#id2634036">12.5.4. Creating an account from a package
12.5.5. Installing score + "#id2634166">12.5.5. Installing score files
12.5.6. Packages providing login + "#id2634210">12.5.6. Packages providing login shells
12.5.7. Packages containing perl + "#id2634267">12.5.7. Packages containing perl scripts
12.5.8. Packages with hardcoded + "#id2634422">12.5.8. Packages with hardcoded paths to other interpreters
12.5.9. Packages installing perl + "#id2634443">12.5.9. Packages installing perl modules
12.5.11. Packages installing GConf2 + "#id2634663">12.5.11. Packages installing GConf2 data files
12.5.12. Packages installing + "#id2634763">12.5.12. Packages installing scrollkeeper data files
12.5.13. Packages installing X11 + "#id2634814">12.5.13. Packages installing X11 fonts
12.5.14. Packages installing GTK2 + "#id2634861">12.5.14. Packages installing GTK2 modules
12.5.15. Packages installing SGML or + "#id2634931">12.5.15. Packages installing SGML or XML data
12.5.16. Packages installing + "#id2635051">12.5.16. Packages installing extensions to the MIME database
12.5.17. Packages using + "#id2635190">12.5.17. Packages using intltool
12.5.18. Packages installing startup + "#id2635204">12.5.18. Packages installing startup scripts
-
12.6. +
12.6. Feedback to the author
@@ -5050,17 +5055,17 @@ fi
-
14.1. +
14.1. Submitting your packages
-
14.2. +
14.2. Committing: Importing a package into CVS
-
14.3. +
14.3. Updating a package to a newer version
-
14.4. +
14.4. Moving a package in pkgsrc
@@ -5093,17 +5098,17 @@ fi
7.3. patches/*
-
7.4. Other +
7.4. Other mandatory files
7.5. Optional files
-
7.6. +
7.6. work*
-
7.7. +
7.7. files/*
@@ -5126,30 +5131,74 @@ fi

Building, installation and creation of a binary package are all controlled by the package's Makefile.

+ "filename">Makefile
. The Makefile describes various things about + a package, for example from where to get it, how to + configure, build, and install it.

-

There is a Makefile for - each package. This file includes the standard - bsd.pkg.mk file (referenced - as ../../mk/bsd.pkg.mk), - which sets all the definitions and actions necessary for - the package to compile and install itself. The mandatory - variables are the DISTNAME - which specifies the base name of the distribution file to - be downloaded from the site on the Internet, MASTER_SITES which specifies that site, - CATEGORIES which denotes the - categories into which the package falls, PKGNAME which is the name of the - package, the MAINTAINER's - name, and the COMMENT - variable, which should contain a one-line description of - the package (the package name should not appear, it will - be added automatically). The maintainer variable is there - so that anyone who quibbles with the (always completely - correct) decisions taken by the guy who maintains the - package can complain vigorously, or send chocolate as a - sign of appreciation.

+

A package Makefile + contains several sections that describe the package.

+ +

In the first section there are the following + variables, which should appear exactly in the order given + here.

+ +
+
    +
  • +

    DISTNAME is the + basename of the distribution file to be downloaded + from the package's website.

    +
  • + +
  • +

    PKGNAME is the name + of the package, as used by pkgsrc. You only need to + provide it if it differs from DISTNAME. Usually it + is the directory name together with the version + number.

    +
  • + +
  • +

    CATEGORIES is a + list of categories which the package fits in. You + can choose any of the top-level directories of + pkgsrc for it.

    +
  • + +
  • +

    MASTER_SITES is a + list of URLs where the distribution files can be + downloaded. Each URL must end with a slash.

    +
  • +
+
+ +

The second section contains the following + variables.

+ +
+
    +
  • +

    MAINTAINER is the + mail address of the package's maintainer, which is + the person you can contact when the package does + not work.

    +
  • + +
  • +

    HOMEPAGE is a URL + where users can find more information about the + package.

    +
  • + +
  • +

    COMMENT is a + one-line comment about the purpose of the + package.

    +
  • +
+

The MASTER_SITES may be set to one of the predefined sites:

@@ -5438,7 +5487,7 @@ converters games mbone print x11

7.4. Other + "id2627420" id="id2627420">7.4. Other mandatory files

@@ -5562,8 +5611,8 @@ MESSAGE_SUBST+= SOMEVAR="somevalue"

7.6. 7.6. work*

@@ -5623,8 +5672,8 @@ WRKSRC= ${WRKDIR}/${DISTNAME}/unix

7.7. 7.7. files/*

@@ -5656,10 +5705,10 @@ WRKSRC= ${WRKDIR}/${DISTNAME}/unix

Table of Contents

-
8.1. RCS +
8.1. RCS ID
-
8.2. +
8.2. Semi-automatic PLIST generation
@@ -5670,14 +5719,14 @@ WRKSRC= ${WRKDIR}/${DISTNAME}/unix
8.4. Variable substitution in PLIST
-
8.5. +
8.5. Manpage-compression
-
8.6. +
8.6. Changing PLIST source with PLIST_SRC
-
8.7. +
8.7. Platform specific and differing PLISTs
8.8. @@ -5703,7 +5752,7 @@ WRKSRC= ${WRKDIR}/${DISTNAME}/unix

8.1. RCS + "id2627825" id="id2627825">8.1. RCS ID

@@ -5721,8 +5770,8 @@ WRKSRC= ${WRKDIR}/${DISTNAME}/unix

8.2. Semi-automatic + "id2627840" id= + "id2627840">8.2. Semi-automatic PLIST generation

@@ -5916,8 +5965,8 @@ PLIST_SUBST+= SOMEVAR="somevalue"

8.5. Manpage-compression

+ "id2628229" id= + "id2628229">8.5. Manpage-compression
@@ -5941,7 +5990,7 @@ PLIST_SUBST+= SOMEVAR="somevalue"

8.6. Changing + "id2628270" id="id2628270">8.6. Changing PLIST source with PLIST_SRC

@@ -5961,7 +6010,7 @@ PLIST_SUBST+= SOMEVAR="somevalue"

8.7. Platform + "id2628288" id="id2628288">8.7. Platform specific and differing PLISTs

@@ -6106,19 +6155,19 @@ PLIST_SUBST+= SOMEVAR="somevalue"

Table of Contents

-
9.1. +
9.1. Converting packages to use buildlink3
-
9.2. +
9.2. Writing buildlink3.mk files
-
9.2.1. +
9.2.1. Anatomy of a buildlink3.mk file
-
9.2.2. +
9.2.2. Updating BUILDLINK_DEPENDS.pkg in @@ -6127,17 +6176,17 @@ PLIST_SUBST+= SOMEVAR="somevalue"
-
9.3. +
9.3. Writing builtin.mk files
-
9.3.1. +
9.3.1. Anatomy of a builtin.mk file
-
9.3.2. +
9.3.2. Global preferences for native or pkgsrc software
@@ -6188,7 +6237,7 @@ PLIST_SUBST+= SOMEVAR="somevalue"

9.1. Converting + "id2628486" id="id2628486">9.1. Converting packages to use buildlink3

@@ -6333,7 +6382,7 @@ DEPENDS+= foo>=1.1.0:../../category/foo

9.2. Writing + "id2628872" id="id2628872">9.2. Writing buildlink3.mk files

@@ -6373,8 +6422,8 @@ DEPENDS+= foo>=1.1.0:../../category/foo
-

9.2.1. Anatomy of a buildlink3.mk +

9.2.1. Anatomy of a buildlink3.mk file

@@ -6604,8 +6653,8 @@ BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}
-

9.2.2. Updating 9.2.2. Updating BUILDLINK_DEPENDS.pkg in buildlink3.mk @@ -6674,7 +6723,7 @@ BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}

9.3. Writing + "id2629461" id="id2629461">9.3. Writing builtin.mk files

@@ -6726,8 +6775,8 @@ BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}
-

9.3.1. Anatomy of a +

9.3.1. Anatomy of a builtin.mk file

@@ -6852,8 +6901,8 @@ CHECK_BUILTIN.foo?= no
-

9.3.2. Global preferences +

9.3.2. Global preferences for native or pkgsrc software

@@ -6911,10 +6960,10 @@ CHECK_BUILTIN.foo?= no

Table of Contents

-
10.1. +
10.1. Global default options
-
10.2. +
10.2. Converting packages to use bsd.options.mk
@@ -6934,7 +6983,7 @@ CHECK_BUILTIN.foo?= no

10.1. Global + "id2629910" id="id2629910">10.1. Global default options

@@ -6952,8 +7001,8 @@ CHECK_BUILTIN.foo?= no

10.2. Converting packages to + "id2629925" id= + "id2629925">10.2. Converting packages to use bsd.options.mk

@@ -6961,7 +7010,7 @@ CHECK_BUILTIN.foo?= no

The following example shows how bsd.options.mk should be use in a + "filename">bsd.options.mk should be used in a package Makefile, or in a file, e.g. options.mk, that is included by the main package 11.1. Program location -

11.2. Main +
11.2. Main targets

11.2. Main + "id2630533" id="id2630533">11.2. Main targets

@@ -8079,17 +8128,17 @@ make build

Table of Contents

-
12.1. +
12.1. General operation
12.1.1. How to pull in variables from + "#id2632073">12.1.1. How to pull in variables from /etc/mk.conf
12.1.2. Restricted + "#id2632156">12.1.2. Restricted packages
12.1.4. Handling conflicts with other + "#id2632672">12.1.4. Handling conflicts with other packages
12.1.5. Packages that cannot or should + "#id2632790">12.1.5. Packages that cannot or should not be built
12.1.6. Packages which should not be + "#id2632816">12.1.6. Packages which should not be deleted, once installed
12.1.8. How to handle compiler + "#id2632907">12.1.8. How to handle compiler bugs
12.1.9. How to handle incrementing + "#id2632930">12.1.9. How to handle incrementing versions when fixing an existing package
12.1.10. Portability of + "#id2632979">12.1.10. Portability of packages
-
12.2. +
12.2. Possible downloading issues
12.2.1. Packages whose distfiles + "#id2633006">12.2.1. Packages whose distfiles aren't available for plain downloading
12.2.2. How to handle modified + "#id2633069">12.2.2. How to handle modified distfiles with the 'old' name
-
12.3. +
12.3. Configuration gotchas
@@ -8153,64 +8202,64 @@ make build libtool
12.3.2. Using libtool on GNU packages + "#id2633438">12.3.2. Using libtool on GNU packages that already support libtool
12.3.3. GNU + "#id2633588">12.3.3. GNU Autoconf/Automake

-
12.4. +
12.4. Building considerations
12.4.1. CPP defines
+ "#id2633704">12.4.1. CPP defines
-
12.5. +
12.5. Package specific actions
12.5.1. Package configuration + "#id2633805">12.5.1. Package configuration files
12.5.2. User + "#id2633908">12.5.2. User interaction
12.5.3. Handling + "#id2633953">12.5.3. Handling licenses
12.5.4. Creating an account from a + "#id2634036">12.5.4. Creating an account from a package
12.5.5. Installing score + "#id2634166">12.5.5. Installing score files
12.5.6. Packages providing login + "#id2634210">12.5.6. Packages providing login shells
12.5.7. Packages containing perl + "#id2634267">12.5.7. Packages containing perl scripts
12.5.8. Packages with hardcoded paths + "#id2634422">12.5.8. Packages with hardcoded paths to other interpreters
12.5.9. Packages installing perl + "#id2634443">12.5.9. Packages installing perl modules
12.5.11. Packages installing GConf2 + "#id2634663">12.5.11. Packages installing GConf2 data files
12.5.12. Packages installing + "#id2634763">12.5.12. Packages installing scrollkeeper data files
12.5.13. Packages installing X11 + "#id2634814">12.5.13. Packages installing X11 fonts
12.5.14. Packages installing GTK2 + "#id2634861">12.5.14. Packages installing GTK2 modules
12.5.15. Packages installing SGML or + "#id2634931">12.5.15. Packages installing SGML or XML data
12.5.16. Packages installing + "#id2635051">12.5.16. Packages installing extensions to the MIME database
12.5.17. Packages using + "#id2635190">12.5.17. Packages using intltool
12.5.18. Packages installing startup + "#id2635204">12.5.18. Packages installing startup scripts
-
12.6. +
12.6. Feedback to the author
@@ -8261,7 +8310,7 @@ make build

12.1. General + "id2632070" id="id2632070">12.1. General operation

@@ -8271,8 +8320,8 @@ make build
-

12.1.1. How to pull in +

12.1.1. How to pull in variables from /etc/mk.conf

@@ -8332,8 +8381,8 @@ CFLAGS+= -your -flags
-

12.1.2. Restricted +

12.1.2. Restricted packages

@@ -8636,8 +8685,8 @@ pre-clean:
-

12.1.4. Handling conflicts +

12.1.4. Handling conflicts with other packages

@@ -8684,8 +8733,8 @@ CONFLICTS= Xaw3d-[0-9]*
-

12.1.5. Packages that cannot +

12.1.5. Packages that cannot or should not be built

@@ -8716,8 +8765,8 @@ CONFLICTS= Xaw3d-[0-9]*
-

12.1.6. Packages which +

12.1.6. Packages which should not be deleted, once installed

@@ -8780,8 +8829,8 @@ CONFLICTS= Xaw3d-[0-9]*
-

12.1.8. How to handle +

12.1.8. How to handle compiler bugs

@@ -8806,8 +8855,8 @@ CONFLICTS= Xaw3d-[0-9]*
-

12.1.9. How to handle +

12.1.9. How to handle incrementing versions when fixing an existing package

@@ -8847,8 +8896,8 @@ DISTNAME= foo-17.43
-

12.1.10. Portability of +

12.1.10. Portability of packages

@@ -8864,8 +8913,8 @@ DISTNAME= foo-17.43
-

12.1.10.1. ${INSTALL}, +

12.1.10.1. ${INSTALL}, ${INSTALL_DATA_DIR}, ...

@@ -8890,7 +8939,7 @@ ${INSTALL_DATA_DIR} ${PREFIX}/dir2

12.2. Possible + "id2633003" id="id2633003">12.2. Possible downloading issues

@@ -8900,8 +8949,8 @@ ${INSTALL_DATA_DIR} ${PREFIX}/dir2
-

12.2.1. Packages whose +

12.2.1. Packages whose distfiles aren't available for plain downloading

@@ -8962,8 +9011,8 @@ ${INSTALL_DATA_DIR} ${PREFIX}/dir2
-

12.2.2. How to handle +

12.2.2. How to handle modified distfiles with the 'old' name

@@ -8992,8 +9041,8 @@ ${INSTALL_DATA_DIR} ${PREFIX}/dir2

12.3. Configuration + "id2633081" id= + "id2633081">12.3. Configuration gotchas

@@ -9197,14 +9246,9 @@ ${LIBTOOL} --mode=install ${BSD_INSTALL_DATA} ${SOMELIB:.a=.la} ${PREFIX}/lib
  • In your PLIST, - include all of the .a, .la, and .so, .so.CURRENT and .so.CURRENT.REVISION files - (this is a change from the previous - behaviour).

    + include only the .la file (this is a change from + previous behaviour).

  • @@ -9214,8 +9258,8 @@ ${LIBTOOL} --mode=install ${BSD_INSTALL_DATA} ${SOMELIB:.a=.la} ${PREFIX}/lib
    -

    12.3.2. Using libtool on GNU +

    12.3.2. Using libtool on GNU packages that already support libtool

    @@ -9293,8 +9337,8 @@ ${LIBTOOL} --mode=install ${BSD_INSTALL_DATA} ${SOMELIB:.a=.la} ${PREFIX}/lib
    -

    12.3.3. GNU +

    12.3.3. GNU Autoconf/Automake

    @@ -9360,7 +9404,7 @@ pre-configure:

    12.4. Building + "id2633701" id="id2633701">12.4. Building considerations

    @@ -9370,8 +9414,8 @@ pre-configure:
    -

    12.4.1. CPP defines

    +

    12.4.1. CPP defines

    @@ -9410,7 +9454,7 @@ pre-configure:

    12.5. Package + "id2633802" id="id2633802">12.5. Package specific actions

    @@ -9420,8 +9464,8 @@ pre-configure:
    -

    12.5.1. Package +

    12.5.1. Package configuration files

    @@ -9493,8 +9537,8 @@ pre-configure:
    -

    12.5.2. User +

    12.5.2. User interaction

    @@ -9543,8 +9587,8 @@ INTERACTIVE_STAGE= configure install
    -

    12.5.3. Handling +

    12.5.3. Handling licenses

    @@ -9618,8 +9662,8 @@ ACCEPTABLE_LICENSES+=graphviz-license
    -

    12.5.4. Creating an account +

    12.5.4. Creating an account from a package

    @@ -9673,8 +9717,8 @@ user:group[:[userid][:[description][:[home][:shell]]]]
    -

    12.5.5. Installing score +

    12.5.5. Installing score files

    @@ -9711,8 +9755,8 @@ user:group[:[userid][:[description][:[home][:shell]]]]
    -

    12.5.6. Packages providing +

    12.5.6. Packages providing login shells

    @@ -9747,8 +9791,8 @@ user:group[:[userid][:[description][:[home][:shell]]]]
    -

    12.5.7. Packages containing +

    12.5.7. Packages containing perl scripts

    @@ -9766,8 +9810,8 @@ user:group[:[userid][:[description][:[home][:shell]]]]
    -

    12.5.8. Packages with +

    12.5.8. Packages with hardcoded paths to other interpreters

    @@ -9793,8 +9837,8 @@ user:group[:[userid][:[description][:[home][:shell]]]]
    -

    12.5.9. Packages installing +

    12.5.9. Packages installing perl modules

    @@ -9933,8 +9977,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.11. Packages installing +

    12.5.11. Packages installing GConf2 data files

    @@ -10008,8 +10052,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.12. Packages installing +

    12.5.12. Packages installing scrollkeeper data files

    @@ -10053,8 +10097,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.13. Packages installing +

    12.5.13. Packages installing X11 fonts

    @@ -10091,8 +10135,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.14. Packages installing +

    12.5.14. Packages installing GTK2 modules

    @@ -10158,8 +10202,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.15. Packages installing +

    12.5.15. Packages installing SGML or XML data

    @@ -10220,8 +10264,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.16. Packages installing +

    12.5.16. Packages installing extensions to the MIME database

    @@ -10279,8 +10323,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.17. Packages using +

    12.5.17. Packages using intltool

    @@ -10303,8 +10347,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    12.5.18. Packages installing +

    12.5.18. Packages installing startup scripts

    @@ -10327,7 +10371,7 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    12.6. Feedback + "id2635225" id="id2635225">12.6. Feedback to the author

    @@ -10563,17 +10607,17 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    Table of Contents

    -
    14.1. +
    14.1. Submitting your packages
    -
    14.2. +
    14.2. Committing: Importing a package into CVS
    -
    14.3. +
    14.3. Updating a package to a newer version
    -
    14.4. +
    14.4. Moving a package in pkgsrc
    @@ -10583,8 +10627,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    14.1. Submitting your + "id2635824" id= + "id2635824">14.1. Submitting your packages

    @@ -10650,8 +10694,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    14.2. Committing: Importing a + "id2635875" id= + "id2635875">14.2. Committing: Importing a package into CVS

    @@ -10707,7 +10751,7 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    14.3. Updating + "id2635938" id="id2635938">14.3. Updating a package to a newer version

    @@ -10758,7 +10802,7 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    14.4. Moving a + "id2635957" id="id2635957">14.4. Moving a package in pkgsrc

    @@ -10859,27 +10903,27 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    Table of Contents

    -
    A.1. +
    A.1. files
    -
    A.1.1. +
    A.1.1. Makefile
    -
    A.1.2. +
    A.1.2. DESCR
    -
    A.1.3. +
    A.1.3. PLIST
    -
    A.1.4. +
    A.1.4. Checking a package with pkglint
    -
    A.2. Steps +
    A.2. Steps for building, installing, packaging
    @@ -10897,7 +10941,7 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist

    A.1. files

    + "id2636183" id="id2636183">A.1. files
    @@ -10906,8 +10950,8 @@ PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/Pg/.packlist
    -

    A.1.1. Makefile

    +

    A.1.1. Makefile

    @@ -10934,8 +10978,8 @@ INFO_FILES= bison.info
    -

    A.1.2. DESCR

    +

    A.1.2. DESCR

    @@ -10951,8 +10995,8 @@ of the NetBSD source tree is beyond me.
    -

    A.1.3. PLIST

    +

    A.1.3. PLIST

    @@ -10969,8 +11013,8 @@ share/bison.hairy
    -

    A.1.4. Checking a package with +

    A.1.4. Checking a package with pkglint

    @@ -11008,7 +11052,7 @@ looks fine.

    A.2. Steps for + "id2636257" id="id2636257">A.2. Steps for building, installing, packaging

    @@ -11426,10 +11470,10 @@ Registering depends:.

    Table of Contents

    -
    D.1. +
    D.1. Targets
    -
    D.2. +
    D.2. Procedure
    @@ -11442,7 +11486,7 @@ Registering depends:.

    D.1. Targets

    + "id2637176" id="id2637176">D.1. Targets
    @@ -11455,9 +11499,7 @@ Registering depends:.
    • pkgsrc/doc/pkgsrc.txt, which - replaces pkgsrc/Packages.txt

      + "filename">pkgsrc/doc/pkgsrc.txt

    • @@ -11495,8 +11537,8 @@ Registering depends:.

      D.2. Procedure

      + "id2637378" id= + "id2637378">D.2. Procedure
    diff --git a/doc/pkgsrc.txt b/doc/pkgsrc.txt index 46d78b21c38..9b6a0476258 100644 --- a/doc/pkgsrc.txt +++ b/doc/pkgsrc.txt @@ -14,7 +14,7 @@ The pkgsrc Developers Copyright (C) 1994-2004 The NetBSD Foundation, Inc -$NetBSD: pkgsrc.xml,v 1.3 2004/10/22 00:24:48 hubertf Exp $ +$NetBSD: pkgsrc.xml,v 1.4 2005/05/07 22:28:47 wiz Exp $ Abstract @@ -946,7 +946,7 @@ consult your CDROMs documentation for the exact location. 4.1.2. How to use binary packages -If you have the files on a CDROM or downloaded them to your hard disk, youcan +If you have the files on a CDROM or downloaded them to your hard disk, you can install them with the following command (be sure tosu to root first): # pkg_add /path/to/package.tgz @@ -963,6 +963,20 @@ and by running uname -rp. Also note that any prerequisite packages needed to run the package in question will be installed, too, assuming they are present where you install from. +To save some typing, you can set the PKG_PATH environment variable to a +semicolon separated list of paths (including remote URLs); trailing slashes are +not allowed. + +Additionally to the All directory there exists a vulnerable directory to which +binary packages with known vulnerabilities are moved, since removing them could +cause missing dependencies. To use these packages, add the vulnerable directory +to your PKG_PATH. However, you should run security/audit-packages regularly, +and especially after installing new packages, and verify that the +vulnerabilities are acceptable for your configuration. An example PKG_PATH +would be: ftp://ftp.NetBSD.org/pub/NetBSD/packages///All;ftp:// +ftp.NetBSD.org/pub/NetBSD/packages///vulnerable Please note that +semicolon (';') is a shell meta-character, so you'll probably have to quote it. + After you've installed packages, be sure to have /usr/pkg/bin in your PATH so you can actually start the just installed program. @@ -1164,7 +1178,7 @@ See Section 11.3, "Other helpful targets". If you want to get a full set of precompiled binary packages, this section describes how to get them. Beware that the bulk build will remove all currently -installed packages from your system! Having a FTP server configured either on +installed packages from your system! Having an FTP server configured either on the machine doing the bulk builds or on a nearby NFS server can help to make the packages available to everyone. See ftpd(8) for more information. If you use a remote NFS server's storage, be sure to not actually compile on NFS @@ -1174,8 +1188,8 @@ storage, as this slows things down a lot. 5.3.1.1. /etc/mk.conf -You may want to set things in /etc/mk.conf. Look at pkgsrc/mk/defaults/mk.conf -for details of the default settings. You will want to ensure that +You may want to set variables in /etc/mk.conf. Look at pkgsrc/mk/defaults/ +mk.conf for details of the default settings. You will want to ensure that ACCEPTABLE_LICENSES meet your local policy. As used in this example, _ACCEPTABLE=yes accepts all licenses. @@ -1193,17 +1207,18 @@ _ACCEPTABLE= yes In pkgsrc/mk/bulk, copy build.conf-example to build.conf and edit it, following the comments in that file. This is the config file that determines where log files are generated after the build, where to mail the build report to, where -your pkgsrc tree is located and which user to su(8) to to do a cvs update. +your pkgsrc tree is located and the user to which user to su(8) to do a cvs +update. 5.3.1.3. pre-build.local It is possible to configure the bulk build to perform certain site specific tasks at the end of the pre-build stage. If the file pre-build.local exists in -/usr/pkgsrc/mk/bulk it will be executed (as a sh(1) script) at the end of the +/usr/pkgsrc/mk/bulk, it will be executed (as a sh(1) script) at the end of the usual pre-build stage. An example use of pre-build.local is to have the line: # echo "I do not have enough disk space to build this pig." \ - > pkgsrc/games/crafty-book-enormous/$BROKENF + > pkgsrc/misc/openoffice/$BROKENF to prevent the system from trying to build a particular package which requires nearly 3 GB of disk space. @@ -1296,8 +1311,8 @@ wasted by recompiling. 5.3.6. Setting up a sandbox for chroot'ed builds If you don't want all the packages nuked from a machine (rendering it useless -for anything but pkg compiling), there is the possibility of doing the pkg bulk -build inside a chroot environment. +for anything but pkg compiling), there is the possibility of doing the package +bulk build inside a chroot environment. The first step is to set up a chroot sandbox, e.g. /usr/sandbox. This can be done by using null mounts, or manually. @@ -1335,7 +1350,7 @@ src/etc, be sure the following items are present and properly configured: 6. /usr/src (system sources, for sysutils/aperture, net/ppp-mppe): # ln -s ../disk1/cvs . - # ln -s cvs/src-1.6 src + # ln -s cvs/src-2.0 src 7. Create /var/db/pkg (not part of default install): @@ -1407,7 +1422,7 @@ build.conf. If you would like to PGP sign the checksum files (highly recommended!), remember to set SIGN_AS=username@NetBSD.org in your mk/bulk/build.conf. This -will prompt you for your gpg password to sign the files before uploading +will prompt you for your GPG password to sign the files before uploading everything. Then, make sure that you have RSYNC_DST set properly in your mk/bulk/build.conf @@ -1415,7 +1430,7 @@ file, i.e. adjust it to something like one of the following: RSYNC_DST=$CVS_USER@ftp.NetBSD.org:/pub/NetBSD/packages/pkgsrc-200xQy/NetBSD-a.b.c/arch/upload -Please use appropviate values for "pkgsrc-200xQ4", "NetBSD-a.b.c" and "arch" +Please use appropviate values for "pkgsrc-200xQy", "NetBSD-a.b.c" and "arch" here. If your login on ftp.NetBSD.org is different from CVS_USER, write your login directly into the variable, e.g. my local account is "feyrer", but for my login "hubertf", I use: @@ -1431,8 +1446,8 @@ Please note that /pub/NetBSD/packages is only appropriate for packages for the NetBSD operating system. Binary packages for other operating systems should go into /pub/pkgsrc. -Before uploading the binary pkgs, ssh authentication needs to be setup next. -This example shows how to setup temporary keys for the root account inside the +Before uploading the binary pkgs, ssh authentication needs to be set up. This +example shows how to setup temporary keys for the root account inside the sandbox (assuming that no keys should be present there usually): # chroot /usr/sandbox @@ -1709,7 +1724,7 @@ on ftp.NetBSD.org, but downloading the entire directory may not be appropriate. The answer here is to do a make fetch-list in /usr/pkgsrc or one of it's subdirectories, carry the resulting list to your machine at work/school and use -it there If you don't have a NetBSD-compatible ftp(1) (like lukemftp) at work, +it there. If you don't have a NetBSD-compatible ftp(1) (like lukemftp) at work, don't forget to set FETCH_CMD to something that fetches a URL: At home: @@ -1740,8 +1755,8 @@ everything by running: When compiling the pkgtools/pkg_install package, you get the error from make that it doesn't know how to make /usr/share/tmac/tmac.andoc? This indicates -that you don't have installed the "text" set on your machine (nroff, ...). It -is recommended to do that to format manpages. +that you don't have installed the "text" set (nroff, ...) from the NetBSD base +distribution on your machine. It is recommended to do that to format manpages. In the case of the pkgtools/pkg_install package, you can get away with setting NOMAN=YES either in the environment or in /etc/mk.conf. @@ -1766,8 +1781,8 @@ does password caching over a limited time. To use it, install sudo (either as binary package or from security/sudo) and then put the following into your /etc /mk.conf: - .if exists(/usr/pkg/bin/sudo) - SU_CMD=/usr/pkg/bin/sudo /bin/sh -c + .if exists(${LOCALBASE}/bin/sudo) + SU_CMD=${LOCALBASE}/bin/sudo /bin/sh -c .endif @@ -1855,34 +1870,9 @@ packages installed on a system can take place. To do this, install the security be shown by output to stdout, including a description of the type of vulnerability, and a URL containing more information. -Use of the audit-packages package is strongly recommended! - -The following message is displayed as part of the audit-packages installation -procedure: - -=========================================================================== -$NetBSD: faq.xml,v 1.5 2005/02/24 14:24:32 jschauma Exp $ - -You may wish to have the vulnerabilities file downloaded daily so that -it remains current. This may be done by adding an appropriate entry -to the root users crontab(5) entry. For example the entry - -# download vulnerabilities file -0 3 * * * ${PREFIX}/sbin/download-vulnerability-list >/dev/null 2>&1 - -will update the vulnerability list every day at 3AM. You may wish to do -this more often than once a day. - -In addition, you may wish to run the package audit from the daily -security script. This may be accomplished by adding the following -lines to /etc/security.local - -if [ -x ${PREFIX}/sbin/audit-packages ]; then - ${PREFIX}/sbin/audit-packages -fi - -=========================================================================== - +Use of the security/audit-packages package is strongly recommended! After +"audit-packages" is installed, please read the package's message, which you can +get by running pkg_info -D audit-package. The pkgsrc developer's guide @@ -2013,21 +2003,35 @@ are described in the following sections. 7.1. Makefile Building, installation and creation of a binary package are all controlled by -the package's Makefile. - -There is a Makefile for each package. This file includes the standard -bsd.pkg.mk file (referenced as ../../mk/bsd.pkg.mk), which sets all the -definitions and actions necessary for the package to compile and install -itself. The mandatory variables are the DISTNAME which specifies the base name -of the distribution file to be downloaded from the site on the Internet, -MASTER_SITES which specifies that site, CATEGORIES which denotes the categories -into which the package falls, PKGNAME which is the name of the package, the -MAINTAINER's name, and the COMMENT variable, which should contain a one-line -description of the package (the package name should not appear, it will be -added automatically). The maintainer variable is there so that anyone who -quibbles with the (always completely correct) decisions taken by the guy who -maintains the package can complain vigorously, or send chocolate as a sign of -appreciation. +the package's Makefile. The Makefile describes various things about a package, +for example from where to get it, how to configure, build, and install it. + +A package Makefile contains several sections that describe the package. + +In the first section there are the following variables, which should appear +exactly in the order given here. + + * DISTNAME is the basename of the distribution file to be downloaded from the + package's website. + + * PKGNAME is the name of the package, as used by pkgsrc. You only need to + provide it if it differs from DISTNAME. Usually it is the directory name + together with the version number. + + * CATEGORIES is a list of categories which the package fits in. You can + choose any of the top-level directories of pkgsrc for it. + + * MASTER_SITES is a list of URLs where the distribution files can be + downloaded. Each URL must end with a slash. + +The second section contains the following variables. + + * MAINTAINER is the mail address of the package's maintainer, which is the + person you can contact when the package does not work. + + * HOMEPAGE is a URL where users can find more information about the package. + + * COMMENT is a one-line comment about the purpose of the package. The MASTER_SITES may be set to one of the predefined sites: @@ -2796,7 +2800,7 @@ supported. This variable should be set in /etc/mk.conf. 10.2. Converting packages to use bsd.options.mk -The following example shows how bsd.options.mk should be use in a package +The following example shows how bsd.options.mk should be used in a package Makefile, or in a file, e.g. options.mk, that is included by the main package Makefile. @@ -3797,8 +3801,8 @@ Here's how to use libtool in a pkg in seven simple steps: This will install the static .a, shared library, any needed symlinks, and run ldconfig(8). - 7. In your PLIST, include all of the .a, .la, and .so, .so.CURRENT and - .so.CURRENT.REVISION files (this is a change from the previous behaviour). + 7. In your PLIST, include only the .la file (this is a change from previous + behaviour). 12.3.2. Using libtool on GNU packages that already support libtool @@ -4885,7 +4889,7 @@ D.1. Targets The pkgsrc guide's source code is stored in pkgsrc/doc/guide/files, and several files are created from it: - * pkgsrc/doc/pkgsrc.txt, which replaces pkgsrc/Packages.txt + * pkgsrc/doc/pkgsrc.txt * pkgsrc/doc/pkgsrc.html -- cgit v1.2.3