OpenSolaris Distribution Constructor Guide
Previous Next

How does the Distribution Constructor Work?

The distribution constructor tool uses the following components:

  • Manifests

    The distribution constructor creates images based on settings specified in a file. This file is the blueprint from which every image is built. This blueprint is an XML file called a manifest file. Sample manifest files with preset values are included in the distribution constructor package. You can manually edit a manifest file to customize the ISO images you create.

  • Finalizer Scripts

    The distribution constructor enables you to specify scripts or programs that can be used to make installation customizations based on the type of image you are building. These scripts are called finalizer scripts. The distribution constructor package includes the set of scripts that are used for creating the Slim Live CD and AI ISO images. It is recommended that you use the supplied finalizer scripts without editing them. You do, however, have the option to write and add your own scripts to perform additional operations.

  • distro_const Utility with Checkpointing Options

    The distribution constructor package also includes a command-line utility, the distro_const command, that actually builds your image for you. After you've finished editing the image blueprint in a manifest file to suit your requirements, you run the distro_const command to build your image. You can use the options provided in the distro_const command to stop and restart the build process at various stages, in order to check and debug the image that is being built. This process of stopping and restarting during the build process is called checkpointing.

Components of the Distribution Constructor

The following section describes each of the components of the distribution constructor application more fully.

Manifests

XML manifest files contain specifications for the contents and parameters of the ISO images that you create using the distribution constructor. The distribution constructor contains default manifests that can be used to create a custom Slim CD, an x86 AI ISO image, or a SPARC AI ISO image.

Manifests specify parameters such as the following:

  • Names of the packages to be included in the image

  • Network location of the repository to access to retrieve packages for the image

  • Name and location of scripts used to finalize the creation of the new image

All the fields in each manifest file provide preset, default values that will create the type of ISO image you need. Optionally, you can manually edit these preset fields in a manifest file to further customize the resulting image.

For instructions about editing manifest files, see Editing the Manifest Files.

Finalizer Scripts

A manifest file points to scripts that are used to customize the new image. These finalizer scripts transform the generic image into a media-specific distribution. The default scripts that are provided in the application packages generate ISO images for either an x86 Slim CD, an x86 AI ISO image, or a SPARC AI ISO image. Start with the default scripts, and with caution, add your own scripts to supplement. Edit the manifest file to point to any new scripts.


Note - While custom scripts are needed to create your own custom image, support for scripts is limited to the unmodified scripts that are supplied with the application packages. If you choose to customize these scripts, backup the original scripts first.


For further information about these scripts and how to customize them, see Using the Finalizer Scripts.

distro_const Utility

After setting up the manifest and, optionally, customizing the finalizer scripts, you build an image by using the distro_const utility from the command line.

For further information, see Creating an Image. See also the distro_const(1M) man page.

Checkpointing Options

The distribution constructor provides the ability to pause, or “checkpoint,” and resume at certain stages of the image-generation process. This checkpointing feature supports the process of developing and debugging images. You can start building an image, pause at any stage where you want to stop and examine the contents of the image, then resume building the image. Checkpointing is optional.


Note - A checkpoint in the build process is created after each finalizer script is executed. So, new checkpoint references are added when you add new finalizer scripts.


You use this feature by taking advantage of the checkpointing options that are available in the distro_const command. Run the command to check which checkpoints are available, then build your image with any checkpoint options that you choose.

For instructions, see Using Checkpointing to Create an Image. See also the distro_const(1M) man page.

Previous Next