MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu
User Commands                                            pkgsend(1)


NAME
     pkgsend - image packaging system publication client

SYNOPSIS
     /usr/bin/pkgsend [options] command [cmdoptions] [operands]

     /usr/bin/pkgsend create-repository
     /usr/bin/pkgsend open [-en] pkgfmri
     /usr/bin/pkgsend add action arguments
     /usr/bin/pkgsend import [-T pattern] bundlefile ...
     /usr/bin/pkgsend include [-d basedir] manifest ...
     /usr/bin/pkgsend close [-A]

DESCRIPTION
     pkgsend allows the publication of new packages and new package
     versions to an image packaging repository.  Each publication is
     structured as a transaction; multiple invocations of pkgsend
     through a transaction allow the addition of resources and the
     transaction submission.

OPTIONS
     The following options are supported:

     -s repouri    A URI representing the location of the target
                    repository.  The default value is
                    http:/localhost:10000/.

     --help or -?
          Displays a usage message.

SUBCOMANDS
     The following subcommands are supported:

     create-repository
          Creates a new repository at the provided location if it does
          not already exist.  Only supported for 'file:/' repository
          locations at this time.

     open [-en] pkgfmri
          Begin a transaction on the package and version specified by
          pkgfmri.

          By default, or if the -e option is given, a successfully
          opened transaction's ID will be published in a form suitable
          for use with eval(1), to set the PKGTRANSID environment
          variable.  This form can be convenient for delivering a
          package transaction from a shell script, for example.  If the
          -n option is given, the transaction ID is displayed as a
          string; this may be more useful in situations where shell
          scripting is not an available option.

     add action arguments
          Add a resource associated with an action to the current
          transaction.  Requires transaction context.  See ACTIONS
          below.

     import [-T pattern] bundlefile ...
          Add each given bundlefile (such as a SVR4 package) into the
          current transaction.  If the basename of files in the bundle
          match the optional pattern(s), the timestamp of the file is
          added to the action for that file.  The pattern uses shell
          matching rules:

               *      matches everything
               ?      matches any single character
               [seq]  matches any character in seq
               [!seq] matches any character not in seq

     include [-d basedir] manifest ...
          Add resources associated with the multiple actions present in
          each manifest file to the current transaction.  Each line in the
          file should be the string representation of an action.  In
          particular, the "add" token as described above should not be
          present, nor should there be open and close tokens representing
          transaction boundaries.  For those actions with datastreams, the
          path to the file containing the data should be the second word on
          the line.

          If the user specifies the -d option, basedir is prepended to
          the search path when locating files in the manifest.

     close [-A]
          Close current transaction.  With -A, abandon the current
          transaction.

ENVIRONMENT VARIABLES
     The following environment variables are supported:

     PKGTRANSID               Identifier to use for this transaction.
                                If undefined (and no alternative means
                                of specifying a transaction is given),
                                subcommands requiring transaction
                                context will fail.

ACTIONS
     Each resource within a package must be associated with an action.
     See pkg(5) for a complete list of actions.

     If an action has an associated payload, the path to the payload
     must be the first argument after the action name.  (At present, the
     file and license actions have payloads.)  All other attributes are
     specified as a list of name-value pairs, and may be given in any
     order.  An action must always have a key attribute; however, some
     actions may require additional attributes to work correctly.
     Arbitrary attributes, beyond those defined for a given action, may
     be included in the action.  Such attributes are expected to follow
     defined conventions such that they carry appropriate meaning or
     avoid collision with attributes from other action providers;
     specific attributes that cause additional operations, known as
     "actuators", are documented in pkg(5).

     depend type= fmri= [ propertylist ]
          Make this package version dependent on the give package FMRI.
          Valid dependtypes are require and optional.

     dir mode= owner= group= path= \
       [ propertylist ]
          Deliver a directory with the listed attributes into the
          transaction.

     driver name= perms= class= alias= \
       [ propertylist ]
          Deliver driver configuration with the listed attributes into
          the transaction.  Multiple alias entries may be given to
          record multiple device aliases.

     file srcpath mode= owner= group= \
        path= [ propertylist ]
          Deliver a file with the listed attributes into the
          transaction.

     group groupname= gid= [ propertylist ]
          Deliver a group definition as defined in group(4).  If the
          group ID, or gid, is omitted, the first free group under 100
          will be assigned at installation time.  See pkg(5) for
          additional details, and relation to the user action below.

     hardlink path= target= [ propertylist ]
          Deliver a link with given path, pointing to the given
          target.

     legacy category= desc= hotline= \
       name= pkg= vendor= version= \
       [ propertylist ]
          Deliver sufficient metadata, as given by the various fields,
          to represent a System V package with name given by legacypkg.

     license srcpath license= \
       [ propertylist ]
          Deliver, into the image packaging metadata, the license file
          at srcpath, labelled by the given license value.

     link path= target= [ propertylist ]
          Deliver a symbolic link with given path, pointing to the given
          target.

     set name= value= [ propertylist ]
          Deliver a "package property" defined by the given name and
          value.

     user username= password= uid= \
       group= gcos-field= home-dir= \
       login-shell= group-list= \
       ftpuser={truefalse} lastchng= min= \
       max= warn= inactive= \
       expire= flag= [ propertylist ]
          Deliver a user account, as defined in passwd(4), shadow(4),
          group(4), and ftpusers(4).  If the user ID, or uid, is
          omitted, then the first free user ID under 100 will be
          assigned at installation time.  The primary group, specified
          by group, must exist prior to the action's execution; this
          condition can be ensured by having a group action deliver the
          group definition in the same package as the user action, or by
          having a depend action that expresses a requirement on a
          package possessing a group action.  See pkg(5) for additional
          details.

EXAMPLES
     Example 1:  Create a trivial package.

     $ eval `pkgsend open example@1.0-1`
     $ pkgsend add file example mode=0555 owner=root group=bin \
         path=/usr/bin/example
     $ pkgsend close

     Example 2:  Create a new repository suitable for use with pkgsend
         or with a pkg(5) depot server.

     $ pkgsend -s file:/tmp/examplerepo create-repository

EXIT STATUS
     The following exit values are returned:

     0     Everything worked.

     1     Something bad happened.

     2     Invalid command line options were specified.

FILES

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:
     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Availability                                             
    

SEE ALSO
     eval(1), pkg.depotd(1M), ftpusers(4), group(4), passwd(4),
     shadow(4), attributes(5), pkg(5)

NOTES
     The image packaging system is an under-development feature.
     Command names, invocation, formats, and operations are all subject
     to change.  Development is hosted in the OpenSolaris community
     at

     http:/opensolaris.org/os/project/pkg/

     Other package bundle formats can be created.  Other forms of
     package publication, via the underlying Python API or via the web
     API, are also possible.
OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™