Servers

[servers] Section

Example

[servers.liberachat]
nickname = "halloy-user"
server = "irc.libera.chat"
channels = ["#halloy"]
KeyDescriptionDefault
nicknameThe client's nickname.""
nick_passwordThe client's NICKSERV password.""
nick_password_fileAlternatively read nick_password from the file at the given path.""
nick_identify_syntaxThe server's NICKSERV IDENTIFY syntax. Can be "nick-password" or "password-nick".""
alt_nicksAlternative nicknames for the client, if the default is taken.[""]
usernameThe client's username.""
realnameThe client's real name.""
serverThe server to connect to.""
portThe port to connect on.6697
passwordThe password to connect to the server.""
password_fileAlternatively read password from the file at the given path.""
channelsA list of channels to join on connection.[""]
channel_keysA mapping of channel names to keys for join-on-connect.{}
ping_timeThe amount of inactivity in seconds before the client will ping the server.180
ping_timeoutThe amount of time in seconds for a client to reconnect due to no ping response.20
reconnect_delayThe amount of time in seconds before attempting to reconnect to the server when disconnected.10
should_ghostWhether the client should use NickServ GHOST to reclaim its primary nickname if it is in use.false
ghost_sequenceThe command(s) that should be sent to NickServ to recover a nickname.["GHOST"]
umodesUser modestring to set on connect. Example: "+RB-x".""
use_tlsWhether or not to use TLS. Clients will automatically panic if this is enabled without TLS support.true
dangerously_accept_invalid_certsOn true, all certificate validations are skipped. Defaults to false.false
root_cert_pathThe path to the root TLS certificate for this server in PEM format.""
on_connectCommands which are executed once connected. Example. ["/msg NickServ IDENTIFY foo bar"].[]
who_poll_intervalWHO poll interval (in seconds) for servers without away-notify.1801
who_retry_intervalWHO retry interval (in seconds) for servers without away-notify.101
1

Limited between 5 and 3600 seconds.

[servers.sasl] Section

[sasl.plain]:

[servers.liberachat.sasl.plain]
username = "<string>"
password = "<string>"
KeyDescriptionDefault
usernameThe account name used for authentication.""
passwordThe password associated with the account used for authentication.""
password_fileAlternatively read password from the file at the given path.""

[sasl.external]

[servers.liberachat.sasl.external]
cert = "<string>"
key = "<string>"

💡 External SASL auth uses a PEM encoded X509 certificate. Reference.

KeyDescriptionValue
certThe path to PEM encoded X509 user certificate for external auth""
keyThe path to PEM encoded PKCS#8 private key for external auth (optional)""