Ticket #46: cups-base-1_4_8.wis

File cups-base-1_4_8.wis, 22.6 KB (added by Elmar Stellnberger, 11 years ago)

working installation script with dep99 cropped

Line 
1<WARPIN VERSION="1.0.18">
2<HEAD>
3    <TITLE>eCups Printing System</TITLE>
4
5
6    <!-- REXX FUNCTIONS -->
7
8
9    <REXX NAME="CheckDLL">
10        /* Searches the system LIBPATH for the specified DLL.  If not found,
11         * displays a popup dialog, and optionally aborts the installation.
12         *
13         * Parameters:
14         *      dname   Name of the DLL to look for (must include extension)
15         *      fail    If 1, abort installation if the DLL was not found
16         *      message Message text to be shown when the DLL is not found
17         */
18        CALL RxFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs'
19        CALL SysLoadFuncs
20
21        PARSE ARG dname fail message
22        IF dname == '' THEN RETURN ''
23
24        _bd = SysBootDrive()
25        IF _bd == '' THEN
26            _bd = FILESPEC('DRIVE', VALUE('COMSPEC',,'OS2ENVIRONMENT'))
27        _csys = _bd'\CONFIG.SYS'
28
29        CALL SysFileSearch 'LIBPATH=', _csys, 'match.'
30        DO i = 1 TO match.0
31            IF left(strip(match.i),length('LIBPATH='))=='LIBPATH=' THEN DO
32              PARSE UPPER VAR match.i 'LIBPATH=' _lpath
33              IF _lpath <> '' THEN LEAVE
34            END
35        END
36        CALL SETLOCAL
37        _testenv = 'TEST_'dname'_LIBPATH'
38        CALL VALUE _testenv, _lpath, 'OS2ENVIRONMENT'
39        location = SysSearchPath( _testenv, dname )
40        CALL ENDLOCAL
41
42        IF location == '' THEN DO
43            title = dname 'Not Found'
44            rc = WirexxShowMessage( title, message )
45            IF fail == 1 THEN CALL WirexxCancel
46        END
47
48        RETURN ''
49    </REXX>
50
51    <REXX NAME="ReqDLL">
52        /* Searches the system LIBPATH for the specified DLL.  If not found,
53         * returns the string 'REQUIRES=xxx'.
54         *
55         * Parameters:
56         *      dname   Name of the DLL to look for (must include extension)
57         *      reqpkg  Value of REQUIRES string to return if DLL is not found
58         */
59        CALL RxFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs'
60        CALL SysLoadFuncs
61
62        PARSE ARG dname reqpkg
63        IF dname == '' THEN RETURN ''
64        IF reqpkg == '' THEN RETURN ''
65
66        _bd = SysBootDrive()
67        IF _bd == '' THEN
68            _bd = FILESPEC('DRIVE', VALUE('COMSPEC',,'OS2ENVIRONMENT'))
69        _csys = _bd'\CONFIG.SYS'
70
71        CALL SysFileSearch 'LIBPATH=', _csys, 'match.'
72        DO i = 1 TO match.0
73            PARSE UPPER VAR match.i 'LIBPATH=' _lpath
74            IF _lpath <> '' THEN LEAVE
75        END
76        CALL SETLOCAL
77        _testenv = 'TEST_'dname'_LIBPATH'
78        CALL VALUE _testenv, _lpath, 'OS2ENVIRONMENT'
79        location = SysSearchPath( _testenv, dname )
80        CALL ENDLOCAL
81
82        IF location == '' THEN DO
83            RETURN 'REQUIRES='reqpkg
84        END
85
86        RETURN ''
87    </REXX>
88
89    <REXX NAME="GetPdrDir">
90        /* Finds out where the system expects to look for installable print
91         * driver files.  Also makes sure the directory exists and is on a
92         * writable filesystem.
93         */
94        default = '?:\OS2\DLL'
95
96        PARSE VALUE SysIni('USER', 'PM_INSTALL', 'PDR_DIR') WITH pdr_dir '00'x .
97        pdr_dir = STRIP( pdr_dir, 'T', '\')
98        IF LEFT( pdr_dir, 6 ) == 'ERROR:' THEN RETURN default
99
100        CALL SysFileTree pdr_dir, 'dirs.', 'D'
101        IF dirs.0 == 0 THEN RETURN default
102
103        drv = FILESPEC('DRIVE', pdr_dir )
104        IF drv == '' THEN RETURN default
105        IF WORDPOS( SysFileSystemType( drv ), 'HPFS JFS FAT FAT32') == 0 THEN
106            RETURN default
107
108        RETURN pdr_dir
109    </REXX>
110
111    <REXX NAME="GetUsrDir">
112        /* Find a suitable path to treat as the system "/usr" directory tree
113         * equivalent.
114         */
115        osdir = VALUE('OSDIR',,'OS2ENVIRONMENT')
116        IF osdir <> '' THEN
117            RETURN STRIP( osdir, 'T', '\')
118
119        unxrt = VALUE('UNIXROOT',,'OS2ENVIRONMENT')
120        IF unxrt <> '' THEN
121            RETURN STRIP( unxrt, 'T', '\') || '\usr'
122
123        drvs = SysDriveMap('C:', 'LOCAL')
124        DO i = 1 TO WORDS( drvs )
125            drv = WORD( drvs, i )
126            IF WORDPOS( SysFileSystemType( drv ), 'HPFS JFS') == 0 THEN ITERATE
127
128            CALL SysFileTree drv'\usr', 'dirs.', 'D'
129            IF dirs.0 > 0 THEN RETURN dirs.1
130        END
131        RETURN '?:\OS2'
132    </REXX>
133
134    <REXX NAME="TcpipBinCopy">
135        /* Generates a command string to copy the specified file to the
136         * \TCPIP\BIN directory (optionally changing the filename to "target").
137         */
138         ARG copyfile target
139
140         ipath = SysSearchPath('PATH', 'INETD.EXE')
141         IF ipath == '' THEN
142             ipath = SysSearchPath('PATH', 'IFCONFIG.EXE')
143         IF ipath == '' THEN
144             ipath = VALUE('COMSPEC',,'OS2ENVIRONMENT')
145         bindir = FILESPEC('DRIVE', ipath ) || '\' || FILESPEC('PATH', ipath )
146
147         RETURN "copy" copyfile bindir'\'target
148    </REXX>
149
150    <REXX NAME="GSUpdate">
151        /* Check for an existing CUPS install and obtain the path where it
152         * thinks Ghostscript is located.  Then return a suitable EXECUTE
153         * command for the SET_GS.CMD script, which updates the CUPS scripts
154         * and configuration files to point to the Ghostscript directory.
155         *
156         * The idea is that the previously-installed CUPS files (if they exist)
157         * presumably have the correct path to Ghostscript alread configured,
158         * and we need to avoid losing this information if pstoraster etc. get
159         * overwritten by the install.
160         *
161         * If there was no previously-configured Ghostscript path found, then
162         * the returned command string will call SET_GS.CMD with no parameters
163         * (which will cause it to try and search for the correct Ghostscript
164         * path on its own).
165         *
166         * If Ghostscript is being installed/upgraded from this very WPI file,
167         * then SET_GS.CMD should find its new location; this will override the
168         * path specified in the EXECUTE command line.
169         */
170        ARG cupsdrive '\' .
171
172        gspath = ''
173        fltrs = cupsdrive'\cups\lib\cups\filter'
174        ps2r  = STREAM( fltrs'\pstoraster', 'C', 'QUERY EXISTS')
175        IF ps2r <> '' THEN DO
176            CALL LINEIN ps2r, 1, 0
177            DO WHILE LINES( ps2r ) > 0
178                _line = LINEIN( ps2r )
179                IF ( LEFT( _line, 7 ) == 'prefix=') THEN DO
180                    PARSE VAR _line 'prefix=' gspath
181                    gspath = STRIP( gspath )
182                    IF gspath == '' THEN ITERATE
183                    gspath = TRANSLATE( gspath, '\', '/')
184                    _start = POS('\', gspath )
185                    IF _start > 1 THEN
186                        gspath = SUBSTR( gspath, _start )
187                END
188            END
189            CALL STREAM ps2r, 'C', 'CLOSE'
190        END
191        IF gspath == '' THEN
192            RETURN 'EXECUTE="'cupsdrive'\cups\set_gs.cmd /y"'
193
194        RETURN 'EXECUTE="'cupsdrive'\cups\set_gs.cmd /x:'gspath '/y"'
195    </REXX>
196
197
198    <!-- PACKAGES -->
199
200
201    <!-- The following packages contain the core CUPS files -->
202
203    <PCK INDEX=1
204         PACKAGEID="netlabs.org\eCups\CUPS\1\4\8"
205         TITLE="CUPS"
206         REQUIRES=2
207
208         <!-- Check for required DLLs -->
209         =("CheckDLL LIBC063.DLL 1 The required runtime library LIBC063.DLL was not found on your system.  You must install this library before you can install eCups.")
210         =("CheckDLL GCC452.DLL 0 The runtime library GCC452.DLL was not found on your system.  You must install this library before you can install eCups.")
211         =("CheckDLL USBCALLS.DLL 0 The library USBCALLS.DLL was not found on your system.  You must install this library in order to be able to print to USB printers.")
212
213         <!-- Default to current boot drive for CUPS components, including
214              Ghostscript, Gutenprint, HPLIP and SpliX
215          -->
216         TARGET="?:\"
217         BASE
218         LONGFILENAMES
219         SELECT
220         NODESELECT
221
222         <!-- Kill any running CUPSD instance -->
223         KILLPROCESS="cupsd.exe"
224
225         <!-- If installing over an existing CUPS, try to preserve the
226              configured path to Ghostscript.
227          -->
228         =("GSUpdate $(1)")
229
230         <!-- Create some required directories -->
231         EXECUTE="MKDIR $(1)cups\var"
232         EXECUTE="MKDIR $(1)cups\var\cache"
233         EXECUTE="MKDIR $(1)cups\var\cache\cups"
234         EXECUTE="MKDIR $(1)cups\var\cache\cups\rss"
235         EXECUTE="MKDIR $(1)cups\var\log"
236         EXECUTE="MKDIR $(1)cups\var\log\cups"
237         EXECUTE="MKDIR $(1)cups\var\run"
238         EXECUTE="MKDIR $(1)cups\var\run\cups"
239         EXECUTE="MKDIR $(1)cups\var\spool"
240         EXECUTE="MKDIR $(1)cups\var\spool\cups"
241         EXECUTE="MKDIR $(1)cups\var\spool\cups\tmp"
242
243         <!-- Delete any existing objects created by the old WPI -->
244         EXECUTE="CREATEOBJECT|REXXTRY CALL SysDestroyObject '<eCUPS Daemon>'"
245         EXECUTE="CREATEOBJECT|REXXTRY CALL SysDestroyObject '<eCUPS Documents>'"
246
247         <!-- Start the CUPS daemon (detached) -->
248         EXECUTE="detach $(1)cups\sbin\cupsd.exe"
249
250         <!-- Create and populate the desktop folder -->
251         CREATEOBJECT="REPLACE WPFolder|eCups|<WP_APPSFOLDER>|OPEN=DEFAULT;OBJECTID=<ECUPS_FOLDER>;"
252         CREATEOBJECT="REPLACE WPProgram|CUPS Daemon^(Detached)|<ECUPS_FOLDER>|EXENAME=cmd.exe;PROGTYPE=WINDOWABLEVIO;PARAMETERS=/c detach $(1)cups\sbin\cupsd.exe;STARTUPDIR=$(1)cups\sbin;MINIMIZED=YES;OBJECTID=<ECUPS_DAEMON>;"
253         CREATEOBJECT="REPLACE WPProgram|CUPS Daemon^(Foreground)|<ECUPS_FOLDER>|EXENAME=cmd.exe;PROGTYPE=WINDOWABLEVIO;PARAMETERS=/c detach $(1)cups\sbin\cupsd.exe;STARTUPDIR=$(1)cups\sbin;MINIMIZED=YES;OBJECTID=<ECUPS_DAEMON_FG>;"
254         CREATEOBJECT="REPLACE WPUrl|CUPS Administration^(Local)|<ECUPS_FOLDER>|URL=http://localhost:631;OBJECTID=<ECUPS_ADMIN>;"
255         CREATEOBJECT="REPLACE WPUrl|eCups Home|<ECUPS_FOLDER>|URL=http://svn.netlabs.org/ecups;OBJECTID=<ECUPS_HOME>;"
256         CREATEOBJECT="REPLACE WPUrl|eCups HowTo|<ECUPS_FOLDER>|URL=http://svn.netlabs.org/ecups/wiki/HowTo;OBJECTID=<ECUPS_HOWTO>;"
257         CREATEOBJECT="REPLACE WPUrl|Frequently^Asked Questions|<ECUPS_FOLDER>|URL=http://svn.netlabs.org/ecups/wiki/CupsFaq;OBJECTID=<ECUPS_FAQ>;"
258         CREATEOBJECT="REPLACE WPShadow|eCups Product Notes|<ECUPS_FOLDER>|SHADOWID=$(1)cups\readme.os2;OBJECTID=<ECUPS_README_SHADOW>;"
259
260         <!-- Create a shadow of CUPSD in the Startup folder -->
261         CREATEOBJECT="REPLACE WPShadow|CUPS Daemon^(Detached)|<WP_START>|SHADOWID=<ECUPS_DAEMON>;OBJECTID=<ECUPS_DAEMON_SHADOW>;"
262
263         <!-- Save the CUPS path in the INI file (for future use) -->
264         WRITEPROFILE="USER\eCups\CUPS|$(1)"
265
266        >This package contains the CUPS daemon and related files</PCK>
267
268    <PCK INDEX=2
269         PACKAGEID="netlabs.org\eCups\Port Driver\2\0\3"
270         TITLE="eCups Port Driver"
271         REQUIRES="netlabs.org\eCups\CUPS\1\3\11"
272         TARGET="?:\"
273         NOBASE
274         FIXED
275         SELECT
276
277         <!-- Copy cups lpr.exe to \tcpip\bin\cupslpr.exe -->
278         EXECUTE="=("TcpipBinCopy $(1)cups\bin\lpr.exe cupslpr.exe")"
279
280         <!-- Reattach the EAs on cups.pdr -->
281         EXECUTE="eautil.exe $(2)OS2\DLL\CUPS.PDR $(2)OS2\DLL\CUPS.EA /J"
282
283         <!-- Install the port driver in Presentation Manager -->
284         WRITEPROFILE="SYSTEM\PM_PORT_DRIVER\CUPS|$(2)OS2\DLL\CUPS.PDR"
285
286        >This package contains the port driver which enables CUPS printing for applications</PCK>
287
288    <PCK INDEX=3
289         PACKAGEID="netlabs.org\Ghostscript\Ghostscript\9\0\2"
290         EXTERNAL="ghostscript-9_0_2.wpi"
291         TITLE="Ghostscript v9 (experimental)"
292         TARGET="$(1)gs"
293         FIXED
294         SELECT
295         LONGFILENAMES
296
297         <!-- Save the Ghostscript path in the INI file (required by SET_GS.CMD) -->
298         WRITEPROFILE="USER\eCups\Ghostscript|$(3)\gs9.02"
299
300        >This package contains GNU Ghostscript, which is required for CUPS to function. This is the latest (experimental) version available, and is not guaranteed to be 100% reliable.</PCK>
301
302    <PCK INDEX=4
303         PACKAGEID="netlabs.org\Ghostscript\Ghostscript\8\7\1"
304         EXTERNAL="ghostscript-8_7_1.wpi"
305         TITLE="Ghostscript v8 (stable)"
306         TARGET="$(1)gs"
307         FIXED
308         LONGFILENAMES
309
310         <!-- Save the Ghostscript path in the INI file (required by SET_GS.CMD) -->
311         WRITEPROFILE="USER\eCups\Ghostscript|$(4)\gs8.71"
312
313        >This package contains GNU Ghostscript, which is required for CUPS to function. This is a stable version which is reported to work reliably with CUPS.</PCK>
314
315
316    <GROUP TITLE="Printer support packages (at least one is required)">
317
318    <PCK INDEX=20
319         PACKAGEID="netlabs.org\eCups\Gutenprint\5\2\7\1"
320         EXTERNAL="gutenprint-5_2_7_1.wpi"
321         REQUIRES=1
322         =("CheckDLL GCC453.DLL 0 The runtime library GCC453.DLL was not found on your system.  You must install this library before you can install eCups.")
323         TITLE="Gutenprint"
324         TARGET="$(1)"
325         FIXED
326         SELECT
327         LONGFILENAMES
328         KILLPROCESS="cupsd.exe"
329         EXECUTE="$(20)cups\ppd_updt.cmd $(20)"
330        >Gutenprint is the main printer support package used by CUPS</PCK>
331
332    <PCK INDEX=21
333         PACKAGEID="netlabs.org\eCups\Splix\1\1\1"
334         EXTERNAL="splix-1_1_1.wpi"
335         TITLE="SpliX"
336         REQUIRES=1
337         REQUIRES=22
338         TARGET="$(1)"
339         FIXED
340        >This package contains the SpliX package for supporting various Samsung and Xerox printers</PCK>
341
342    <PCK INDEX=22
343         PACKAGEID="netlabs.org\GCC4\GCC432 Custom Runtime\4\3\2"
344         EXTERNAL="splix-1_1_1.wpi"
345         TITLE="SpliX Support DLL"
346         TARGET="=("GetUsrDir")\DLL"
347         NOBASE
348         CONFIGSYS="LIBPATH=$(22)|ADDRIGHT"
349        >This package contains the custom GCC runtime required by SpliX</PCK>
350
351    <PCK INDEX=23
352         PACKAGEID="netlabs.org\eCups\HP-LIP\3\10\2\1"
353         EXTERNAL="hplip-3_10_2.wpi"
354         TITLE="HP-LIP"
355         REQUIRES=1
356         TARGET="$(1)"
357         FIXED
358        >This package contains the HP-LIP package for supporting various Hewlett-Packard printers</PCK>
359
360    <PCK INDEX=24
361         PACKAGEID="netlabs.org\eCups\Foomatic\4\0\5\1"
362         EXTERNAL="foomatic-rip-4_0_5.wpi"
363         TITLE="foomatic-rip"
364         REQUIRES=1
365         TARGET="$(1)"
366         FIXED
367        >This package contains the foomatic-rip utility for printing via built-in Ghostscript drivers</PCK>
368
369    <PCK INDEX=25
370         PACKAGEID="netlabs.org\eCups\foo2qpdl\2010\6\20\1"
371         EXTERNAL="foo2qpdl-20100620.wpi"
372         REQUIRES=1
373         REQUIRES=24
374         TITLE="foo2x drivers"
375         TARGET="$(1)"
376         FIXED
377        >This package contains the foo2qpdl, foo2hiperc, foo2hp, foo2lava, foo2oak, foo2slx, foo2xqx and foo2zjs driver packages for printing through foomatic-rip</PCK>
378
379    </GROUP>
380
381
382    <!-- The following packages contain OS/2 printer drivers and related files -->
383
384    <GROUP TITLE="System PostScript drivers (at least one is required)">
385
386    <PCK INDEX=10
387         PACKAGEID="netlabs.org\eCups\ECUPS Driver\30\800\1"
388         EXTERNAL="ecups-pdr-20090324.wpi"
389         TITLE="ECUPS Printer Driver"
390         TARGET="=("GetPdrDir")\ECUPS"
391         NOBASE
392         SELECT
393         WRITEPROFILE="USER\PM_INSTALL\ECUPS_DIR|$(10)"
394        >This package contains the eCups PostScript printer driver, for use with Gutenprint, Splix, and other printer support packages</PCK>
395
396    <PCK INDEX=11
397         PACKAGEID="netlabs.org\eCups\ECUPS-HP Driver\30\800\1"
398         EXTERNAL="ecupshp-pdr-20100304.wpi"
399         TITLE="ECUPS-HP Printer Driver (for HP-LIP)"
400         TARGET="=("GetPdrDir")\ECUPS-HP"
401         NOBASE
402         WRITEPROFILE="USER\PM_INSTALL\ECUPS-HP_DIR|$(11)"
403        >This package contains the eCups PostScript printer driver for use with HP-LIP</PCK>
404
405    <PCK INDEX=12
406         PACKAGEID="netlabs.org\eCups\GUTENPRT Driver\30\800\0"
407         EXTERNAL="guten-pdr-20080712.wpi"
408         TITLE="GUTENPRT Printer Driver"
409         TARGET="=("GetPdrDir")\GUTENPRT"
410         NOBASE
411        >This package contains an older version of the eCups PostScript driver; it is not required if the eCups Printer Driver is installed</PCK>
412
413    </GROUP>
414
415</HEAD>
416
417
418<BODY>
419    <PAGE INDEX=1 TYPE=README>
420      <NEXTBUTTON TARGET=2>~Next</NEXTBUTTON>
421      <TEXT>Welcome to eCups.  Please read the information below before continuing.</TEXT>
422      <README FORMAT=HTML>
423This WarpIN package allows you to install the Common Unix Printing System
424(CUPS) framework for eComStation and OS/2, more commonly referred to as
425"eCups".<p><br>
426
427<p><b><u>eCups Components</u></b></p>
428
429<p>eCups consists of a number of components.  Depending on your environment,
430you may not need to install all of them.</p>
431
432<p>The installable eCups components are described below.  Note that all except
433the "CUPS" and "eCups Port Driver" components are provided as separate WPI
434packages; you must download each package that you require and place it in the
435same directory as this one.</p><br>
436
437<p><u>The core CUPS components</u></p>
438<p>These are always required (although if you already have them installed on
439your system, you do not necessarily have to install them again).</p>
440<dl>
441<dt>CUPS
442<dd>The Common Unix Printing System base product, consisting of the CUPS Daemon
443(cupsd) and related utilities, core conversion filters, "backends" for
444communicating with printers over various types of connections, and a basic set
445of generic printer drivers.
446<dt>eCups Port Driver
447<dd>Allows redirecting of printer output from the system spooler to the CUPS
448spooler.  Effectively, this is what enables CUPS printing from applications.
449<dt>Ghostscript
450<dd>Software PostScript interpreter, required for converting print jobs into
451the necessary format for printing.  You must install this unless you already
452have a version installed in your system; even in the latter case, note that
453CUPS <i>must</i> be installed onto the same drive as Ghostscript.
454</dl><br>
455
456<p><u>Printer support packages</u></p>
457<p>These are the driver packages used by CUPS.  You must generally have at
458least one of these installed.  Choose whichever one includes support for your
459printer; see the listed URLs to find out what printers each one supports.</p>
460<dl>
461<dt>Gutenprint
462<dd>The largest available package of printer drivers, formerly known as GIMP-Print.
463Supports a wide range of printers from a variety of manufacturers; see
464<a href="http://gutenprint.sourceforge.net/p_Supported_Printers.php">http://gutenprint.sourceforge.net/p_Supported_Printers.php</a>
465for a list.
466<dt>SpliX
467<dd>A package of drivers for various printers (mostly) from Samsung and Xerox;
468the list is available at
469<a href="http://splix.sourceforge.net/">http://splix.sourceforge.net/</a>
470<dt>HP-LIP
471<dd>Another CUPS driver package, this one for Hewlett-Packard printers.  A list
472of supported devices is available at
473<a href="http://hplipopensource.com/hplip-web/supported_devices/index.html">http://hplipopensource.com/hplip-web/supported_devices/index.html</a>
474<dt>foomatic-rip
475<dd>A filter program for converting PostScript into a printer's native language
476using Ghostscript; required for a number of printer drivers that are internal to
477Ghostscript itself.
478<dt>foo2<i>x</i>
479<dd>A set of wrappers for foomatic-rip which support various proprietary printer
480languages.  See <a href="http://foo2zjs.rkkda.com/">http://foo2zjs.rkkda.com/</a>
481for details.  Note that this is still largely experimental, and has not been
482widely tested.
483</dl><br>
484
485<p><u>System PostScript drivers</u></p>
486<p>These are used by your applications and desktop printer objects to create
487the printer jobs which are passed on to CUPS.  You must install at least one
488of these drivers.  (The "ECUPS-HP Printer Driver" is intended for use with
489HP-LIP; otherwise, the standard "ECUPS Printer Driver" is recommended.)</p>
490<dl>
491<dt>ECUPS Printer Driver
492<dd>The standard eCups PostScript driver.  It contains printer definitions
493(used for configuring your desktop printer object) for over 650 printers
494supported by Gutenprint and SpliX.
495<dt>ECUPS-HP Printer Driver
496<dd>An alternate version of the eCups PostScript driver, for use with HP-LIP.
497It contains definitions for over 600 HP-LIP printer models.</dl>
498<p>Both drivers contain the same functionality; the only difference lies in the
499specific printer models defined in each one by default.  In either case, it is
500possible to add support for new printer models by importing PPD files into the
501driver.</p><br>
502
503<p><b><u>Installation</u></b></p>
504<p>Select the packages you need (as described above).  To recap, you require:
505<ul>
506<li>The main CUPS package
507<li>The eCups Port Driver
508<li>Ghostscript
509<li>At least one printer support package (generally Gutenprint, SpliX, or
510HP-LIP).
511<li>The ECUPS printer driver if you are installing Gutenprint, SpliX, or
512foomatic-rip; the ECUPS-HP printer driver if you are installing HP-LIP.
513</ul>
514<p>Install the selected packages.  If the installation is successful, the
515following should result:
516<ul>
517<li>The selected files will be installed to your hard disk, and the WarpIN
518database will be updated accordingly.
519<li>An <i>eCups</i> folder will be created and opened.
520<li>A shadow of the CUPS Daemon program object will be placed into your
521Startup folder.
522<li>The CUPS Daemon will be started in the background.
523</ul><br>
524
525<p><b><u>Upgrade Notes</u></b></p>
526<p>In general, upgrading an existing installation is as simple as installing
527over the previous version.  However, a few specific remarks are in order:
528<ul>
529<li>The installer will attempt to automatically modify the necessary CUPS
530configuration files to point to the installed version of Ghostscript.  If
531you encounter errors while printing, you may wish to double-check the file
532<tt>\cups\lib\cups\filter\pstoraster</tt> to ensure that the Ghostscript
533path is correct.  (If you have installed foomatic or foo2<i>x</i>, you should
534also check the files <tt>\cups\etc\foomatic\filter.conf</tt> and
535<tt>\cups\bin\foo2qpdl-wrapper</tt>.)
536<li>When upgrading to a new release of Gutenprint, any Gutenprint PPD files
537that are in use by CUPS must also be updated.  If you have Perl installed
538(and <tt>perl.exe</tt> is on your PATH), then the installer will attempt to
539run the update utility <tt>cups-genppdupdate</tt> automatically.  In either
540event, you should double-check your printer configuration in the CUPS
541administration GUI to ensure that all Gutenprint PPD files report the
542correct (newly-installed) version.
543</ul><br>
544      </README>
545    </PAGE>
546
547    <PAGE INDEX=2 TYPE=CONTAINER>
548       <NEXTBUTTON TARGET=3>~Next</NEXTBUTTON>
549       <TEXT>Select the components of eCups that you wish to install.
550
551NOTE: You MUST install the CUPS component to the ROOT directory of the target drive (e.g. "H:\" rather than "H:\some-directory").
552
553If you wish to use a previously-installed copy of Ghostscript, you must install CUPS to the same drive.
554       </TEXT>
555    </PAGE>
556
557    <PAGE INDEX=3 TYPE=TEXT>
558       <NEXTBUTTON TARGET=0>I~nstall</NEXTBUTTON>
559       <TEXT>Press "Install" to begin installing eCups</TEXT>
560    </PAGE>
561</BODY>
562
563</WARPIN>