DorpsGek is an IRC bot with several tasks:
- It bridges GitHub Events to IRC
- It handles channel moderation (
@op,@kick, ..) - It shows when someone was last seen (
@seen) - It logs channels for backlog reading
This server is based on Limnoria.
Because of many issues and shortcomings in Limnoria, there are some quirks in this codebase.
For example, configuration is generated by the dorpsgek module, as otherwise it is nearly impossible to bring secrets inside the bot without storing them inside the git repository.
It is build and tested with Python 3.11.
- Python3.11 or higher.
To start it, you are advised to first create a virtualenv:
python3 -m venv .env
.env/bin/pip install -r requirements.txtYou can start the HTTP server by running:
.env/bin/python -m dorpsgek --port 8000 --channel dorpsgek-testThis will start the IRC bot and it will join #dorpsgek-test on OFTC.
See --help for further configuration.
Although you can start supybot DorpsGek-generated.conf, we strongly suggest to always use the dorpsgek module as bootstrap for starting the bot.
docker build -t openttd/dorpsgek:local .
docker run --rm -p 127.0.0.1:8000:80 openttd/dorpsgek:local