Join & Part abilities now require you to be an admin
[infinity.git] / INSTALL
blobe9a45d84983d8cd0bf29de35082a58a6b36be045
1 Prerequisites:
2  1. ghc >= 6.8
3  2. irc >= 0.4
4  3. quickcheck >= 2.0
5  4. binary >= 0.4
7 Optional:
8  1. hs-plugins >= 1.1
10 building and running the bot itself
11 ===================================
13 Required:
15 1. ghc 6.8 may be downloaded from http://haskell.org/ghc/
17 2. irc >= 0.4 may be downloaded from http://hackage.haskell.org
19 3. quickcheck >= 2.0 may be downloaded by running
20    `darcs get http://code.haskell.org/QuickCheck/`
21    and building and installing from there.
23 4. binary >= 0.4 may be downloaded from http://hackage.haskell.org
26 Optional:
28 1. hs-plugins 1.1, which works with ghc 6.8, may be downloaded by simply
29 doing:
31 darcs get http://code.haskell.org/~dons/code/hs-plugins/
33 NOTE: this repo is changing to accomodate windows, and therefore I make
34 no guarantee that it will be working for you at any given time. However,
35 the latest repo as of this writing (1-8-08) works fine with ghc 6.8 under
36 linux.
39 building the bot itself
40 -----------------------
41 After you have installed the above, you may configure infinity
42 in one of two ways:
44 $ runghc Setup.hs configure
46 Or:
48 $ runghc Setup.hs configure -fdynamic
50 If you configure the second way, you will configure infinity to
51 create a 'dynamic build,' meaning the bot can be reloaded in
52 situ and save and preserve state. To use this, you must have
53 hs-plugins >= 1.1 installed.
55 If you configure with no special flag flag, it will configure a
56 static build, and the bot will not have the reboot feature enabled.
57 For this build, you do not need hs-plugins.
59 After you have configured it, you may build by simply doing:
61 $ runghc Setup.hs build
63 Do not bother installing, as infinity depends on being in 
64 the base directory. The build system will take care of this.
66 after building, there should be a binary named 'infinity' in
67 the base dir. at this point, you may just run.
69 $ ./infinity
71 If it is a dynamic build, then you can reload your configuration,
72 otherwise you will simply have to run the build process again.
74 you may also run:
76 $ ./infinity -offline
78 this will run an 'offline' version of infinity which is basically
79 just a REPL for plugin commands. this requires readline to be installed,
80 but it should come with any ghc installation on a *nix system.
82 in order to clean out the entire directory, including executable,
83 you may do
85 $ runghc Setup.hs clean