packagetoc(4) manual page
Table of Contents
packagetoc - package table of contents description file
The package table of contents file, .packagetoc, is an ASCII
file containing
all of the information necessary for installing a product release distributed
in package form. It centralizes and summarizes all of the relevant information
about each package in the product. This allows the install software to
quickly read one file to obtain all of the relevant information about each
package instead of having to examine each package at run time to obtain
this information. The .packagetoc file resides in the top-level directory
containing the product.
If a .packagetoc file exists for a product, there
must also be a .order file.
Each entry in the .packagetoc file is a line that
establishes the value of a parameter in the following form:
PARAM
=value
A line starting with a pound-sign, ‘‘#’’, is considered a comment and is ignored.
Parameters are grouped by package. The start of a package description is
defined by a line of the form:
PKG
=value
There is no order implied or assumed
for specifying the parameters for a package with the exception of the PKG
parameter, which must appear first. Only one occurrence of a parameter
is permitted per package.
The parameters recognized are described below.
Those marked with an asterisk are mandatory.
- PKG*
- The package identifier
(for example, SUNWaccu). The maximum length of the identifier is nine characters.
All the characters must be alphanumeric. The first character must be alphabetic.
install, new, and all are reserved identifiers.
- PKGDIR*
- The name of the
directory containing the package. This directory is relative to the directory
containing the product.
- NAME*
- The full name of the package.
- VENDOR
- The
name of the package’s vendor.
- VERSION
- The version of the package.
- PRODNAME
- The name of the product to which this package belongs.
- PRODVERS
- The version
of the product to which this package belongs.
- SUNW_PKGTYPE
- The package
type. Valid values are:
- root
- indicates that the package will be installed
in the / file system. The root packages are the only packages installed
during dataless client installations. The root packages are spooled during
a server installation to allow the later installation of diskless clients.
- usr
- indicates that the package will be installed in the /usr file system.
- kvm
- indicates that the package will be installed in the /usr/platform file
system.
- ow
- indicates a package that is part of the bundled OpenWindows product
release. If no SUNW_PKGTYPE
macro is present, the package is assumed to
be of type usr.
- ARCH*
- The architecture(s) supported by the package. This
macro is taken from the package’s pkginfo(4)
file and is subject to the
same length and formatting constraints.
- The install program
- currently assumes
that exactly one architecture token is specified for a package. For example,
ARCH=sparc.sun4c is acceptable, but ARCH=sparc.sun4c, sparc.sun4m is not.
- DESC
- A detailed textual description of the package.
- BASEDIR*
- The default installation
base directory of the package.
- SUNW_PDEPEND
- A dependency specification
for a prerequisite package. Each prerequisite dependency must appear as
a separate macro. See depend(4)
for more information on dependencies and
instance specifications.
- SUNW_IDEPEND
- A dependency specification for an
incompatible package. Each incompatible dependency should appear as a separate
macro. See depend(4)
for more information on dependencies and instance specifications.
- SUNW_RDEPEND
- A dependency specification for a reversed package dependency.
Each reverse dependency should appear as a separate macro. See depend(4)
for more information on dependencies and instance specifications.
- CATEGORY
- The category of the package.
- SUNW_LOC
- Indicates that this package contains
localizations for other packages. Such localization packages are treated
as special case packages. Each package which has a SUNW_LOC
macro must
have a corresponding SUNW_PKGLIST
macro. The value specified by this macro
should be a valid locale.
- SUNW_PKGLIST
- A comma separate list of package
identifiers. Currently this macro is used to indicate which packages are
localized by a localization package.
- ROOTSIZE*
- The space used by the package
in the / file system.
- USRSIZE*
- The space used by the package in the /usr
subtree of the file system.
- VARSIZE*
- The space used by the package in the /var subtree of the file
system.
- OPTSIZE*
- The space used by the package in the /opt subtree of the
file system.
- EXPORTSIZE*
- The space used by the package in the /export subtree
of the file system.
- USROWNSIZE*
- The space used by the package in the /usr/openwin
subtree of the file system.
- SPOOLED_SIZE*
- The space used by the spooled
version of this package. This is used during the setup of a server by the
initial system installation programs.
All sizes are specified in bytes.
Default disk partitions and file system sizes are derived from the values
provided: accuracy is important.
The following is an example package
entry in a .packagetoc file.
#ident "@(#)packagetoc.4 1.2 92/04/28"
PKG=SUNWaccr
PKGDIR=SUNWaccr
NAME=System Accounting, (Root)
VENDOR=Sun Microsystems, Inc.
VERSION=8.1
PRODNAME=SunOS
PRODVERS=5.0beta2
SUNW_PKGTYPE=root
ARCH=sparc
DESC=System Accounting, (Root)
BASEDIR=/
CATEGORY=system
ROOTSIZE= 11264
VARSIZE= 15360
OPTSIZE= 0
EXPORTSIZE= 0
USRSIZE= 0
USROWNSIZE= 0
cdtoc(4)
, clustertoc(4)
, depend(4)
, order(4)
, pkginfo(4)
, pkgmap(4)
The parameters NAME
, VENDOR
, VERSION
, PRODNAME
, PRODVERS
, SUNW_PKGTYPE
,
SUNW_LOC
, SUNW_PKGLIST
, ARCH
, DESC
, BASEDIR
, and CATEGORY
are assumed to
have been taken directly from the package’s pkginfo(4)
file. The length
and formatting restrictions placed on the values for these parameters are
identical to those for the corresponding entries in the pkginfo(4)
file.
The value specified for the parameter PKGDIR
should not exceed 255 characters.
The value specified for the parameters ROOTSIZE
, VARSIZE
, OPTSIZE
, EXPORTSIZE
,
USRSIZE
and USROWNSIZE
must be a single integer value. The values can be
derived from the package’s pkgmap file by counting all space consumed by
any files installed in the applicable file system. The space includes that
used for directory entries and any UFS overhead that exists because of
the way the files are represented (directory allocation scheme; direct,
indirect, double indirect blocks; fragments; etc.)
The following kinds of
entries in the pkgmap(4)
file should be included in the space derivation:
- f
- regular file
- c
- character special file
- b
- block special file
- p
- pipe
- l
- hard link
- s
- symbolic link
- x, d
- directory
- i
- packaging installation script
or information file (copyright, depend, postinstall, postremove)
Table of Contents