Application Packaging Developer's Guide

The i.admin Class Action Script

# PKGINST parameter provided by installation service
# BASEDIR parameter provided by installation service
while read src dest
   cp $src $dest || exit 2
# if this is the last time this script will be executed
# during the installation, do additional processing here.
if [ "$1" = ENDOFCLASS ]
# our config process will create a data file based on any changes
# made by installing files in this class; make sure the data file
# is in class `cfgdata' so special rules can apply to it during
# package removal.
   installf -c cfgdata $PKGINST $BASEDIR/data/ f 444 root
   sys || exit 2
   $BASEDIR/bin/config > $BASEDIR/data/ || exit 2
   installf -f -c cfgdata $PKGINST || exit 2
exit 0

This illustrates a rare instance in which installf is appropriate in a class action script. Because a space file has been used to reserve room on a specific file system, this new file may be safely added even though it is not included in the pkgmap file.