diff --git a/soju.1.scd b/soju.1.scd new file mode 100644 index 0000000..f59b444 --- /dev/null +++ b/soju.1.scd @@ -0,0 +1,105 @@ +soju(1) + +# NAME + +soju - IRC bouncer + +# SYNOPSIS + +*soju* [options...] + +# DESCRIPTION + +soju is a user-friendly IRC bouncer. It connects to upstream IRC servers on +behalf of the user to provide extra features. + +- Multiple separate users sharing the same bouncer, each with their own + upstream servers +- Clients connecting to multiple upstream servers via a single connection to + the bouncer +- Sending the backlog (messages received while the user was disconnected from + the bouncer), with per-client buffers + +When joining a channel, the channel will be saved and automatically joined on +the next connection. When registering or authenticating with NickServ, the +credentials will be saved and automatically used on the next connection if the +server supports SASL. + +soju supports two connection modes: + +- Single upstream mode: one downstream connection maps to one upstream + connection. To enable this mode, connect to the bouncer with the username + "/". If the bouncer isn't connected to the upstream + server, it will get automatically added. Then channels can be joined and + parted as if you were directly connected to the upstream server. +- Multiple upstream mode: one downstream connection maps to multiple upstream + connections. Channels and nicks are suffixed with the network name. To join + a channel, you need to use the suffix too: _/join #channel/network_. Same + applies to messages sent to users. + +# OPTIONS + +*-h, -help* + Show help message and quit. + +*-config* + Path to the config file. + +*-debug* + Enable debug logging (this will leak sensitive information such as + passwords). + +*-listen*
+ Listening address (default: ":6667"). + +# CONFIG FILE + +The config file has one directive per line. + +*listen*
+ Listening address (default: ":6667"). + +*hostname* + Server hostname (default: system hostname). + +*tls* + Enable TLS support. The certificate and the key files must be PEM-encoded. + +*sql* + Set the SQL driver settings. The only supported driver is "sqlite". The + source is the path to the SQLite database file. + +# IRC SERVICE + +soju exposes an IRC service called BouncerServ to manage the bouncer. Commands +can be sent via regular private messages (_/msg BouncerServ [args...]_). + +*help* [command] + Show a list of commands. If _command_ is specified, show a help message for + the command. + +*create-network* *-addr* [options...] + Connect to a new network at _addr_. _-addr_ is mandatory. Other options are: + + *-name* + Short network name. This will be used instead of _addr_ to refer to the + network. + + *-username* + Connect with the specified username. By default, the nickname is used. + + *-pass* + Connect with the specified server password. + + *-realname* + Connect with the specified real name. By default, the nickname is used. + + *-nick* + Connect with the specified nickname. By default, the account's username + is used. + +# AUTHORS + +Maintained by Simon Ser , who is assisted by other +open-source contributors. For more information about mako development, see +https://git.sr.ht/~emersion/soju.