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