]> jfr.im git - erebus.git/blob - README.md
urls - remove broken APIs
[erebus.git] / README.md
1 Modular Python{2,3} IRC bot
2 ===========================
3
4 Getting started
5 ---------------
6 - `cp bot.config.example bot.config`
7 - `vim bot.config`
8 - Create a MySQL database, i.e. `CREATE DATABASE foo; GRANT ALL ON foo.* TO ...`
9 - `mysql <dump.sql`
10 - `./run`
11
12 Install croncheck.sh in your crontab, if desired.
13 `* * * * * /path/to/erebus/croncheck.sh`
14 To suppress croncheck.sh from restarting the bot without removing from crontab, `touch dontstart`
15
16 Output will be placed in `logfile`, which is rotated to `oldlogs/`. (I strongly recommend `rm oldlogs/*` as a weekly crontab entry. `@weekly find /path/to/erebus/oldlogs/ -mtime 7 -execdir rm '{}' +`)
17
18 The bot targets both Python 2 and 3. It has recently switched to being primarily tested on Python 3.
19 Python 2 support will slowly erode due to a lack of testing.
20
21 Some modules require additional supporting materials, which can be found in `modules/contrib/`.
22
23
24 Module API
25 ----------
26 The module API has largely remained backwards-compatible and likely will remain so into the future. However, it is still currently unstable, primarily because it's only tested with the included modules. If you find a change was introduced which breaks something you relied on, please raise a bug.
27
28 There is currently no documentation as to... well, anything. A good starter template for a new module is `modules/eval.py`. `modules/control.py` uses a significant subset of the API features available. `modules/foo.py` is intended as a demonstration module, and documents some of the major features.