added the hooks for internationalisation
[spider.git] / INSTALL
1 DXSPIDER INSTALLATION
2
3 This version of dxspider requires perl5 (it is written entirely in perl5 and
4 makes extensive use of perl objects). This program is known to work with
5 RedHat 5.1 perl5_004.
6
7 In addition to the standard perl5 distribution you will require to load the
8 the following modules:-
9
10 1) CPAN - this has a load of the standard extra stuff in it. To load it type:-
11
12   # perl -MCPAN -e shell
13   cpan> install Bundle::CPAN
14   cpan> q
15   
16   Please sure there were no errors, be particularly careful when installing
17   libwww stuff, I would suggest 'no host lookups' and pressing <space> and
18   enter for each of the offered default hostnames.
19   
20 2) Date::Parse, MLDBM, IO::Select
21   
22   As you have so carefully loaded it, I suggest you use the CPAN system
23   above:-
24   
25   # perl -MCPAN -e shell
26   cpan> install Date::Parse
27   ..
28   ..
29   cpan> install MLDBM
30   ..
31   ..
32   cpan> install IO::Select
33
34   In order to use IO::Select you will need to 
35   
36   # cd /root/.cpan/build/IO-1.20  
37   # make install UNINST=1
38
39   The 'cd' is to the place where CPAN sets up its local cache. The example 
40   shown is for Linux defaults.
41
42 3) select a user to run the cluster as UNDER _NO_ CIRCUMSTANCES USE ROOT.
43
44    I say again DO NOT USE root.
45    
46    Pick an existing user or create a new one. Don't care which. I don't know
47    your security requirements.
48    
49 4) login as root (I shall use 'jim' for any examples).
50
51 5) # cd ~jim
52    # tar xvfz spider-x.x.tar.gz
53    # ln -s ~jim/spider /spider
54    # groupadd -g 251 spider       (or another number)
55    # vi /etc/group                (or your favorite editor)
56      add jim (or whatever) and root to the group spider
57      it should look something like:-
58          
59          spider:x:251:jim,root
60          :x
61    # chown -R jim.spider spider
62    # find . -type d -exec chmod 2775 {} \;
63    # find . -type f -exec chmod 775 {} \;
64    
65    This last step allows various users of group spider to have write
66    access to all the directories. Not really needed for now but will 
67    be useful when web interfaces start to appear.
68
69 6) if you have any users that require network logins, set them up as real
70    users with useradd -m <callsign>. Alter the default .bashrc so that it
71    contains just one line (assuming you use the default bash shell).
72    
73    exec /spider/perl/client.pl <callsign> telnet
74    
75    Don't forget to give them a real password. This is really for network
76    cluster logins. The telnet argument does two things, it sets the EOL 
77    convention to \n rather than AX25's \r and it automatically reduces
78    the privilege of the <callsign> to a 'safe[r]' level.
79    
80 7) for incoming AX25 connections you are expected to have got the AX25
81    utilities setup, tested and working. See the AX25-HOWTO for more info
82    on this - it really is outside the scope of this document. I would 
83    recommend using ax25-utils-2.1.42a-5.i386.rpm or above as a starting 
84    point. DXSpider uses ax25d for incoming connections. You need to have 
85    entries like this:-
86    
87    [ether]                                                                         
88    NOCALL   * * * * * *  L                                                         
89    default  * * * * * *  - jim /spider/perl/client.pl client.pl %u ax25
90    <bbs>
91    NOCALL   * * * * * *  L                                                         
92    default  * * * * * *  - jim /spider/perl/client.pl client.pl %u ax25
93
94    where ether and bbs are appropriate KNOWN WORKING axport and nrport 
95    names respectively.
96    
97    Obviously you can use different names, callsigns or whatever for your 
98    purposes, but it is up to you to get it to work. 
99    
100    Note I use BPQ over ethernet which why I have the port names I have.
101    
102 8) login as jim (or whatever)
103    $ startx                     (much easier to use X)
104    $ cd /spider
105    $ mkdir local
106    $ mkdir local_cmd
107    $ cp perl/DXVars.pm local
108    $ cd local
109    $ vi DXVars.pm
110    
111    now alter your cluster callsign, sysop callsign and other user info 
112    as you wish. Note that this a perl file which will parsed and executed
113    as part of the cluster. If you get it wrong then perl will complain 
114    when you start the cluster process.
115    
116    PLEASE USE CAPITAL LETTERS FOR CALLSIGNS
117    
118    DON'T alter the DXVars.pm (or any other file) in /spider/perl, they are
119    overwritten with every release. Any files or commands you place in
120    /spider/local or /spider/local_cmd will automagically be used in preference
121    to the ones in /spider/perl EVEN whilst the cluster is running!
122    
123    :x
124    
125    $ cd ../perl
126
127    now create the basic user file with you as the sysop.
128
129    $ create_sysop.pl
130
131    try and run the cluster program and see whether all the various rivets are
132    flying in approximate formation...
133
134    $ cluster.pl
135    DXSpider DX Cluster Version x.x
136    Copyright (c) 1998 Dirk Koopman G1TLH
137    loading prefixes ...
138    loading band data ...
139    loading user file system ...
140    starting listener ...
141    reading existing message headers
142    reading cron jobs
143    orft we jolly well go ...
144    
145    
146 9) now log in again or start another rxvt or xterm
147    $ client.pl
148    
149    you should now see a normal cluster prompt.
150    
151    at the cluster prompt:-
152    
153    G1JIM de GB7JIM 10-Sep-98 1000Z> set/node GB7XXX
154    
155    for every dxcluster you expect to connect to or from.
156
157    G1JIM de GB7JIM 10-Sep-98 1001Z> shutdown
158    
159    The cluster and the client should both go back to prompts
160    
161    Restart the cluster.
162    
163    The callsigns should be the sysop callsign and the cluster callsign
164    as per your modified DXVars.pm. You can check that the cluster 
165    connections will work by:-
166    
167    $ client.pl gb7xxx      (doesn't have to be uppercase).
168    PC38^GB7JIM^~           <- the cluster thinks this is a cluster
169    ^C                      <- to get out
170    
171    
172    
173
174    
175