054db5cd7a43bb3503f1f2e91eafa755a004dcfd
[spider.git] / sgml / wininstallation.sgml
1 <!doctype linuxdoc system>
2
3 <article>
4
5 <!-- Title information -->
6
7 <title>The Installation Guide for DXSpider under Microsoft Windows</title>
8 <author>Iain Philipps, G0RDI (g0rdi@77hz.com)</author>
9 <date>$Date$ $Revision$</date>
10 <abstract>
11 DX Spider under Microsoft Windows &trade;
12 </abstract>
13
14 <!-- Table of contents -->
15 <toc>
16
17 <!-- Begin the document -->
18
19 <sect>Introduction
20
21 <P>
22 <bf>IMPORTANT:</bf> 
23
24 What you'll be left with once you've followed these instructions
25 is (hopefully) a working DX Spider v1.47 system that is capable
26 of accepting or originating "internet" connections, plus inbound
27 AX.25 and TCP/IP radio connections. If the absence of outbound
28 radio connections is a serious limitation for you, it would be
29 better for you to wait a couple more weeks until this support has
30 been added.
31
32 On the other hand, you may have an enquiring mind, or better yet,
33 may be looking for a useful way of connecting your current
34 (perhaps) AK1A cluster "to the internet" via some networking
35 mechanism (BPQEther, etc) or other. I won't be producing
36 instructions for the latter case, because I don't have an AK1A to
37 play with. But someone might ...
38
39 Whatever, this document is intended to get you started with DX
40 Spider in a Microsoft Windows &trade; environment. It's not
41 intended to teach you anything other than how to perform a
42 minimum configuration of a DX Spider installation and have it
43 able to connect across "the internet" to other DX Clusters, while
44 accepting inbound TELNET and radio connections.
45
46 <sect1>The requirements
47
48 <P>
49 The very first things you're going to need are (in order of
50 importance):-
51
52 <itemize>
53 <item>A cup of good, strong tea
54 <item>A supported Windows platform with an internet connection so you can
55 download the necessary software bits and bobs directly to it. There are other ways, but this is preferable.
56 <item>Another cup of good, strong tea
57 <item>If all goes according to plan, about an hour to spare
58 <item>Plenty of good, strong tea
59 </itemize>
60
61 <sect1>The system
62
63 <P>
64 The platform I used to generate these instructions was a
65 "vanilla" Microsoft Windows Me 4.90.3000 system, with a 700MHz
66 AMD Athlon processor and 96 Mb memory. I've also personally
67 verified that it runs on my laptop (Pentium 266MHz, 32 Mb memory,
68 Windows 98 SE v4.10.2222 A) and a computer that I assembled from
69 a random pile of junk (AMD K6-2 333MHz, 64 Mb memory, Windows 98
70 v4.10.1998). As a result, I have reason to believe that what I'm
71 about to describe will perform equally on any 32-bit MS Windows
72 environment with 32 Mb of memory.
73
74 Because of the changes that have recently been made to the core
75 "cluster.pl" module and the introduction of a very lightweight
76 "winclient.pl", I have a sneaking suspicion that this will now
77 run on any platform that has reasonably complete support for
78 Perl. Is there someone out there with both an enquiring mind and
79 (say) a Macintosh, for instance?
80
81 Please bear in mind, though, that my instructions relate solely
82 to how to get this going under a Microsoft Windows environment,
83 and I have zero intention of trying to make them say otherwise.
84
85 <sect1>Perl
86
87 <P>
88 Install your chosen Perl environment. Unless you have a very good
89 reason for not doing so, I strongly suggest that you use
90 ActivePerl v5.6. For my testing & development, I used build 623.
91 You can get this from:- <htmlurl
92 url="http://www.activestate.com/Products/ActivePerl/Download.html"
93 name="http://www.activestate.com/Products/ActivePerl/Download.html">
94
95 You will need to choose either the MSI or the AS package. My
96 recommendation is that you choose the MSI package and deal with
97 the consequences if your system isn't equipped with support for
98 the latest MS Installer; you'll be better off in the long run.
99 The build 623 download is 7,460 KB, so now is a really good time
100 to have some tea if you're on a slow dial-up connection.
101
102 During installation, please ensure that you do choose the options
103 to "Add Perl to the PATH environment variable" and "Create Perl
104 file extension association"; it will make your life so much
105 easier. Once the installation is finished, be sure to reboot your
106 PC. You probably won't be told anywhere else that this needs to
107 be done now, but it does. Really.
108
109 Once you've rebooted, open a "DOS box" (Start > Run > command
110 might do it, if you can't find it elsewhere) and from wherever it
111 lands, type PERL -v &lt;ENTER&gt; (it's better if that's a lower-case
112 'v', because an upper-case 'V' means something else. You should
113 be rewarded with some interesting information about your Perl
114 installation. If you're not, you must go back to the beginning
115 and discover what went wrong and fix it. It's pointless to
116 proceed unless this simple check is passed. Assuming it did work,
117 you may now move on.
118
119 <sect1>Additional packages
120
121 <P>
122 Some extensions ("packages") need to be added to the base Perl
123 distribution, and we'll do this next. If you're using the Perl I
124 recommended, and don't know any better for yourself, then just
125 blindly following these instructions will work just fine. If that
126 didn't describe you, then you're on your own.
127
128 Visit the following URL:
129
130 <htmlurl url="http://www.activestate.com/PPMPackages/zips/6xx-builds-only/"
131 name="http://www.activestate.com/PPMPackages/zips/6xx-builds-only/">
132
133 and download the following files:-
134
135 <tscreen><verb>
136 Data-Dumper.zip
137 Net-Telnet.zip
138 TimeDate.zip
139 Time-HiRes.zip
140 DB_File.zip
141 </verb></tscreen>
142
143 Make yourself a convenient directory to unpack all of these zip
144 files into (I put mine in "D:\ppm>") and do the following (the
145 bits you type in are blue ). Note that where these files land
146 will be directly related to where you chose to install your
147 ActivePerl (mine, as you can probably guess from what follows,
148 went into "D:\Perl"):-
149
150 <tscreen><verb>
151 D:\ppm>ppm install Data-Dumper.ppd
152 Installing package 'Data-Dumper.ppd'
153 Installing D:\Perl\site\lib\auto\Data\Dumper\Dumper.bs
154 Installing D:\Perl\site\lib\auto\Data\Dumper\Dumper.dll
155 Installing D:\Perl\site\lib\auto\Data\Dumper\Dumper.exp
156 Installing D:\Perl\site\lib\auto\Data\Dumper\Dumper.lib
157 Installing D:\Perl\html\site\lib\auto\Data\Dumper\Dumper.html
158 Installing D:\Perl\site\lib\Data\Dumper\Dumper.pm
159 Writing D:\Perl\site\lib\auto\Data\Dumper\Dumper.packlist
160 D:\ppm>
161 </verb></tscreen>
162
163 I'm not going to bother you with exhaustive details of the rest
164 of them, but suffice it to say you need to:
165
166 <tscreen><verb>
167 ppm install DB_File.ppd
168 ppm install Net-Telnet.ppd
169 ppm install TimeDate.ppd
170 ppm install Time-HiRes.ppd
171 </verb></tscreen>
172
173 If all that seemed to work OK, time to move along. Before anyone
174 who is familiar with PPM tells me that we didn't need to download
175 and keep those files locally, I knew that. I also knew that PPM
176 is sometimes awkward to configure via firewalls, and that
177 sometimes the repositories don't always work the way we'd hope. I
178 do it that way because it suits me.
179
180 <sect1>Getting Spider
181
182 <P>
183 Get the current version of the DX Spider distribution. This needs
184 to be v1.47 or later. You've got two ways (currently) of getting
185 this; either get a CVS update from sourceforge (if you don't know
186 what this is, then it isn't for you) or get my package from:-
187
188 <htmlurl url="http://www.dcc.rsgb.org/WinSpider.zip" name="http://www.dcc.rsgb.org/WinSpider.zip">
189
190 If you went down the CVS route, then everything will be nicely
191 set out on your local disk. If you got the ZIP file, unpack it to
192 somewhere convenient. The following examples assume that you put
193 it on drive "C:\", for convenience.
194
195 <bf>NOTE:</bf> This distribution method will go away as soon as the first
196 v1.47 tarball is released. You can use WinZip to unpack that, and
197 my life will be made easier by not needing to keep this .ZIP file
198 updated.
199
200 <sect>Installing the software
201
202 <P>
203 Ensure that your CVS session or your unZIPped file have left you
204 with a directory "C:\spider\local"; if not, go to "C:\spider\"
205 and create one. If "C:\spider" is missing, go back and figure out
206 why, because it shouldn't be.
207
208 Now create your own local copy of the DXVars.pm file by:-
209
210 <tscreen><verb>
211 copy c:\spider\perl\DXVars.pm.issue
212 c:\spider\local\DXVars.pm
213 </verb></tscreen>
214
215 Now you'll need to edit this file using a text editor. If nothing
216 else, you can simply
217
218 <tscreen><verb>
219 cd \spider\local
220 </verb></tscreen>
221
222 and then
223
224 <tscreen><verb>
225 notepad DXVars.pm
226 </verb></tscreen>
227
228 to bring up an editor window containing the file. As an absolute
229 minimum you must adjust the following items in DXVars.pm:-
230
231 <itemize>
232 <item> $mycall  - Should hold the callsign of your DX Cluster
233 <item> $myname  - The SysOp's first name
234 <item> $myalias - the SysOp's callsign. Cannot be the same as $mycall!
235 </itemize>
236
237 You really also ought to update the $mylatitude, $mylongitude,
238 $myqth and $myemail variables. And unless you are absolutely
239 certain you know what you're doing, you should change nothing
240 else in this file.
241
242 <sect1>The AGW packet engine
243
244 <P>
245 On the assumption that you'll be using the SV2AGW Packet Engine
246 to interface your radios to the cluster, you should now create
247 your own local copy of AGWConnect.pm by:-
248
249 <tscreen><verb>
250 copy c:\spider\perl\AGWConnect.pm
251 c:\spider\local\AGWConnect.pm
252 </verb></tscreen>
253
254 and then
255
256 <tscreen><verb>
257 notepad AGWConnect.pm
258 </verb></tscreen>
259
260 to bring up an editor window containing the file. You must
261 consider adjusting the following items in AGWConnect.pm:-
262
263 <itemize>
264 <item>$enable - set to '1' to enable AGWPE interface 
265 <item>$login  - the login ID you chose when you set up the SV2AGW security :-)
266 <item>$passwd - password that matches $login
267 </itemize>
268
269 <sect1>Setting up the initial user files
270
271 <P>
272 Next you need to create the initial user files, etc. A tool is
273 supplied which will do this for you. To run the tool:-
274
275 <tscreen><verb>
276 cd \spider\perl
277 perl create_sysop.pl
278 </verb></tscreen>
279
280 If all goes according to plan, you will see no output from this
281 program, and after a brief wait, your DOS prompt will be
282 returned.
283
284 Depending on how brave you are, you might now care to try the
285 following:-
286
287 <tscreen><verb>
288 perl cluster.pl
289 </verb></tscreen>
290
291 If you did everything you were told, your DOS window will now
292 hold a display which looks something like:-
293
294 <tscreen><verb>
295 DXSpider DX Cluster Version 1.47
296 Copyright (c) 1998-2001 Dirk Koopman G1TLH
297 loading prefixes ...
298 loading band data ...
299 loading user file system ...
300 starting listeners ...
301 Internal port: localhost 27754
302 load badwords: Ok
303 reading in duplicate spot and WWV info ...
304 reading existing message headers ...
305 load badmsg: Ok
306 load forward: Ok
307 load swop: Ok
308 @msg = 0 before delete
309 @msg = 0 after delete
310 reading cron jobs ...v cron: reading /spider/cmd/crontab
311 cron: adding 1 0 * * 0
312 DXUser::export("$main::data/user_asc")
313 reading database descriptors ...
314 doing local initialisation ...
315 orft we jolly well go ...
316 queue msg (0)
317 </verb></tscreen>
318
319 Now, if that's what you've got, you are very nearly home and dry
320 (in as far as these particular experiments are concerned, anyhow)
321
322 To access your new cluster (from the local machine) find yourself another
323 "DOS box" and do the following:-
324
325 <tscreen><verb>
326 cd \spider\perl
327 perl winclient.pl
328 </verb></tscreen>
329
330 If you are rewarded with a display which looks something like:-
331
332 <tscreen><verb>
333 Hello Iain, this is GB7SJP in Amersham, Bucks running DXSpider V1.47
334 Cluster: 1 nodes, 1 local / 1 total users Max users 2 Uptime 0 00:00
335 M0ADI de GB7SJP 4-Mar-2001 1511Z >
336 </verb></tscreen>
337
338 You've arrived. Try some commands, and see how they feel. (In
339 case you were wondering, "Iain", "M0ADI" and "GB7SJP" all came
340 from the version of DXVars.pm that was on the machine when I
341 started the winclient.pl)
342
343 <sect1>Incoming telnets
344
345 <P>
346 If you want to enable inbound "TELNET" connections, you've got a
347 little more work to do. From a handy "DOS box" that's not doing
348 anything else, do the following:-
349
350 <tscreen><verb>
351 copy \spider\perl\listeners.pm \spider\local
352 cd \spider\local
353 notepad listeners.pm
354 </verb></tscreen>
355
356 The following lines need attention:-
357
358 <tscreen><verb>
359 ["0.0.0.0", 7300],
360 </verb></tscreen>
361
362 On my machine, I've simply uncommented the "0.0.0.0" entry by
363 removing the '#' from the front of the line. 
364
365 If you don't have a static hostname for your machine, and you
366 intend to allow folk to connect to your machine across the
367 internet, then I'd suggest you pay a visit to www.dyndns.org and
368 create one for yourself. While it's free, it will take a modest
369 an amount of effort on your part to read, understand and
370 implement what needs to be done to set this up.
371
372 <sect1>Connecting to other clusters
373
374 <P>
375 If you want to connect this to another cluster, then you'll want
376 to negotiate a link with someone. For experimental purposes, I'm
377 happy to allow folk to connect to GB7DXA (spud.ath.cx), on the
378 understanding that the system may or may not be there and may or
379 may not be connected to anything particularly useful at any given
380 moment. Contact me by Email if you want me to set up a connection
381 for you.
382
383 <it>Last updated: 15-Apr-01</it>
384
385 </article>