pkginfo - package characteristics file
pkginfo is an ASCII file that describes the characteristics
of the package along with information that helps control the
flow of installation. It is created by the software package
Each entry in the pkginfo file is a line that establishes
the value of a parameter in the following form:
There is no required order in which the parameters must be
specified within the file. The PKG, NAME, ARCH, VERSION and
CATEGORY parameters are mandatory. Other parameters are
The following paramaters are mandatory:
ARCH A comma-separated list of alphanumeric tokens that
indicate the architecture associated with the package.
The pkgmk(1) tool may be used to create or modify this
value when actually building the package. The maximum
length of a token is 16 characters and it cannot
include a comma.
Solaris's installation software meaningfully uses only
one architecture token of the form:
where platform_group is intended only for Solaris ins-
tallation packages. Third party application software
should restrict itself to ARCH values from the follow-
ing Solaris-supported instruction set architectures
(uname -p): sparc, i386, and ppc. Examples of Solaris'
platform groups (uname -m) are sun4u and sun4m for the
SPARC instruction set and i86pc for the i386 instruc-
tion set. See uname(1) and isalist(1) for more details.
A comma-separated list of categories under which a
package may be displayed. A package must at least
belong to the system or application category.
Categories are case-insensitive and may contain only
alphanumerics. Each category is limited in length to
NAME Text that specifies the package name (maximum length
of 256 ASCII characters). Use the NAME parameter as
the foundation for describing the functionality and
purpose of the package; spell out any acronyms and
avoid internal product/project code names. The DESC
parameter can then be used to expand the descriptive
information. Use the NAME parameter to state as
specifically as possible the use of the package, why a
user would need to load it, and so on.
PKG Abbreviation for the package being installed. All
characters in the abbreviation must be alphanumeric.
You can also use the - and + characters in the abbre-
viation. The first character cannot be numeric, a +
or a -.
The abbreviation is limited to a maximum length of 32
characters. install, new, and all are reserved abbre-
viations. It is customary to make the first four
letters unique to your company, such as the company's
Text that specifies the current version associated
with the software package. The maximum length is 256
ASCII characters and the first character cannot be a
left parenthesis. The pkgmk(1) tool may be used to
create or modify this value when actually building the
package. Current Solaris software practice is to
assign this parameter monotonically increasing Dewey
decimal values of the form:
where all the revision fields are integers. The ver-
sioning fields can be extended to an arbitrary string
of numbers in Dewey-decimal format, if necessary.
The following parameters are optional:
The pathname to a default directory where "relocat-
able" files may be installed. If blank, the package is
not relocatable and any files that have relative path-
names will not be installed. An administrator can
override the default directory.
A space-separated list of classes defined for a pack-
age. The order of the list determines the order in
which the classes are installed. Classes listed first
will be installed first (on a media by media basis).
This parameter may be modified by the request script.
DESC Text that describes the package (maximum length of 256
ASCII characters). This parameter value is used to
provide the installer with a description of what the
package contains and should build on the description
provided in the NAME parameter. Try to make the two
parameters work together so that a pkginfo -l will
provide a fairly comprehensive textual description of
EMAIL An electronic address where further information is
available or bugs may be reported (maximum length of
256 ASCII characters).
Phone number and/or mailing address where further
information may be received or bugs may be reported
(maximum length of 256 ASCII characters).
Indicates that the package should only be installed
interactively when set to any non-null value.
A list of allowable run states for package installa-
tion (for example, "S s 1" allows run states of S, s
or 1). The Solaris operating environment supports the
run levels s, S, 0, 1, 2, 3, 5, and 6. Applicable run
levels for this parameter are s, S, 1, 2, and 3. See
init(1M) for details.
The maximum number of package instances that should be
allowed on a machine at the same time. By default,
only one instance of a package is allowed. This param-
eter must be set in order to have multiple instances
of a package. In order to support multiple instances
of packages (for example, packages that differ in
their ARCH or VERSION parameter value), the value of
this parameter must be high enough to allow for all
instances of a given package, including multiple ver-
sions coexisting on a software server.
ORDER A list of classes defining the order in which they
should be put on the medium. Used by pkgmk(1) in
creating the package. Classes not defined in this
field are placed on the medium using the standard ord-
Production stamp used to mark the pkgmap(4) file on
the output volumes. Provides a means for distinguish-
ing between production copies of a version if more
than one is in use at a time. If PSTAMP is not
defined, the default is used. The default consists of
the UNIX system machine name followed by the string
"YYYYMMDDHHMMSS" (year, month, date, hour, minutes,
A list of allowable run states for package removal
(for example, "S s 1" allows run states of S, s or 1).
The Solaris operating environment supports the run
levels s, S, 0, 1, 2, 3, 5, and 6. Applicable run lev-
els for this parameter are s, S, 1, 2, and 3 See
init(1M) for details.
Solaris-only optional parameter that indicates a
software package contains 64-bit objects if it is set
to sparcv9. If this parameter is not set, the default
ISA (instruction set architecture) is set to the value
of the ARCH parameter.
Solaris-only optional parameter used to indicate a
software package containing localization files for a
given product or application. The parameter value is a
comma-separated list of locales supported by a pack-
age. It is only used for packages containing localiza-
tion files, typically the message catalogues. The
allowable values for this string field are those found
in the table of Standard Locale Names located in the
International Language Environments Guide.
<language>::= the set of names from ISO 639
<territory>::= the set of territories specified
in ISO 3166
<codeset>::= is a string corresponding to the coded
Since a value of C specifies the traditional UNIX sys-
tem behavior (American English, en_US), packages
belonging to the C locale are viewed as non-localized
packages, and thus must not have SUNW_LOC and
SUNW_PKGLIST included in their pkginfo file. See also
the SUNW_LOC parameter in packagetoc(4) and
setlocale(3C) for more information. This keyword is not
recognized by the add-on software utility Software
A value set by pkgadd that contains the location of
the installing package. This value is provided to any
install time package procedure scripts that may need
to know where the installing package is located. This
parameter should never be set manually from within a
Solaris-only optional parameter used to associate a
localization package to the package(s) from which it
is derived. It is required whenever the SUNW_LOC
parameter is defined. This parameter value is an
comma-separated list of package abbreviations of the
where version (if specified) should match the version
string in the base package specified (see VERSION
parameter in this manual page). When in use,
SUNW_PKGLIST helps determine the order of package ins-
tallation. The packages listed in the parameter will be
installed before the localization package in question
is installed. When left blank, SUNW_PKGLIST="", the
package is assumed to be required for the locale to
function correctly. See the SUNW_PKGLIST parameter in
packagetoc(4) for more information. This keyword is not
recognized by the add-on software utility Software
Solaris-only parameter for Sun internal use only.
Required for packages part of the The Solaris operat-
ing environment releases which install into the /,
/usr, /usr/kvm, and /usr/openwin file systems. The The
Solaris operating environment installation software
must know which packages are part of which file system
to properly install a server/client configuration. The
currently allowable values for this parameter are
root, usr, kvm, and ow. If no SUNW_PKGTYPE parameter
is present, the package is assumed to be of BASEDIR=
/opt. SUNW_PKGTYPE is optional only for packages which
install into the /opt name space as is the case for
the majority of Solaris add-on software. See the
SUNW_PKGTYPE parameter in packagetoc(4) for further
Solaris-only parameter indicating of version of the
Solaris operating environment package interface.
where <unw_package_version> has the form x.y[.z] and x,
y, and z are integers. For packages built for this
release and previous releases, use SUNW_PKGVERS="1.0".
Solaris-only parameter indicating the name of the pro-
duct this package is a part of or comprises (maximum
length of 256 ASCII characters). A few examples of
currently used SUNW_PRODNAME values are: "SunOS",
"OpenWindows", and "Common Desktop Environment".
Solaris-only parameter indicating the version or
release of the product described in SUNW_PRODNAME
(maximum length of 256 ASCII characters). For example,
where SUNW_PRODNAME="SunOS", and the Solaris 2.x Beta
release, this string could be "5.x BETA", while for
the Solaris 2.x FCS release, the string would be
"5.x". For Solaris 8, the string is "5.8". If the
SUNW_PRODNAME parameter is NULL, so should be the
If set, this parameter is passed as an argument to the
ulimit(1) command (see limit(1)), which establishes
the maximum size of a file during installation.
Used to identify the vendor that holds the software
copyright (maximum length of 256 ASCII characters).
The vendor stock number, if any, that identifies this
product (maximum length of 256 ASCII characters).
Example 1: A Sample pkginfo File
Here is a sample pkginfo file:
NAME="Extended System Utilities"
VENDOR="Sun Microsystems, Inc."
HOTLINE="Please contact your local service provider"
See attributes(5) for descriptions of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWcsu |
| Interface Stability | See entries below |
| PKG value | Evolving |
| VERSION value | Evolving |
| NAME value | Evolving |
| DESC value | Evolving |
| ARCH value | Evolving |
| CATEGORY value | Evolving |
| BASEDIR value | Evolving |
| ISTATES value | Evolving |
| RSTATES value | Evolving |
| MAXINST value | Evolving |
| SUNW_PRODNAME | Evolving |
| SUNW_PRODVERS | Evolving |
| SUNW_PKGVERS | Evolving |
| SUNW_PKGTYPE | Unstable |
| SUNW_LOC | Evolving |
| SUNW_PKGLIST | Evolving |
| SUNW_PKG_DIR | Evolving |
isalist(1), limit(1), pkgmk(1), uname(1), init(1M),
setlocale(3C), clustertoc(4), order(4), packagetoc(4),
Application Packaging Developer's Guide
International Language Environments Guide
Developers may define their own installation parameters by
adding a definition to this file. A developer-defined param-
eter must begin with a capital letter.
Trailing white space after any parameter value is ignored.
For example, VENDOR="Sun Microsystems, Inc." is the same as
VENDOR="Sun Microsystems, Inc. ".
Man(1) output converted with