WeeChat IRC Client
aptitude install weechat weechat-plugins
Commands to join our chat channel:
/server add phys irc.phys.ethz.ch/6697 /connect phys /join #isgphys /nick johndoe
Below you find some lines that can be useful to customize your
buffer_switch_autojoin = on buffer_switch_join = on highlight_channel = "$nick" highlight_pv = "$nick" nick_mode = prefix server_buffer = merge_with_core smart_filter_mode = "+" nick_prefixes = "y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue" autoreconnect_delay_max = 600 ban_mask_default = "*!$ident@$host" whois_double_nick = off nicks = "<nick>,<nick>_,<nick>__,<your_username>" ssl_priorities = "NORMAL:-VERS-SSL3.0" username = "<your_username>" phys.addresses = "irc.phys.ethz.ch/6697" phys.ssl = on phys.autoconnect = on phys.autojoin = "#isgphys"
There are plenty of useful plugins to customize weechat, for instance
- buffer.pl: show sidebar with list of buffers
- notify.py: notifications for highlights and private messages
that can be loaded as follows
/script load <scriptname>
If you encounter any errors, you may need to install some dependencies first:
aptitude install weechat-scripts aptitude install python-notify python-notify2
It's best to start weechat in a dedicated GNU screen session:
screen -S weechat weechat
which you can then detach with Ctrl+A -> Ctrl+D, and re-attach later
screen -d -r weechat.
Relay / Proxy
Weechat can act as small irc server to which other clients can connect. This allows to connect GUI and mobile clients to the same weechat backend to access all irc channels under the same username. When using this you should ensure that the relay is encrypted with an SSL certificate to avoid plaintext traffic over the internet. As this is an advanced topic we only sketch the important steps for the power users.
The following weechat commands activate the IRC proxy
/relay add ssl.irc.phys 8001 # activate ssl-encrypted irc relay for the PHYS server on port 8001 /set relay.network.passwort <randompassword> # define a password for relay connections /relay sslcertkey # (re-)load the /save # save configuration changes
Example snippet to execute when renewing Let's Encrypt certificates to update and reload the file in weechat:
cat /etc/letsencrypt/live/example.com/privkey.pem \ /etc/letsencrypt/live/example.com/fullchain.pem > \ /home/johndoe/.weechat/ssl/relay.pem chown johndoe:johndoe /home/johndoe/.weechat/ssl/relay.pem printf '%b' '*/relay sslcertkey\n' > /home/johndoe/.weechat/weechat_fifo_*