pkgtrans(1)




NAME

     pkgtrans - translate package format


SYNOPSIS

     pkgtrans [-inosg] [-k keystore] [-a alias] [-P passwd]  dev-
     ice1 device2 [pkginst...]


DESCRIPTION

     The pkgtrans utility translates an installable package  from
     one format to another. It translates:

        o  a file system format to a datastream

        o  a file system format to a signed datastream

        o  a datastream to a file system format

        o  one file system format to another file system format


OPTIONS

     The options and arguments for this command are:

     -i    Copies only the pkginfo(4) and pkgmap(4) files.

     -n    Creates a new instance of the package on the  destina-
           tion  device  if  any instance of this package already
           exists, up to the  number  specified  by  the  MAXINST
           variable in the pkginfo(4) file.

     -o    Overwrites the same instance on the  destination  dev-
           ice.  Package  instance  will  be  overwritten  if  it
           already exists.

     -s    Indicates that the package should be written  to  dev-
           ice2 as a datastream rather than as a file system. The
           default behavior is to write a file system  format  on
           devices that support both formats.

     -g    Sign resulting datastream.

     -k keystore
           Use keystore to retrieve private key used to  generate
           signature.  If it not specified, default locations are
           searched to find the specified private  key  specified
           by  -a.  If no alias is given, and multiple keys exist
           in the key store, pkgtrans will  abort.  See  KEYSTORE
           LOCATIONS  and  KEYSTORE  AND  CERTIFICATE  FORMATS in
           pkgadd(1M) for more information  on  search  locations
           and formats.

           When running as a user other than  root,  the  default
           base    directory   for   certificate   searching   is
           ~/.pkg/security, where ~ is the home directory of  the
           user invoking pkgtrans.

     -a alias
           Use   public   key   certificate    associated    with
           friendlyName alias, and the corresponding private key.
           See KEYSTORE LOCATIONS and  KEYSTORE  AND  CERTIFICATE
           FORMATS in pkgadd(1M) for more information.

     -P passwd
           Supply password used to decrypt the keystore. See PASS
           PHRASE ARGUMENTS in pkgadd(1M) for details on the syn-
           tax of the argument to this option.


OPERANDS

     device1
           Indicates the source device. The package  or  packages
           on  this  device will be translated and placed on dev-
           ice2. See DEVICE SPECIFIERS, below.

     device2
           Indicates the destination device. Translated  packages
           will  be placed on this device. See DEVICE SPECIFIERS,
           below.

     pkginst
           Specifies which package instance or instances on  dev-
           ice1  should  be translated. The token all may be used
           to indicate all packages. pkginst.*  can  be  used  to
           indicate  all  instances  of a package. If no packages
           are defined, a prompt shows all packages on the device
           and asks which to translate.

           The asterisk character (*) is a special  character  to
           some  shells  and  may  need  to be escaped. In the C-
           Shell, "*" must be surrounded by single quotes (')  or
           preceded by a backslash (\).


DEVICE SPECIFIERS

     Packaging  tools,  including   pkgtrans,   pkgadd(1M),   and
     pkgchk(1M),  have  options for specifying a package location
     by specifying the device on which it resides.  Listed  below
     are  the  device  types  that a package can be stored to and
     retrieved from. Note that  source  and  destination  devices
     cannot be the same.

     directory
           Packages can be stored onto a directory by  specifying
           an absolute path to a file system directory. The pack-
           age contents reside in a directory within  the  speci-
           fied  directory.  The  package  directory name must be
           identical to its PKG specification in  the  pkginfo(4)
           file.  An example device specification of this type is
           /export/packages.

     device
           Packages can be stored to a character or block  device
           by  specifying  the  device  identifier as the device.
           Common examples of this device type are /dev/rmt/0 for
           a  removable magnetic tape and /floppy/floppy0 for the
           first floppy disk on the  system.  pkgtrans  can  also
           produce  regular file system files in a stream format,
           which is suitable for storage on a  character  device,
           web server, or as input to pkgadd(1M).

     device alias
           Devices that have been  specified  in  /etc/device.tab
           are  eligible  for  being the recipient or source of a
           package.  Common  examples  of  this  type  of  device
           specification  are  spool  (the default package device
           location) and disk1. These names correspond to devices
           specified in /etc/device.tab


EXAMPLES

     Example 1: Examples of the pkgtrans command

     The following example translates all packages on the  floppy
     drive /dev/diskette and places the translations on /tmp:

     example% pkgtrans /dev/diskette /tmp all

     The following example translates packages pkg1 and  pkg2  on
     /tmp  and  places their translations (that is, a datastream)
     on the 9track1 output device:

     example% pkgtrans /tmp 9track1 pkg1 pkg2

     The following example translates pkg1 and pkg2 on  /tmp  and
     places them on the diskette in a datastream format:

     example% pkgtrans -s /tmp /dev/diskette pkg1 pkg2

     The following example creates a signed package from pkg1 and
     pkg2,  and  reads  the  password  from the $PASS environment
     variable:

     example% pkgtrans -sg -k /tmp/keystore.p12 -alias foo \
         -p env:PASS /tmp /tmp/signedpkg pkg1 pkg2


ENVIRONMENT VARIABLES

     The MAXINST variable is  set  in  the  pkginfo(4)  file  and
     declares the maximum number of package instances.


EXIT STATUS

     0     Successful completion.

     >0    An error occurred.


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     _____________________________________________________________________
    |            ATTRIBUTE TYPE            |        ATTRIBUTE VALUE      |
    |______________________________________|_____________________________|
    | Availability                         |  SUNWpkgcmdsu               |
    |______________________________________|_____________________________|
    | Interface Stability:                 |                             |
    |                                      |       Evolving              |
    |       Command line                   |                             |
    |                                      |       Evolving              |
    |       Digitally signed stream package|                             |
    |______________________________________|_____________________________|


SEE ALSO

     pkginfo(1),     pkgmk(1),     pkgparam(1),      pkgproto(1),
     installf(1M),     pkgadd(1M),     pkgask(1M),     pkgrm(1M),
     removef(1M), pkginfo(4), pkgmap(4), attributes(5)

     Application Packaging Developer's Guide


NOTES

     By default, pkgtrans will not translate any  instance  of  a
     package  if  any  instance of that package already exists on
     the destination device. Using the -n option  creates  a  new
     instance  if  an  instance  of  this package already exists.
     Using the -o option overwrites an instance of  this  package
     if it already exists. Neither of these options are useful if
     the destination device is a datastream.


Man(1) output converted with man2html