|
File Formats | packagetoc(4) |
| 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 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.
|
| 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
|
|
|
|
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)
|
| |