]> jfr.im git - erebus.git/blame - README.md
config - add delete method
[erebus.git] / README.md
CommitLineData
7c7fddd2
J
1Modular Python{2,3} IRC bot
2===========================
a28e2ae9 3
7c7fddd2
J
4Getting started
5---------------
a28e2ae9 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`
eb2e74a8 10- `./run`
a28e2ae9 11
12Install croncheck.sh in your crontab, if desired.
13`* * * * * /path/to/erebus/croncheck.sh`
14To suppress croncheck.sh from restarting the bot without removing from crontab, `touch dontstart`
15
7c7fddd2 16Output 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 '{}' +`)
a28e2ae9 17
d85e99b6 18The bot targets both Python 2 and 3. It has recently switched to being primarily tested on Python 3.
19Python 2 support will slowly erode due to a lack of testing.
a28e2ae9 20
21Some modules require additional supporting materials, which can be found in `modules/contrib/`.
22
7c7fddd2 23
a28e2ae9 24Module API
76dfe9af 25----------
a28e2ae9 26The 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
28There 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.