Documentation Home
> Application Packaging Developer's Guide
Application Packaging Developer's Guide
Book Information
Index
A
B
C
D
E
F
I
L
M
O
P
R
S
T
U
V
Preface
Chapter??1 Designing a Package
Where to Find Packaging Tasks
What Are Packages?
Package Components
Required Package Components
Optional Package Components
Package Information Files
Package Installation Scripts
Considerations Before Building a Package
Make Packages Remotely Installable
Optimize for Client-Server Configurations
Package by Functional Boundaries
Package Along Royalty Boundaries
Package by System Dependencies
Eliminate Overlap in Packages
Package Along Localization Boundaries
Image Packaging System (IPS) Packages
Packaging Commands, Files, and Scripts
Chapter??2 Building a Package
The Process of Building a Package (Task Map)
Package Environment Variables
General Rules on Using Environment Variables
Package Environment Variables Summary
Creating a pkginfo File
Defining a Package Instance
Defining a Package Abbreviation (PKG)
Specifying a Package Architecture (ARCH)
Specifying a Package Instruction Set Architecture (SUNW_ISA)
Specifying a Package Version (VERSION)
Defining a Package Name (NAME)
Defining a Package Category (CATEGORY)
How to Create a pkginfo File
Organizing a Package's Contents
How to Organize a Package's Contents
Creating a prototype File
Format of the prototype File
The ftype Field
The class Field
The path Field
Collectively Relocatable Objects
Individually Relocatable Objects
Parametric Path Names
A Brief Word on an Object's Source and Destination Locations
The mode Field
The owner Field
The group Field
Creating a prototype File From Scratch
Example???Creating a prototype File With the pkgproto Command
Fine-Tuning a prototype File Created With the pkgproto Command
Creating Object Entries With File Types v, e, x, and i
Using Multiple Class Definitions
Example???Fine-Tuning a prototype File Created Using the pkgproto Command
Adding Functionality to a prototype File
Defining Additional Objects to Be Created at Install Time
Creating Links at Install Time
Distributing Packages Over Multiple Volumes
Nesting prototype Files
Setting Default Values for the mode, owner, and group Fields
Providing a Search Path for the pkgmk Command
Setting Environment Variables
How to Create a prototype File by Using the pkgproto Command
Building a Package
Using the Simplest pkgmk Command
The pkgmap File
How to Build a Package
Chapter??3 Enhancing the Functionality of a Package (Tasks)
Creating Information Files and Installation Scripts (Task Map)
Creating Information Files
Defining Package Dependencies
How to Define Package Dependencies
Writing a Copyright Message
How to Write a Copyright Message
Reserving Additional Space on a Target System
How to Reserve Additional Space on a Target System
Creating Installation Scripts
Script Processing During Package Installation
Script Processing During Package Removal
Package Environment Variables Available to Scripts
Obtaining Package Information for a Script
Exit Codes for Scripts
Writing a request Script
request Script Behaviors
Design Rules for request Scripts
How to Write a request Script
Gathering File System Data With the checkinstall Script
checkinstall Script Behaviors
Design Rules for checkinstall Scripts
How to Gather File System Data
Writing Procedure Scripts
Procedure Script Behaviors
Design Rules for Procedure Scripts
How to Write Procedure Scripts
Writing Class Action Scripts
Defining Object Classes
How Classes Are Processed During Package Installation
How Classes Are Processed During Package Removal
The Class Action Script
Class Action Script Behaviors
Design Rules for Class Action Scripts
The Special System Classes
The sed Class Script
The awk Class Script
The build Class Script
The preserve Class Script
The manifest Class Script
How to Write Class Action Scripts
Creating Signed Packages
Signed Packages
Certificate Management
Adding Trusted Certificates to the Package Keystore
Adding a User Certificate and Private Key to the Package Keystore
Verifying the Contents in the Package Keystore
Deleting Trusted Certificates and Private Keys From the Package Keystore
Signed Packages Creation
How to Create an Unsigned, Directory-Format Package
How to Import the Certificates Into the Package Keystore
How to Sign the Package
Chapter??4 Verifying and Transferring a Package
Verifying and Transferring a Package (Task Map)
Installing Software Packages
The Installation Software Database
Interacting With the pkgadd Command
Installing Packages on Standalone Systems or Servers in a Homogeneous Environment
How to Install a Package on a Standalone System or Server
Verifying the Integrity of a Package
How to Verify the Integrity of a Package
Displaying Additional Information About Installed Packages
The pkgparam Command
How to Obtain Information With the pkgparam Command
The pkginfo Command
The Default pkginfo Display
Customizing the Format of the pkginfo Display
Parameter Descriptions for the pkginfo Long Format
How to Obtain Information With the pkginfo Command
Removing a Package
How to Remove a Package
Transferring a Package to a Distribution Medium
How to Transfer a Package to a Distribution Medium
Chapter??5 Case Studies of Package Creation
Soliciting Input From the Administrator
Techniques
Approach
Case Study Files
The pkginfo File
The prototype File
The request Script
Creating a File at Installation and Saving It During Removal
Techniques
Approach
Case Study Files
The pkginfo File
The prototype File
The space File
The i.admin Class Action Script
The r.cfgdata Removal Script
Defining Package Compatibilities and Dependencies
Techniques
Approach
Case Study Files
The pkginfo File
The copyright File
The compver File
The depend File
Modifying a File by Using Standard Classes and Class Action Scripts
Techniques
Approach
Case Study Files
The pkginfo File
The prototype File
The i.inittab Installation Class Action Script
The r.inittab Removal Class Action Script
The inittab File
Modifying a File by Using the sed Class and a postinstall Script
Techniques
Approach
Case Study Files
The pkginfo File
The prototype File
The sed Class Action Script (/etc/inittab)
The postinstall Script
Modifying a File by Using The build Class
Techniques
Approach
Case Study Files
The pkginfo File
The prototype File
The Build File
Modifying crontab Files During Installation
Techniques
Approach
Case Study Files
The pkginfo Command
The prototype File
The i.cron Installation Class Action Script
The r.cron Removal Class Action Script
crontab File #1
crontab File #2
Installing and Removing a Driver With Procedure Scripts
Techniques
Approach
Case Study Files
The pkginfo File
The prototype File
The request Script
The postinstall Script
The preremove Script
Installing a Driver by Using the sed Class and Procedure Scripts
Techniques
Approach
Case Study Files
The pkginfo File
The prototype File
The sed Class Action Script (/etc/devlink.tab)
The postinstall Installation Script
The preremove Removal Script
The copyright File
Chapter??6 Advanced Techniques for Creating Packages
Specifying the Base Directory
The Administrative Defaults File
Becoming Comfortable With Uncertainty
Using the BASEDIR Parameter
Using Parametric Base Directories
Examples???Using Parametric Base Directories
The pkginfo File
The pkgmap File
Managing the Base Directory
Accommodating Relocation
Walking Base Directories
Using the BASEDIR Parameter
The pkginfo File
The pkgmap File
Example???Analysis Scripts That Walk a BASEDIR
The request Script
The checkinstall Script
Using Relative Parametric Paths
The pkginfo File
The pkgmap File
Example???A request Script That Walks a Relative Parametric Path
Supporting Relocation in a Heterogeneous Environment
Traditional Approach
Relocatable Packages
Example-A Traditional Relocatable Package
The pkginfo File
The pkgmap File
Absolute Packages
Example-A Traditional Absolute Package
The pkgmap File
Composite Packages
Example-A Traditional Solution
The pkginfo File
The pkgmap File
Beyond Tradition
Another Look at Composite Packages
Making Absolute Path Names Look Relocatable
Example???Modifying a File
Description
Implementation
Example
Example???Creating a New File
Description
Implementation
Example
Example???A Composite Package
The pkginfo File
The pkgmap File
Making Packages Remotely Installable
Example ??? Installing to a Client System
Example ??? Installing to a Server or Standalone System
Example ??? Mounting Shared File Systems
Patching Packages
The checkinstall Script
The preinstall Script
The Class Action Script
The postinstall Script
The patch_checkinstall Script
The patch_postinstall Script
Upgrading Packages
The request Script
The postinstall Script
Creating Class Archive Packages
Structure of the Archive Package Directory
Keywords to Support Class Archive Packages
The faspac Utility
Glossary
© 2010, Oracle Corporation and/or its affiliates