unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (SunOS-5.10)
Page:
Section:
Apropos / Subsearch:
optional field

pkginfo(4)                       File Formats                       pkginfo(4)



NAME
       pkginfo - package characteristics file

DESCRIPTION
       pkginfo  is  an  ASCII  file  that describes the characteristics of the
       package along with information that helps control the flow of installa-
       tion. It is created by the software package developer.

       Each  entry in the pkginfo file is a line that establishes the value of
       a parameter in the following form:

       PARAM="value"


       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 optional.

       pkginfo provides optional parameters and  an  environment  variable  in
       support  of  the  zones  (multiple  Solaris  environments) feature. See
       zones(5).

       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 can be
           used to create or modify this  value  when  actually  building  the
           package. The maximum length of a token is 16 characters and it can-
           not include a comma.

           Solaris's installation software meaningfully uses only  one  archi-
           tecture token of the form:


           <instruction_set_architecture>[.<platform_group>]

           where  platform_group  is  intended  only  for Solaris installation
           packages. Third party application software should  restrict  itself
           to ARCH values from the following Solaris-supported instruction set
           architectures  (uname  -p):  sparc,  i386,  and  ppc.  Examples  of
           Solaris'  platform  groups  (uname  -m)  are  sun4u  for  the SPARC
           instruction set  and  i86pc  for  the  i386  instruction  set.  See
           uname(1) and isalist(1) for more details.



       CATEGORY

           A  comma-separated  list of categories under which a package can be
           displayed. A package must at least belong to the system or applica-
           tion category. Categories are case-insensitive and can contain only
           alphanumerics. Each category is limited in length to 16 characters.



       NAME

           Text that specifies the package name (maximum length of  256  ASCII
           characters).  Use the NAME parameter as the foundation for describ-
           ing 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 abbreviation.   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 abbreviations. It  is  customary
           to  make the first four letters unique to your company, such as the
           company's stock symbol.



       VERSION

           Text that specifies the current version associated with  the  soft-
           ware  package.  The  maximum length is 256 ASCII characters and the
           first character cannot be a left parenthesis.   The  pkgmk(1)  tool
           can  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:


           <major_revision>.<minor_revision>[.<micro_revision>]

           where all the revision fields are integers. The  versioning  fields
           can  be extended to an arbitrary string of numbers in Dewey-decimal
           format, if necessary.



       The following parameters are optional:

       BASEDIR

           The pathname to a default directory where "relocatable"  files  can
           be  installed.  If  blank,  the  package is not relocatable and any
           files that have relative pathnames are not installed.  An  adminis-
           trator can override the default directory.



       CLASSES

           A  space-separated list of classes defined for a package. The order
           of  the  list  determines  the  order  in  which  the  classes  are
           installed.  Classes listed first are installed first (on a media by
           media basis).  This  parameter  can  be  modified  by  the  request
           script.



       DESC

           Text  that describes the package (maximum length of 256 ASCII char-
           acters). 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 provides a fairly
           comprehensive textual description of the package.



       EMAIL

           An electronic address where further  information  is  available  or
           bugs can be reported (maximum length of 256 ASCII characters).



       HOTLINE

           Phone  number  and/or mailing address where further information can
           be received or bugs can be reported (maximum length  of  256  ASCII
           characters).



       INTONLY

           Indicates  that  the package should only be installed interactively
           when set to any non-null value.



       ISTATES

           A list of allowable run states for package installation (for  exam-
           ple, "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.



       MAXINST

           The maximum number of package instances that should be allowed on a
           machine  at the same time. By default, only one instance of a pack-
           age is allowed. This parameter must be set in order to have  multi-
           ple  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 versions 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
           ordering procedures.



       PSTAMP

           Production stamp used to mark the pkgmap(4) file on the output vol-
           umes. Provides a means for distinguishing 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 sys-
           tem machine name followed by  the  string  "YYYYMMDDHHMMSS"  (year,
           month, date, hour, minutes, seconds).



       RSTATES

           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  envi-
           ronment  supports the run levels s, S, 0, 1, 2, 3, 5, and 6. Appli-
           cable run levels for this parameter are s,  S,  1,  2,  and  3  See
           init(1M) for details.



       SUNW_ISA

           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.



       SUNW_LOC

           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 package. It is only used for packages containing localization
           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.


           SUNW_LOC="<locale_name>,<locale_name>,..,<locale_name>"

           where


           <locale_name>::= <language>[_<territory>][.<codeset>]
           <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
           character set

           Since a value of C specifies the traditional UNIX  system  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 Manager.



       SUNW_PKG_DIR

           A value set by pkgadd that contains the location of the  installing
           package.  This value is provided to any install time package proce-
           dure scripts that need to know  where  the  installing  package  is
           located.  This parameter should never be set manually from within a
           pkginfo file.



       SUNW_PKG_ALLZONES

           Defines whether a package, when installed, must  be  installed  and
           must  be  identical  in  all  zones.  Assigned value can be true or
           false. The default value is false. The setting of SUNW_PKG_ALLZONES
           has the effects described below.

           If set to true, the following conditions are in effect:


             o  The package must be installed in the global zone.

             o  The  package  must be installed in any non-global zone that is
                created.

             o  The package must be identical in all zones.

             o  The package can be installed only by the global zone  adminis-
                trator.

             o  The  package cannot be installed by a non-global zone adminis-
                trator.

           If set to false, the following conditions are in effect:


             o  The package is not required to be installed in all zones.

             o  The package is not required to be identical across all zones.

             o  The package can be installed by the global zone  administrator
                or by a non-global zone administrator.

           Packages  that  must  be  identical  across all zones must set this
           variable to true. This would include packages that  deliver  compo-
           nents  that  are  part  of  the  core operating system, or that are
           dependent on interfaces exported by the core operating  system,  or
           that  deliver  device  drivers,  or  runtime  libraries that use or
           export operating system interfaces that are not  guaranteed  to  be
           stable across minor releases.

           Packages  that  deliver  components  that  are not part of the core
           operating system (such as application programs) that can be differ-
           ent between any two zones must set this variable to false.

           With respect to SUNW_PKG_ALLZONES, keep in mind the following:


             o  Use  of  pkgadd  in  the  global zone installs packages in all
                zones unless -G is  specified,  in  which  case  packages  are
                installed   in   the   global   zone   only.  The  setting  of
                SUNW_PKG_ALLZONES does not change this behavior. For  example,
                a package that has a setting of SUNW_PKG_ALLZONES=false is not
                installed in the global zone only.

             o  The SUNW_PKG_ALLZONES attribute  controls  whether  a  package
                must  be  installed  in all zones (and must be the same in all
                zones) when it is installed.

             o  Use of the -G  option  to  pkgadd  with  a  package  that  has
                SUNW_PKG_ALLZONES=true  is an error and causes installation of
                that package to fail.



       SUNW_PKG_HOLLOW

           Defines whether a package should be visible in any non-global  zone
           if that package is required to be installed and be identical in all
           zones (for example, a  package  that  has  SUNW_PKG_ALLZONES=true).
           Assigned  value  can  be true or false. The default value is false.
           The package  is  not  required  to  be  installed,  but  if  it  is
           installed, the setting of SUNW_PKG_HOLLOW has the effects described
           below.

           Packages that must be identical across  all  zones  must  set  this
           variable  to  true. This would include packages that deliver compo-
           nents that are part of the  core  operating  system,  or  that  are
           dependent  on  interfaces exported by the core operating system, or
           that deliver device drivers,  or  runtime  libraries  that  use  or
           export  operating  system  interfaces that are not guaranteed to be
           stable across minor releases. All  other  packages  must  set  this
           variable to false.

           If set to true, the following conditions are in effect:


             o  When installed in the global zone, all components of the pack-
                age are installed.

             o  Directories are created, files are installed, and class action
                and  other  scripts are run as appropriate when the package is
                installed.

             o  Directories and files are removed, and class action and  other
                scripts are run as appropriate when the package is removed.

             o  When installed in a non-global zone, the package is recognized
                as having been installed, but no components of the package are
                installed. No directories are created, no files are installed,
                and no class action or other install scripts are run when  the
                package is installed.

             o  When removed from a non-global zone, the package is recognized
                as not having been completely installed.  No  directories  are
                created,  or  files  are removed, and no class action or other
                install scripts are run when the package is removed.

             o  The package is recognized as being installed in all zones  for
                purposes of dependency checking by other packages that rely on
                this package being installed.

           If SUNW_PKG_ALLZONES is set to false, the value  of  this  variable
           has  no  meaning.  It  is  a  package  construction  error  to  set
           SUNW_PKG_ALLZONES to false, then set SUNW_PKG_HOLLOW to true.



       SUNW_PKG_THISZONE

           Defines whether a package must be installed  in  the  current  zone
           only.  Assigned  value  can  be true or false. The default value is
           false. The setting of SUNW_PKG_THISZONE has the  effects  described
           below.

           If set to true, the following conditions are in effect:


             o  The package is installed in the current zone only.

             o
                If  installed  in the global zone, the package is not added to
                any currently existing or yet-to-be-created non-global  zones.
                This  is  the  same behavior that would occur if the -G option
                were specified to pkgadd.

           If set to false, the following conditions are in effect:


             o  If pkgadd  is  run  in  a  non-global  zone,  the  package  is
                installed in the current zone only.

             o  If  pkgadd is run in the global zone, the package is installed
                in the global zone, and is also  installed  in  all  currently
                installed  non-global  zones. In addition, the package will be
                propagated to all future, newly installed non-global zones.



       SUNW_PKGLIST

           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 form:


           SUNW_PKGLIST="pkg1[:version],pkg2[:version],..."

           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
           installation. The packages listed in the  parameter  are  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 Manager.



       SUNW_PKGTYPE

           Solaris-only  parameter  for  Sun  internal  use only. Required for
           packages part of the The  Solaris  operating  environment  releases
           which  install  into  the  /, /usr, /usr/kvm, and /usr/openwin file
           systems. The The Solaris operating environment  installation  soft-
           ware  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 package-
           toc(4) for further information.



       SUNW_PKGVERS

           Solaris-only parameter indicating of version of the Solaris operat-
           ing environment package interface.


           SUNW_PKGVERS="<sunw_package_version>"

           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".



       SUNW_PRODNAME

           Solaris-only  parameter  indicating  the  name  of the product 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".



       SUNW_PRODVERS

           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 SUNW_PRODVERS parameter.



       ULIMIT

           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.



       VENDOR

           Used to identify the vendor that holds the software copyright (max-
           imum length of 256 ASCII characters).



       VSTOCK

           The vendor stock number, if any, that identifies this product (max-
           imum length of 256 ASCII characters).



ENVIRONMENT VARIABLES
       The following environment variable is available to package class action
       scripts and to preinstall, postinstall, and check installation scripts.

       SUNW_PKG_INSTALL_ZONENAME

           This  variable  is set by individual package class action scripts ,
           by pre- and post-installation scripts, and  by  check  installation
           scripts.

           If  this  variable  is  not  set,  the  system does not support the
           zones(5) feature. If the variable is set to global, the package  is
           being installed to or removed from the global zone. If the variable
           is not set to global, the package is being installed to or  removed
           from the non-global zone named ${SUNW_PKG_INSTALL_ZONENAME}.



EXAMPLES
       Example 1: A Sample pkginfo File

       Here is a sample pkginfo file:

       SUNW_PRODNAME="SunOS"
       SUNW_PRODVERS="5.5"
       SUNW_PKGTYPE="usr"
       SUNW_PKG_ALLZONES=false
       SUNW_PKG_HOLLOW=false
       PKG="SUNWesu"
       NAME="Extended System Utilities"
       VERSION="11.5.1"
       ARCH="sparc"
       VENDOR="Sun Microsystems, Inc."
       HOTLINE="Please contact your local service provider"
       EMAIL=""
       VSTOCK="0122c3f5566"
       CATEGORY="system"
       ISTATES="S 2"
       RSTATES="S 2"


ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:


       tab()     allbox;     cw(2.750000i)|    cw(2.750000i)    lw(2.750000i)|
       lw(2.750000i).   ATTRIBUTE  TYPEATTRIBUTE   VALUE   AvailabilitySUNWcsu
       Interface  StabilitySee entries below PKG valueEvolving VERSION valueE-
       volving NAME valueEvolving DESC valueEvolving ARCH valueEvolving  CATE-
       GORY  valueEvolving BASEDIR valueEvolving ISTATES valueEvolving RSTATES
       valueEvolving    MAXINST    valueEvolving     SUNW_PKG_ALLZONESEvolving
       SUNW_PKG_HOLLOWEvolving SUNW_PKG_THISZONEEvolving SUNW_PRODNAMEEvolving
       SUNW_PRODVERSEvolving     SUNW_PKGVERSEvolving     SUNW_PKGTYPEUnstable
       SUNW_LOCEvolving SUNW_PKGLISTEvolving SUNW_PKG_DIREvolving


SEE ALSO
       isalist(1),  limit(1),  pkgmk(1),  uname(1),  init(1M),  setlocale(3C),
       clustertoc(4),  order(4),  packagetoc(4),   pkgmap(4),   attributes(5),
       zones(5)

       Application Packaging Developer's Guide

       International Language Environments Guide

NOTES
       Developers  can  define  their  own installation parameters by adding a
       definition to this file. A developer-defined parameter 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  Microsys-
       tems, Inc. ".



SunOS 5.10                        3 Dec 2004                        pkginfo(4)