1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293
|
<HTML>
<BODY>
<H1 ALIGN="RIGHT"><A NAME="REFERENCE">C - List File Reference</A></H1>
<P>This appendix provides a complete reference for the EPM list file
and setup types formats.</P>
<H2>The EPM List File Format</H2>
<P>Each <I>EPM</I> product has an associated list file that
describes the files to include with the product. Comment lines
begin with the "#" character and are ignored. All other
non-blank lines must begin with a letter, dollar sign ("$"), or
the percent sign ("%").</P>
<H3>List File Directives</H3>
<P>The following list describes all of the list file directives
supported by <I>EPM</I>:</P>
<UL><DL>
<DT>$name=value</DT>
<DD>Sets the named variable to <I>value</I>.
<B>Note:</B> Variables set in the list file are
overridden by variables specified on the command-line or
in the current environment.</DD>
<DT>%copyright <I>copyright notice</I></DT>
<DD>Sets the copyright notice for the file.</DD>
<DT>%description <I>description text</I></DT>
<DD>Adds a line of descriptive text to the distribution.
Multiple lines are supported.</DD>
<DT>%format <I>format [... format]</I></DT>
<DD>Uses following files and directives only if the
distribution format is the same as <I>format</I>.</DD>
<DT>%format !<I>format [... format]</I></DT>
<DD>Uses following files and directives only if the
distribution format is not the same as
<I>format</I>.</DD>
<DT>%include <I>filename</I></DT>
<DD>Includes files listed in <I>filename</I>.</DD>
<DT>%incompat <I>product</I></DT>
<DT>%incompat <I>filename</I></DT>
<DD>Indicates that this product is incompatible with the
named product or file.</DD>
<DT>%install <I>script or program</I></DT>
<DD>Specifies a script or program to be run after all
files are installed. (This has been obsoleted by the
%postinstall directive)</DD>
<DT>%license <I>license file</I></DT>
<DD>Specifies the file to display as the software
license.</DD>
<DT>%packager <I>name of packager</I></DT>
<DD>Specifies the name of the packager.</DD>
<DT>%patch <I>script or program</I></DT>
<DD>Specifies a script or program to be run after all
files are patched. (This has been obsoleted by the
%postpatch directive)</DD>
<DT>%postinstall <I>script or program</I></DT>
<DD>Specifies a script or program to be run after all
files are installed.</DD>
<DT>%postpatch <I>script or program</I></DT>
<DD>Specifies a script or program to be run after all
files are patched.</DD>
<DT>%postremove <I>script or program</I></DT>
<DD>Specifies a script or program to be run after removing files.</DD>
<DT>%preinstall <I>script or program</I></DT>
<DD>Specifies a script or program to be run before all
files are installed.</DD>
<DT>%prepatch <I>script or program</I></DT>
<DD>Specifies a script or program to be run before all
files are patched.</DD>
<DT>%preremove <I>script or program</I></DT>
<DD>Specifies a script or program to be run before removing files.</DD>
<DT>%product <I>product name</I></DT>
<DD>Specifies the product name.</DD>
<DT>%readme <I>readme file</I></DT>
<DD>Specifies a README file to be included in the distribution.</DD>
<DT>%remove <I>script or program</I></DT>
<DD>Specifies a script or program to be run before removing files.
(This has been obsoleted by the %preremove directive)</DD>
<DT>%release <I>number</I></DT>
<DD>Specifies the release or build number of a product
(defaults to 0).</DD>
<DT>%replaces <I>product</I></DT>
<DD>Indicates that this product replaces the named product.</DD>
<DT>%requires <I>product</I></DT>
<DT>%requires <I>filename</I></DT>
<DD>Indicates that this product requires the named product or file.</DD>
<DT>%vendor <I>vendor or author name</I></DT>
<DD>Specifies the vendor or author of the product.</DD>
<DT>%version <I>version number</I></DT>
<DD>Specifies the version number of the product.</DD>
<DT>%system <I>system[-release] [... system[-release]]</I></DT>
<DD>Specifies that the following files should only be
used for the specified operating systems and
releases.</DD>
<DT>%system !<I>system[-release] [... system[-release]]</I></DT>
<DD>Specifies that the following files should not be
used for the specified operating systems and
releases.</DD>
<DT>%system all</DT>
<DD>Specifies that the following files are applicable to
all operating systems.</DD>
<DT>c <I>mode user group destination source</I></DT>
<DT>C <I>mode user group destination source</I></DT>
<DD>Specifies a configuration file for installation. The
second form specifies that the file has changed or is
new and should be included as part of a patch.
Configuration files are installed as "destination.N" if
the destination already exists.</DD>
<DT>d <I>mode user group destination -</I></DT>
<DT>D <I>mode user group destination -</I></DT>
<DD>Specifies a directory should be created when
installing the software. The second form specifies that
the directory is new and should be included as part of a
patch.</DD>
<DT>f <I>mode user group destination source</I></DT>
<DT>F <I>mode user group destination source</I></DT>
<DD>Specifies a file for installation. The second form
specifies that the file has changed or is new and should
be included as part of a patch.</DD>
<DT>f <I>mode user group destination source/pattern</I></DT>
<DT>F <I>mode user group destination source/pattern</I></DT>
<DD>Specifies one or more files for installation using
shell wildcard patterns. The second form specifies that
the files have changed or are new and should be included
as part of a patch.</DD>
<DT>i <I>mode user group service-name source</I></DT>
<DT>I <I>mode user group service-name source</I></DT>
<DD>Specifies an initialization script for installation.
The second form specifies that the file has changed or
is new and should be included as part of a patch.
Initialization scripts are stored in
<VAR>/etc/software/init.d</VAR> and are linked to the
appropriate system-specific directories for run levels
0, 2, 3, and 5. Initialization scripts <B>must</B>
accept at least the <I>start</I> and <I>stop</I>
commands.</DD>
<DT>l <I>mode user group destination source</I></DT>
<DT>L <I>mode user group destination source</I></DT>
<DD>Specifies a symbolic link in the installation. The
second form specifies that the link has changed or is
new and should be included as part of a patch.</DD>
<DT>R <I>mode user group destination</I></DT>
<DD>Specifies that the file is to be removed upon
patching. The <I>user</I> and <I>group</I> fields are
ignored. The <I>mode</I> field is only used to
determine if a check should be made for a previous
version of the file.</DD>
</DL></UL>
<H3>List Variables</H3>
<P><I>EPM</I> maintains a list of variables and their values
which can be used to substitute values in the list file. These
variables are imported from the current environment and taken
from the command-line and list file as provided. Substitutions
occur when the variable name is referenced with the dollar sign
($):</P>
<UL><PRE>
%install echo What is your name:
%install read $$name
%install echo Your name is $$name
f 0555 root sys ${bindir}/foo foo
f 0555 root sys $datadir/foo/foo.dat foo.dat
</PRE></UL>
<P>Variable names can be surrounded by curley brackets (${name})
or alone ($name); without brackets the name is terminated by the
first slash (/), dash (-), or whitespace. The dollar sign can be
inserted using $$.</P>
<H2><A NAME="SETUPTYPES">The setup.types File</A></H2>
<P>The EPM <B>setup</B> program normally presents the user with
a list of software products to install, which is called a
"custom" software installation.</P>
<P>If a file called <I>setup.types</I> is present in the package
directory, the user will instead be presented with a list of
instal- lation types. Each type has an associated product list
which determines the products that are installed by default. If
a type has no products associated with it, then it is treated as
a custom installation and the user is presented with a list of
packages to choose from.</P>
<P>The <I>setup.types</I> file is an ASCII text file consisting
of type and product lines. Comments can be inserted by starting
a line with the pound sign (#). Each installation type is
defined by a line starting with the word <CODE>TYPE</CODE>.
Products are defined by a line starting with the word
<CODE>INSTALL</CODE>:</P>
<UL><PRE>
TYPE Typical End-User Configuration
INSTALL foo
INSTALL foo-help
TYPE Typical Developer Configuration
INSTALL foo
INSTALL foo-help
INSTALL foo-devel
INSTALL foo-examples
TYPE Custom Configuration
</PRE></UL>
<P>In the example above, three installation types are defined.
Since the last type includes no products, the user will be
presented with the full list of products to choose from.</P>
</BODY>
</HTML>
|