This appendix describes:
Details of package FMRI version strings
How incorporate dependencies, facet.version-lock.* facets, group dependencies, and action tags are used to define working package sets for the Oracle Solaris OS
Package Identifier: FMRI described the pkg.fmri attribute and the different parts of the version field, including how the version field can be used to support different models of software development. This section explains how the Oracle Solaris OS uses the version field, and provides insight into the reasons that a fine-grained versioning scheme can be useful. In your packages, you do not need to follow the same versioning scheme that the Oracle Solaris OS uses.
The meaning of each part of the version string in the following sample package FMRI is given below:
Component version. For components tightly bound to the operating system, the component version number is minor.update. Other components, such as FOSS components, have their own version numbers. In the following example, the version number of the web/server/apache-24 package is 2.4.25:
Branch version. Oracle Solaris packages show the following information in the branch version portion of the version string of a package FMRI:
Minor release number. The minor portion of major.minor that is output by the uname -r command.
Update release number. The update release number for this Oracle Solaris release.
SRU number. The Support Repository Update (SRU) number for this update release. SRUs are approximately monthly updates that fix bugs, fix security issues, or provide support for new hardware. The Oracle Support Repository is available only to systems under a support contract.
Order. This value is used internally.
Platform. This value is used internally.
Release or SRU build number. The build number of the SRU, or the respin number for the release.
Revision or nightly build number. The build number for the individual nightly builds.
If the package is an Interim Diagnostic or Relief (IDR) update, then the branch version of the package FMRI contains the following two additional fields. IDRs are package updates that help diagnose customer issues or provide temporary relief for a problem until a formal package update is issued. The following examples are for idr824, which has FMRI pkg://solaris/idr824@4,5.11:20131114T034951Z and contains packages such as pkg://firstname.lastname@example.org:
Name of the IDR.
Version of the IDR.
Time stamp. The time stamp is defined when the package is published.