Asyncio IRC bot with decorator-based plugin system. Zero external dependencies, Python 3.11+. - IRC protocol: message parsing, formatting, async TCP/TLS connection - Plugin system: @command and @event decorators, file-based loading - Bot orchestrator: connect, dispatch, reconnect, nick recovery - CLI: argparse entry point with TOML config - Built-in plugins: ping, help, version, echo - 28 unit tests for parser and plugin system
53 lines
666 B
Markdown
53 lines
666 B
Markdown
# Installation
|
|
|
|
## Prerequisites
|
|
|
|
- Python 3.11+
|
|
- git
|
|
|
|
## Setup
|
|
|
|
```bash
|
|
cd ~/git/derp
|
|
make install
|
|
```
|
|
|
|
This creates a `.venv`, installs derp in editable mode, and adds dev tools.
|
|
|
|
## Symlink
|
|
|
|
```bash
|
|
make link
|
|
```
|
|
|
|
Installs `derp` to `~/.local/bin/`. Verify:
|
|
|
|
```bash
|
|
which derp
|
|
derp --version
|
|
```
|
|
|
|
## Manual Install
|
|
|
|
```bash
|
|
python3 -m venv .venv
|
|
source .venv/bin/activate
|
|
pip install -e .
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Copy and edit the default config:
|
|
|
|
```bash
|
|
cp config/derp.toml ~/.config/derp/derp.toml
|
|
# Edit server, nick, channels
|
|
```
|
|
|
|
Config search order:
|
|
|
|
1. Path given via `--config`
|
|
2. `./config/derp.toml`
|
|
3. `~/.config/derp/derp.toml`
|
|
4. Built-in defaults
|