Initial import (again)
[srvx.git] / INSTALL
1               srvx Installation Instructions
2
3 Introduction:
4 ----------
5 If you encounter any problems compiling/running srvx, please make sure
6 you have followed the directions in this file correctly and that all
7 of the requirements listed below are met.
8
9 If the problem persists, report it to one (or all) of the coders
10 listed in the AUTHORS file. Please try to include ALL relevant
11 information about the error/bug, including anything out of the
12 ordinary reported from make and the appropriate entries from the log
13 files.
14
15 Requirements:
16 ----------
17 This release of srvx (1.2) only supports the Undernet P10 and Bahamut
18 protocols and is known to link with ircu/Universal (u2.10.09),
19 ircu/Undernet (u2.10.10, u2.10.11), ircu-lain, and Bahamut 1.4.32. It
20 does not support hybrid, Unreal, or any other ircd not listed. Should
21 you find other compatible ircds, please let us know.
22
23 srvx is known to compile on the following systems as long as you
24 are using GNU make (make on Linux, gmake on many other systems):
25
26   * Linux (libc5 or glibc2); glibc2.1 recommended+    (SPARC, ALPHA, x86, PPC)
27   * FreeBSD 4.x; tested on 4.2-RELEASE and 4.2-STABLE (SPARC, x86)
28   * FreeBSD 3.x; tested on 3.3-RELEASE and 3.4-STABLE (SPARC, x86)
29   * FreeBSD 2.x; tested on 2.2.8-RELEASE              (SPARC, x86)
30   * NetBSD 1.6+;                                      (ALPHA, MIPS, x86)
31   * SunOS 5.x; tested on 5.8                          (SPARC, x86)
32   * OpenBSD 2.x; tested on 2.8                        (x86)
33   * BSDi 4.x; tested on 4.0.1                         (x86)
34   * CYGWIN 1.1.x and 1.3.x; tested on 1.1.8           (x86)
35
36 For the Linux kernel, srvx has been tested on Debian 2.x - 3.x, and
37 Redhat 5.x - 8.x.
38
39 srvx should compile on other system types also.  If you have success
40 on other platforms/archs or problems on any platforms/archs, please
41 contact the authors to let us know.
42
43 gcc 2.96 tends to emit spurious warnings; before reporting any
44 compiler warnings from it, make sure you are using the most recent
45 version of it or try using an official release of gcc.
46
47 You may also have trouble unless your compiler's C preprocessor
48 supports ISO C99 varadic macros.  gcc is the compiler we use for
49 almost all our testing, and we recommend it for use with srvx.
50
51 Quick Install:
52 ----------
53 $ ./configure
54     NOTE: The protocol the resulting srvx binary will support is
55     determined by the configure script. The P10 protocol is the
56     default; if you would like to link to Bahamut, you must pass
57     the --with-protocol=bahamut flag to the configure script:
58     $ ./configure --with-protocol=bahamut
59 $ make
60 $ ${EDITOR} srvx.conf
61     NOTE: You may want to copy srvx.conf.example to srvx.conf and
62     edit that.
63 $ ./srvx
64
65 Compiling:
66 ----------
67   1) Enter the root directory of the srvx tree.  If installation is done
68      from outside of it, it may cause problems during compile, or during
69      runtime.
70
71   2) Run the configure script (sh configure), it will verify that your
72      system will have the resources needed for srvx to compile.  If you
73      would like to change the path where srvx will be installed to,
74      execute configure with the --prefix=/path option.  The default path
75      is ~/srvx-X.X.X/, with the X's representing the version.  See the
76      note in "Quick Install" if you are linking to Bahamut.
77
78   3) On some systems you may need to edit the Makefile in order for
79      it to compile correctly.  Includes, and other such things may
80      reside in other directories.  Most likely the Makefile won't require
81      any modifications.
82
83   4) You may optionally edit config.h in case the configure script made a
84      mistake.
85
86   5) Execute the "make" command to begin compiling.  If you encounter any
87      uncorrectable errors/warnings, please scroll up to the introduction
88      section and follow the instructions.
89
90   6) You may now either type "make install" to install it to your
91      installation path, or work from your build directory, either is fine.
92
93   7) Copy sockcheck.conf.example to sockcheck.conf (and edit to add
94      new proxy types, if you wish).
95
96   8) Copy srvx.conf.example to srvx.conf and edit to suit your
97      needs. Errors in the configuration file will be logged to
98      main.log (and if srvx is running in the foreground, printed to
99      stdout) when you start the daemon. If you disable nick ownership
100      or enable the email features, you should copy srvx.conf to the
101      src directory and re-run make; this will regenerate the help
102      files (especially for NickServ) to include the appropriate
103      entries.
104
105      You can also do this by hand using the expnhelp program in src:
106        ./src/expnhelp < nickserv.help.m4 > nickserv.help
107
108   9) You can now begin using your service bots.  You can debug by
109      running it with '-fV', it will not background itself, and it
110      will be fairly verbose if you gave the configure script the
111      --enable-debug flag. If you would like to run in the foreground
112      with no verbosity, use the '-f' flag. If you just want to run it,
113      execute srvx without any flags.
114
115  10) Once you have srvx started, you'll need to register a NickServ
116      account:
117        /msg NickServ@services.irc.com register <account> <password>
118      Make sure that you register the first account -- it is
119      automatically granted certain privileges and gives you root-level
120      access to OpServ once you are opered up.
121
122  11) New operators can be given access to OpServ through NickServ's
123      (or whatever you've named the nick/authentication service) oset
124      command:
125        /msg NickServ oset <nick>|*<account> level <level>
126      Levels are generally beween 0 and 1000 by convention; higher
127      numbers correspond to more access. You can also add helpers
128      (users with extra privileges such as security override in
129      traditional configurations) through NickServ:
130        /msg NickServ oset <nick>|*<account> flags +H
131
132 End of file, INSTALL.
133
134 -Jedi (jedi@turboflux.net)