Manpages

NAME

packagetoc − package table of contents description file

DESCRIPTION

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 separated 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.

SPOOLEDSIZE*

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.

EXAMPLES

Example 1: A sample .packagetoc file.

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

SEE ALSO

cdtoc(4), clustertoc(4), depend(4), order(4), pkginfo(4), pkgmap(4)

NOTES

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)