mkcuts(SMT) 6 January 1993 mkcuts(SMT) Name mkcuts - make custom-installable distribution (application cutting tool) Syntax mkcuts [-c] [-i] [-s] [-u] [-f varsfile] Options -c compresses the files in the product -i produces disk image files rather than cutting directly to the media -s produces a sumlist file listing the checksum of each file in the dis- tribution -f sources the named file to set the required environment variables. If the -f option is not given, mkcuts sources the file ./site_variables by default. -u display command line usage, then quit Description mkcuts is a tool for making custom-installable application distributions. mkcuts uses fixperm to extract the information in the permlist ./dist/tmp/perms/prd to determine which files are on the distribution. Once it has this information, it runs a series of programs that create the distributions. fdfit fits the files on the volumes in the most efficient order taking care to put specified files on specified volumes where indicated. For example, init scripts, in general, are on the last volume; installation tools are generally on the first volume. It creates files in $MISCDIR, which are named 01 ... 0n and contain the list of files on that volume. volno looks in these files, $MISCDIR/#, and updates each file's entry in the permlist, ./dist/tmp/perms/prd, with the corresponding volume number. pkgsize calculates the total size used by each package listed in the permlist and updates the permlist with this value. fixperm is run on the distribution hierarchy to set permissions and ownerships to match those of the permlist. You must be running as root so that fixperm runs correctly. mkcuts uses a number of shell variables to obtain information about the product and the cutting environment. mkcuts sets these variables by sourcing the file given with the -f option, or the ./site_variables file if no -f option is used. The variables that need to be changed for each product cut with mkcuts are: PRODSET full name of the product, for example, ``SCO Profes- sional'' PRODPRD short or abbreviated product name, for example, ``pro'' PRODTYP code for the target machine and environment, for example ``n386'' PRODREL current release number/name, for example, ``3.2.0a'' PRODUPD update string; optional field only needed for an update, for example, ``UA'' TARGETOS operating system for which the product is intended; ``UNIX'' or ``XENIX' The variables that need to be changed for each different media type used in a cut are: DEVICE device name for archiving distribution, for example, /dev/rfd096ds15 VOLSIZE size of each distribution volume, for example, ``1185k'' BLOCKING blocking factor (if required), for example, ``10'' FORMAT complete command needed to format a volume, for example, format -f /dev/rfd096ds15 NOTAR pathnames of any files not to be put onto the distribution media. This is used to stop link names from being put onto the media by tar. (Links are made by fixperm when the product is installed.) Some special-purpose variables that are used for some products, but do not usually need to be changed from their default values, are: SERIALKEY serialization key for serialization; optional, only if debranding files SERIALIZE pathnames of any serialization files; optional, only if debranding files VOLPREFIX optional prefix letters for the volume number field in the permlist. NOCOMPRESS lists packages that are not to be compressed when the -c option is used. For example: NOCOMPRESS="PERM INST TOOLS" This ensures that the PERM, INST, and TOOLS packages in the product are not compressed when the other files in the product are compressed by mkcuts. If NOCOMPRESS is blank or not set, the -c option compresses all files in the dis- tribution except the permlist. The following variables define certain parts of the cutting hierarchy, and are almost never changed from their default values. DISTDIR ``root'' directory of the distribution hierarchy, for example, pwd/dist CDISTDIR ``root'' directory of the compressed distribution hierar- chy, where the files in the distribution are compressed when the -c option is used MISCDIR distribution ``misc'' directory, relative to DISTDIR used, for example, to store list of files corresponding to vol- umes SUMDIR If a sum list of the final product is desired, mkcuts places it in the sum-directory listed, under the subdirec- tory SUMDIR/PRODREL/MEDIA. IMAGEDIR directory under which the distribution image files are placed when the -i option is used. The files are placed under the subdirectory IMAGEDIR/PRODREL/MEDIA. See also fdfit(SMT), fixperm(M), volno(SMT)