soju forked to be LESS SHIT
5d46dd72a4
Add support for MONITOR in single-upstream mode. Each downstream has its own set of monitored targets. These sets are merged together to compute the MONITOR commands to send to upstream. Each upstream has a set of monitored targets accepted by the server alongside with their status (online/offline). This is used to directly send replies to downstreams adding a target another downstream has already added, and send MONITOR S[TATUS] replies. Co-authored-by: delthas <delthas@dille.cc> |
||
---|---|---|
cmd | ||
config | ||
contrib | ||
doc | ||
.build.yml | ||
.editorconfig | ||
.gitignore | ||
bridge.go | ||
certfp.go | ||
config.in | ||
conn.go | ||
db_postgres_test.go | ||
db_postgres.go | ||
db_sqlite_test.go | ||
db_sqlite.go | ||
db.go | ||
downstream.go | ||
go.mod | ||
go.sum | ||
ident.go | ||
irc.go | ||
LICENSE | ||
Makefile | ||
msgstore_fs.go | ||
msgstore_memory.go | ||
msgstore.go | ||
net_go113.go | ||
net_go116.go | ||
README.md | ||
server_test.go | ||
server.go | ||
service_test.go | ||
service.go | ||
upstream.go | ||
user.go |
soju
A user-friendly IRC bouncer.
- Multi-user
- Support multiple clients for a single user, with proper backlog synchronization
- Support connecting to multiple upstream servers via a single IRC connection to the bouncer
Usage
Building and installing
Dependencies:
- Go
- a C89 compiler (for SQLite)
- scdoc (optional, for man pages)
For end users, a Makefile
is provided:
make
sudo make install
For development, you can use go run ./cmd/soju
as usual.
To link with the system libsqlite3, use make GOFLAGS="-tags=libsqlite3"
.
Contributing
Send patches on the mailing list or on GitHub, report bugs on the issue tracker. Discuss in #soju on Libera Chat.
License
AGPLv3, see LICENSE.
Copyright (C) 2020 The soju Contributors