aboutsummaryrefslogtreecommitdiffstats
path: root/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL')
-rw-r--r--INSTALL104
1 files changed, 104 insertions, 0 deletions
diff --git a/INSTALL b/INSTALL
new file mode 100644
index 0000000..60384e8
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,104 @@
+Make
+----
+
+ Quick Start:
+
+ 1. ./configure
+ 2. make
+ 3. make install
+ 4. cd $HOME/hopm
+ 5. edit $HOME/hopm/etc/hopm.conf to suit
+ 6. $HOME/hopm/bin/hopm
+
+ In detail:
+
+ ./configure has a few options which you might need:
+
+ --prefix Sets the root of HOPM's install. By default this
+ is $HOME/hopm, with binaries going in
+ $HOME/hopm/bin, config in $HOME/hopm/etc and logs
+ in $HOME/hopm/var/log.
+
+ --bindir Specify the place to install binaries. By default
+ this is $PREFIX/bin. (see --prefix, above)
+
+ --localstatedir Specify the place where logs and PID files will be
+ kept. By default this is $PREFIX/var. (see
+ --prefix, above)
+
+ configure has many other options, see ./configure --help for more
+ details.
+
+ There are some further options in options.h which may be moved to
+ configure at some point. If you think you need to change these then we
+ assume you've read the code and know why.
+
+ Compilation of HOPM requires GNU Make (usually 'gmake' on BSD systems).
+
+Configuration
+-------------
+
+ Edit hopm.conf as needed. Most options are self explanatory and
+ contain a short description.
+
+ Please take note of the target_string which may be different for your ircd.
+ Because we check that we really have connected back onto IRC, HOPM needs to
+ be told what your ircd says during the first part of a connection. If you're
+ not sure, the best thing to do is telnet to your ircd from your shell, e.g.:
+
+ [miwob@svn ~]$ telnet irc.ircd-hybrid.org 6667
+ Trying 104.254.244.55...
+ Connected to irc.ircd-hybrid.org (104.254.244.55).
+ Escape character is '^]'.
+ :irc.ircd-hybrid.org NOTICE * :*** Looking up your hostname
+ :irc.ircd-hybrid.org NOTICE * :*** Checking Ident
+ :irc.ircd-hybrid.org NOTICE * :*** No Ident response
+ :irc.ircd-hybrid.org NOTICE * :*** Found your hostname
+
+ Just try to pick something in the first line of IRC output (for efficiency
+ reasons).
+
+ If you don't run an ircd at all (some people are using bopchecker for spam
+ checking, etc.) then you're going to have to use a bit of ingenuity. You
+ basically need any port on your own machine that responds with a plain text
+ challenge that is unlikely to appear anywhere else.
+
+ NNTP servers are good examples because they give a banner. Don't be
+ tempted to use port 25 (SMTP) because although it looks like just what you
+ want, too many networks transparent proxy outgoing port 25 connections to
+ their own smart host, so you'll miss many proxies.
+
+ The same applies if you run some kind of ircd that has no form of
+ banner at all (ircnet??). Worst case is you'll need to make something
+ listen on one of your ports that gives some predictable string.
+
+ Remember that your users might run their own ircd on some typical proxy
+ port like 8080! If you can, put a banner in that contains your own
+ server name, so that it is unlikely to be duplicated.
+
+
+Execution
+---------
+
+ You can run HOPM from any directory, the path to its config file is
+ compiled into it. The bot will fork and connect to the IRC server
+ immediately. Any errors and debug information can be found in
+ $PREFIX/var/log/hopm.log.
+
+ You can tell HOPM to use a different config file with the -c argument,
+ this works the same way that wgmon's -c argument does, just give the name
+ of the config file not including the ".conf". This also affects the log
+ and PID files i.e. ./hopm -c myserver will read from myserver.conf, log to
+ myserver.log and write PID to myserver.pid. If you do not use -c, the
+ files hopm.conf, hopm.log and hopm.pid will be used by default. This can
+ be altered in options.h. This is useful for running multiple HOPM on
+ the same host.
+
+ Further debugging can be enabled by using one or more -d switches. One or
+ more -d switches will cause the bot to not fork on startup, and it will
+ send all log messages to stderr (i.e., your terminal) instead of its
+ logfile. It will also cause extra debugging information that is not
+ normally of interest to be sent to stderr. Two or more -d switches will
+ enable logging of all IRC traffic received and sent.
+
+ The -c and -d arguments may appear in any order.