PKGINFO(4-SysV) RISC/os Reference Manual PKGINFO(4-SysV)
NAME
pkginfo - packaging information file format
DESCRIPTION
pkginfo files describe the configuration of software pack-
ages. They are used to drive both the packaging and instal-
lation tools as they operate on a package. Every software
package has an associated pkginfo file, $Pkg/pkginfo (where
$Pkg is the root of the packaging information tree for the
release being packaged or installed.)
Typically, they are read by a program, also named pkginfo,
which is used by both the packaging and installation scripts
to extract particular information about the software package
being operated upon. (See pkginfo(1M) for details.)
It is important for persons desiring to package MIPS
software to understand the syntax and semantics of pkginfo
files, as setting up the pkginfo file is among the first
steps in packaging software.
EXAMPLE PKGINFO FILE
Please look over the following example pkginfo file; it will
help you to understand the explanations given below:
#
# An example pkginfo file
#
package="riscos"
id="RISC/os binary with nfs"
version=2.1 timestamp=558806400
os
media=Q24 media=Q11h
subpackage=root
id="os binary with nfs basic root filesystem"
minirootonly
splitboms="v.root.*"
bom="74-00021-002.0"
media=Q24 media=Q11h
subpackage=usr
id="os binary with nfs basic user filesystem"
splitboms="v.usr.*"
bom="74-00021-002.1"
subpackage=pascal
id="pascal binary"
optional
version=1.21
splitboms="p.*"
Printed 1/15/91 Page 1
PKGINFO(4-SysV) RISC/os Reference Manual PKGINFO(4-SysV)
bom="74-00023-002"
GENERAL
pkginfo files are text files which consist of an ordered set
of attributes describing a software package, separated by
whitespace. Lines which contain the character # in column
one are comments, and are ignored by programs which read
pkginfo files.
Attributes may be either boolean or valued. Boolean attri-
butes are specified simply by naming them, for example:
optional
Attributes with values are specified with the syntax
attribute=value, for example:
version=1.21
values which include whitespace can be specified by sur-
rounding the value with double quotes, for example:
id="RISC/os binary with NFS"
Multiple attributes may be specified per line, but an attri-
bute may not be split up onto more than one line. It is a
good idea to indent and group attributes for readability.
A pkginfo file begins with a package attribute section which
describes the top-level package. This is followed by a set
of subpackage attribute sections, which define the subpack-
ages of which the top-level package is comprised. The sub-
package attribute sections may be interspersed with media
attributes, which control the grouping of subpackages onto
multiple tape volumes.
PACKAGE ATTRIBUTE SECTION
Consider the following excerpt from the example pkginfo
file:
package="riscos"
id="RISC/os binary with nfs"
version=2.1 timestamp=558806400
os
The package attribute indicates the start of the package
attribute section, and assigns a short name to the top-level
package. The id attribute assigns a longer identification
string to the package. The version attribute assigns a ver-
sion number to the package. This version number is, by
default, inherited by each subpackage in the package. The
Page 2 Printed 1/15/91
PKGINFO(4-SysV) RISC/os Reference Manual PKGINFO(4-SysV)
timestamp attribute assigns the release timestamp value for
the package. Release timestamps are the number of seconds
since the epoch, midnight December 31, 1969. The boolean
attribute os specifies that this is an operating system
release, which can be installed from scratch, including the
formatting of disk drive and initialization of new file sys-
tems.
SUBPACKAGE ATTRIBUTE SECTION
Consider the following excerpt from the example pkginfo
file:
subpackage=root
id="os binary with nfs basic root filesystem"
minirootonly
splitboms="v.root.*"
bom="74-00021-002.0"
The subpackage attribute begins the subpackage attribute
section and assigns a short name to the subpackage. The id
attribute assigns a longer identification string to the
package. The boolean attribute minirootonly specifies that
this subpackage may only be installed from the miniroot.
This is usually specified only for root filesystem subpack-
ages within operating system releases. The splitboms attri-
bute gives a filename specification indicating which split
bom files belong to the subpackage. It can contain Bourne
shell filename pattern matching (wildcard) characters. The
bom attribute gives the filename for the merged bom file for
the subpackage. Note that in the example above, the 74-
level part number for the subpackage is used as the bom
name. This is a conventional decision, and is not imposed by
the packaging/installation system tools.
Consider the following excerpt from the example pkginfo
file:
subpackage=pascal
id="pascal binary"
optional
version=1.21
splitboms="p.*"
bom="74-00023-002"
This example subpackage illustrates two additional possible
subpackage attributes. optional is a boolean attribute that
specifies that this subpackage is optional, that is, the
installer will be given the choice of whether to install
this subpackage at install time. In general, this attribute
should be specified for all but the root and usr filesystem
subpackages within operating system releases. It effects the
default answer to the ``install subpackage...?'' prompt in
Printed 1/15/91 Page 3
PKGINFO(4-SysV) RISC/os Reference Manual PKGINFO(4-SysV)
the ``select subpackages'' section of the installation pro-
cedure. The version attribute, if given for a subpackage,
overrides the version value set in the package attribute
section. This is useful for subpackages, such as the MIPS
compiler system, which maintain version numbers separately
from the rest of the subpackages in the top-level package.
(The compiler system may be considered to be both a stand-
alone package as well as a subpackage within a RISC/os
binary package.)
MEDIA ORGANIZATION
The media attribute is used to control the placement of sub-
packages within multiple volumes of tape. By placing a
media=type attribute before a subpackage, the packaging
tools will be told to start a new volume with the following
subpackage when packaging for media of type type.
Currently, the values of type supported are Q11h and Q24
(for QIC 11 w/ISI headers and QIC 24).
SEE ALSO
pkginfo(1M), pkginst(1M) in the System Administrator's
Reference Manual.
Page 4 Printed 1/15/91