IRC

Table of Contents

Weechat

sudo apt install weechat tor

SSL/TLS Connection

/server add libera irc.libera.chat/6697
/set irc.server.libera.ssl on
/set irc.server.libera.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
/set irc.server.libera.username "My user name"
/set irc.server.libera.realname "My real name"
/set irc.server.libera.autoconnect on

Auth option 1 - SASL:

/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"

Auth option 2 - Nickserv PLAIN:

/set irc.server.libera.command "/msg nickserv identify xxxxxxx"

If you want to protect your password in configuration files, you can use secured data.

/secure passphrase this is my secret passphrase
/secure set libera_password xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera_password}"

Autojoin:

/set irc.server.libera.autojoin "#channel1,#channel2"
/set irc.server_default.autojoin_dynamic on

Preferences:

/set buflist.look.enabled on
/set weechat.bar.buflist.position bottom
/filter add irc_smart * irc_smart_filter *

TOR Connection

Configuration requirements with details below:

  • Update torrc configuration file to map to the onion service.
  • Configure your client to use your Tor SOCKS proxy (typically localhost:9050).
  • Configure public-key (not plain) SASL authentication.
  • Connect to palladium.libera.chat.

Add this to your /etc/tor/torrc:

# torrc entry for libera.chat onion service
MapAddress palladium.libera.chat libera75jm6of4wxpxt4aynol3xjmbtxgfyjpu34ss4d7r7q2v5zrpyd.onion

This service requires public-key SASL authentication using either the EXTERNAL or ECDSA-NIST256P-CHALLENGE (but not PLAIN) mechanisms.

mkdir -p ~/.config/weechat/certs
cd ~/.config/weechat/certs
openssl req -x509 -newkey rsa:4096 -keyout libera.key.pem -out libera.cert.pem -days 365 -nodes -subj "/CN=yournick"
cat libera.key.pem libera.cert.pem > libera.pem
openssl x509 -in libera.pem -noout -fingerprint -sha512 | awk -F= '{gsub(":",""); print tolower ($2)}'

Connect Libera IRC server and add your cert fingerprint to NickServ:

/msg nickserv CERT LIST
/msg nickserv CERT ADD ...

Change Weechat server settings and reconnect:

/set irc.server.libera.ssl_verify off
/set irc.server.libera.ssl_cert "%h/certs/libera.pem"
/set irc.server.liberachat.sasl_mechanism external

November 7, 2025