https://github.com/openttd/dorpsgek
DorpsGek is an IRC bot, that for example bridges GitHub events to IRC.
https://github.com/openttd/dorpsgek
Last synced: 12 days ago
JSON representation
DorpsGek is an IRC bot, that for example bridges GitHub events to IRC.
- Host: GitHub
- URL: https://github.com/openttd/dorpsgek
- Owner: OpenTTD
- License: gpl-2.0
- Created: 2019-08-31T09:32:04.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-04-01T01:43:00.000Z (about 2 months ago)
- Last Synced: 2025-04-20T14:43:00.304Z (about 1 month ago)
- Language: Python
- Homepage:
- Size: 190 KB
- Stars: 2
- Watchers: 7
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DorpsGek
[](https://github.com/OpenTTD/dorpsgek/blob/main/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](https://github.com/ProgVal/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.
### Running a local server
#### Dependencies
- Python3.11 or higher.
#### Preparing your venv
To start it, you are advised to first create a virtualenv:
```bash
python3 -m venv .env
.env/bin/pip install -r requirements.txt
```#### Starting a local server
You can start the HTTP server by running:
```bash
.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
```bash
docker build -t openttd/dorpsgek:local .
docker run --rm -p 127.0.0.1:8000:80 openttd/dorpsgek:local
```