Skip to content

Latest commit

 

History

History
51 lines (34 loc) · 1.51 KB

README.md

File metadata and controls

51 lines (34 loc) · 1.51 KB

DorpsGek

GitHub License

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

Development

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.8.

Running a local server

Dependencies

  • Python3.8 or higher.

Preparing your venv

To start it, you are advised to first create a virtualenv:

python3 -m venv .env
.env/bin/pip install -r requirements.txt

Starting a local server

You can start the HTTP server by running:

.env/bin/python -m dorpsgek --port 8000 --channel dorpsgek-test

This 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.

Running via docker

docker build -t openttd/dorpsgek:local .
docker run --rm -p 127.0.0.1:8000:80 openttd/dorpsgek:local