Packaging your software applications

11. Creating a package with pkgmk

pkgmk(1) takes all of the objects on your machine (as defined in the prototype(4) file), puts them in the fixed directory format and copies everything to the installation medium.

To package your software, execute:

   pkgmk [-d device] [-f filename]
You must use the -d option to name the device onto which the package should be placed. device can be a directory pathname or the identifier for a disk. The default device is the installation spool directory.

pkgmk looks for a file named prototype. You can use the -f option to specify a package contents file named something other than prototype. This file must be in the prototype format.

For example, executing pkgmk -d diskette1 creates a package based on a file named prototype in your current directory. The package is formatted and copied to the diskette in the device diskette1.

Package file compression

In Release 4.2, the pkgmk(1) command has been enhanced to optionally compress package files. If the -c option is specified, pkgmk(1) will compress all non-information files. The following exceptions apply:

Creating a package instance

pkgmk(1) creates a new instance of a package if one already exists on the device to which it is writing. It assigns the package an instance identifier. Use the -o option of pkgmk to overwrite an existing instance of a package rather than to create a new one.

NOTE: This use of ``instance'' should not be confused with the instance identifier assigned on installation and referenced in packaging scripts with the PKGINST variable. The pkgmk command simply writes the new package to another directory name, adding characters to the end of the package abbreviation to distinguish the new package from any instances of the same package it finds already on the target media.

Helping pkgmk locate package contents

The following list describes situations that might require supplying pkgmk(1) with extra information and an explanation of how to do so:

Next topic: 12. Creating a package with pkgtrans
Previous topic: 10. Distributing packages over multiple volumes

© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 27 April 2004