Actions in IPS
IPS manages software in units of packages. Packaging a product aids in easy
distribution and installation of the software product.
A package is a collection of files, directories, links, drivers, and dependencies in
a defined format. This collection represents the installable objects of a package. In
IPS terminology, this collection is referred to as actions.
Actions are described in a package's manifest. Every action consists primarily of
its name and a key attribute. Together, these attributes refer to
a unique object and include a version history. Actions can have
other attributes. Some of these attributes are interpreted directly by the packaging system,
others are useful only to the system administrator or the end user.
Note - The attributes of a package are different from the attributes of an action.
See the Package Attributes and Tags section to learn about the supported tags and attributes for
a package.
Typically, only an action's key attribute is required, though some actions might work
properly only with a more complete set of attributes.
The following list provides an overview of the type of actions
and their standard attributes that are available with IPS. For additional details, see the
pkg(5) man page.
Note - pkg(5) refers to the image packaging system and is different from the pkg(1)
command, which is the retrieval client and is used to create, install, and
manage images on the system
Note - The following table shows a list of the actions and their key
attributes. For a complete list, refer to the pkg(5) man page.
Table 3-2 Actions and Key Attributes
Action |
Description and
Key Attributes |
Directory |
The directory action represents a directory as a file system object. path –
The filesystem path where the file is installed. |
File |
The file action represents an ordinary
file as a file system object. path – The file system path where the file
is installed. |
Link |
The link action represents a symbolic link. path – The file system path where the
symlink is installed. |
Hardlink |
The hardlink action represents a physical link. path – The file system path where
the link is installed. |
Driver |
The driver action represents a device driver. It does
not reference a payload, the driver files must be installed as
file actions. name – The name of the driver. This is usually, but not always,
the file name of the driver binary. |
Depend |
The depend action represents a
dependency between packages. A package might depend on another package to
work or to install. Dependencies are optional. No key attribute defined. |
License |
The license
action represents a license or other information associated with the package contents.
A package can deliver licenses or disclaimers to the package installer through
the use of the license action. The payload of the license action is
delivered into the image metadata directory associated with the package. license – The keyword identifying the
license type, for use in filter and query operations |
Legacy |
The legacy action represents
package data used by a legacy packaging system. The attributes associated with
this action are added to the legacy system's databases so that the tools
querying those databases might operate as if the legacy package were actually installed. pkg –
The abbreviation for the package being installed. The name of the package
in the package FMRI is the default value. |
Set |
The set action represents a package-level
attribute, such as the package description. No key attribute defined. |
Group |
The group action defines
a UNIX®
group as defined in group(4). No support is present
for group passwords. Groups defined with this action initially have no
user-list. Users can be added with the user action. No key attribute defined. |
User |
The
User action defines a UNIX user as defined in /etc/passwd, /etc/shadow, /etc/group and
/etc/ftpd/ftpusers files. Users defined with this attribute have entries added to the
appropriate files. No key attribute defined. |
Package Attributes and Tags
The attributes and tags of a package can be set with the
set action.
Packages carry information about themselves in the form of metadata, which is also
informally known as attributes and tags. Attributes refer to settings that apply to
an entire package. Tags are the settings that affect individual files within a
package. The package developer provides specific information about the package through the tags
and attributes.
The pkg attribute is the attribute that is common to all packages, regardless
of any particular OS platforms that a specific package might target.
The IPS packages can contain the following set of tags and
attributes.
Table 3-3 Package Attributes
Attribute |
Description |
Package Name : pkg.name |
Short, descriptive name of the package. |
Package Description : pkg.description |
A short paragraph
describing the package. |
Package URL: pkg.detailed_url |
Used to provide links to sites with further
information about the package. |
Table 3-4 Tags
Tag |
Description |
Debug Information: pkg.debug |
Used to specify if the package needs to
be installed in a debug configuration. |
ISA |
Distinguishes between different x86 platforms. |
The opensolaris attribute is the attribute that is common to all OpenSolaris packages.
Note - In the following table, except ISA attribute, all attributes have opensolaris appended to
them. For example, the attribute arc.url should be specified as opensolaris.arc_url.
Table 3-5 OpenSolaris Attributes
OpenSolaris Attribute |
Description |
arc_url |
One or
more URLs associated with the ARC case(s) associated with the component(s) delivered by
the package. |
maintainer |
A human readable string describing the entity that provides the package.
For an individual, this string is their name, or name and email address. |
ISA |
Distinguishes
between different x86 platforms. |
upstream |
A human—readable string describing the entity that creates the
software. For an individual, this string is expected to be the individual's
name, or name and email. |
upstream_url |
A URL associated with the entity that creates
the software delivered within the package. |
source_url |
A URL to the source code bundle, if
appropriate, for the package. |
repository_url |
A URL to the source code repository, if appropriate,
for the package. |
repository_changeset |
A changeset ID for the version of the source code
contained in opensolaris.repository_url attribute. |
gui.classification |
A list of labels classifying the package into the
categories shared among pkg(5)graphical clients. |