soju forked to be LESS SHIT
Go to file
Simon Ser 5c819a2c6c Disallow ',' in nicknames
It breaks lists as in `PRIVMSG a,b,c :foo`.
2021-12-06 19:23:28 +01:00
cmd Add Logger.Debugf 2021-12-06 18:35:49 +01:00
config Add per-user IP addresses 2021-11-17 15:07:58 +01:00
contrib contrib/clients: WeeChat 3.3 enables all IRCv3 caps by default 2021-11-18 21:05:58 +01:00
doc Add "sasl status" command 2021-12-01 11:03:27 +01:00
.build.yml ci: switch to alpine/latest 2021-10-15 09:59:53 +02:00
.editorconfig
.gitignore
LICENSE
Makefile build: don't clobber config file 2021-10-08 09:11:31 +02:00
README.md
bridge.go
certfp.go Split CertFP logic into separate file 2021-10-08 09:47:25 +02:00
config.in
conn.go Downgrade conn log messages to debug 2021-12-06 18:40:37 +01:00
db.go Add Prometheus instrumentation for the database 2021-11-17 15:58:19 +01:00
db_postgres.go Add Prometheus instrumentation for the database 2021-11-17 15:58:19 +01:00
db_postgres_test.go db_postgres: add migration test 2021-10-11 15:55:07 +02:00
db_sqlite.go Add Prometheus instrumentation for the database 2021-11-17 15:58:19 +01:00
db_sqlite_test.go db_sqlite: add migration test 2021-10-11 12:26:51 +02:00
downstream.go Disallow ',' in nicknames 2021-12-06 19:23:28 +01:00
go.mod Use golang.org/x/time/rate 2021-12-02 23:52:29 +01:00
go.sum Use golang.org/x/time/rate 2021-12-02 23:52:29 +01:00
ident.go
irc.go Add support for MONITOR 2021-11-15 14:34:04 +01:00
msgstore.go msgstore: add context to messageStore methods 2021-11-03 18:21:05 +01:00
msgstore_fs.go msgstore_fs: abort on timeout 2021-11-03 18:21:12 +01:00
msgstore_memory.go msgstore_memory: add comment about Append dropping messages 2021-11-03 18:25:39 +01:00
net_go113.go
net_go116.go
rate.go Add exponential backoff when re-connecting to upstream 2021-12-02 12:14:35 +01:00
server.go Add Logger.Debugf 2021-12-06 18:35:49 +01:00
server_test.go Use background context in tests 2021-11-17 12:04:24 +01:00
service.go Add "sasl status" command 2021-12-01 11:03:27 +01:00
service_test.go
upstream.go Improve msgStore.Append log message wording 2021-12-06 18:46:10 +01:00
user.go Add context to network.storeClientDeliveryReceipts 2021-12-02 23:32:12 +01:00

README.md

soju

builds.sr.ht status

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