IRC/Migrating to Libera Chat

From Meta, a Wikimedia project coordination wiki
< IRC
Tracked in Phabricator:
Task T283247

Wikimedia has migrated to the Libera Chat IRC network. You can read the discussions about this at Wikimedia Forum (permanent link).

Creating an account[edit]

Add the Libera Chat network at irc.libera.chat to your IRC client. Read https://libera.chat/guides/connect for details.

You will need to register your nick name with NickServ again. Details at https://libera.chat/guides/registration.

After creating your account, it is recommended to do the following to provide greater security of your account:

/msg nickserv set enforce on

It is also recommended that, once you create your account, you also make an edit to your user page, confirming that you are the owner of the account on Libera Chat (to avoid impersonation attempts).

Cloaks[edit]

After you've registered join #libera-cloak and say !cloakme. This will give your account a generic user/YourName cloak to hide your IP address. It should happen quickly; wait a while and try again if you're not immediately cloaked and kicked.

If you had a Wikimedia-branded cloak on Freenode, it will not transfer to Libera.Chat and you will need to obtain a new cloak. Type /msg wmopbot cloak (without any preceding spaces) into any IRC window. You will then be sent a private message with instructions on how to get your cloak. The cloak will not be applied instantly; please be patient.

If you do not also enable SASL authentication, your IP address is revealed to each channel in the brief period between connecting and identifying to NickServ.

Connection issues[edit]

You might run into issues connecting to Libera Chat when using a secure port. Libera Chat has a more modern TLS stack than Freenode; most importantly older versions of TLS (specifically 1.0 and 1.1) are not supported on Libera Chat. To determine whether this is the issue you are experiencing; try connecting without TLS on port 6667.

To fix this, you will most likely need to upgrade your IRC client. It is strongly recommended to connect using TLS. It's the equivalent of using HTTPS to browse a web page.

Web frontends[edit]

There is a built-in web frontend for Libera Chat. You also may use one of these alternatives:

Join channels[edit]

Most channels are named the same on Libera Chat as they were on Freenode.

A few channels have taken this opportunity to rename themselves:

Freenode channel (old) Libera Chat channel (new)
#cvn-unifications #wikimedia-unifications
#mediawiki-i18n #translatewiki
#wikimedia-ai #wikimedia-ml
#wikipedia-bag #wikipedia-en-bag
#wikimedia-discovery #wikimedia-search
#wmhack #wikimedia-hackathon
#wmcee #wikimedia-cee

Register channels[edit]

To register a former Freenode channel on Libera Chat, you will need operator (+o) permissions. If after joining your new channel, there is nobody with +o permissions, then a Wikimedia group contact will need to register the channel for you. Please ask in #wikimedia-ops (on Libera Chat) for assistance. For channels that do not fall under a Wikimedia namespace, you'll have to ask Libera Chat staff in #libera for help.

/msg chanserv register #channel
/msg chanserv set #channel guard on
/mode #channel +b $j:#wikimedia-bans

/msg chanserv flags #channel *!*@libera/staff/* +Aiotvr

See also New IRC channel setup guide

If you want to announce your channel move, feel free to copy the Cloud-announce email, which is CC0 licensed.

Differences from Freenode[edit]

There is no more /msg chanserv access #channel list command, instead use /msg chanserv flags #channel.

Bridging channels[edit]

The bridgebot was briefly used to relay messages between Freenode and Libera Chat channels, creating a bridge between the two, but it has now been removed from all Freenode channels. Bridges between Freenode and Libera Chat should be considered a temporary measure that should be removed once documentation has been updated and the majority of your users have migrated to the Libera Chat channel.

Closing Freenode channels[edit]

The new Freenode staff have deleted the services database, which included all channel registrations. Some channels have been recreated by Freenode staff or others, but they are not under the control of Wikimedia volunteers. It is no longer possible to close channels using the instructions below, but they have been retained for historical interest.

Extended content

Once your Libera Chat channel is setup, you can close out your Freenode channel in a way that will help folks who have not been active recently or who are coming from stale documentation find the new channel. The checklist below will help you verify that you are ready to close the old channel and show you how to leave it configured to give instructions on finding the new location. This will be done using ChanServ and channel mode features built into Freenode's service.

  1. Verify that the equivalent Libera Chat channel has been properly set up. At minimum you should check that ChanServ is active in the channel, one relevant person has +o rights, and a useful topic has been set.
  2. Verify that any notification bots and similar tools have been configured to use Libera Chat instead.
  3. Inform active users in the Freenode channel that the channel has been moved to Libera Chat and will be closing.
  4. Set a topic on the Freenode channel to point users to the new channel on Libera Chat:
    /topic This channel has moved, please see https://w.wiki/3RuS for an update
  5. Ensure that the topic will stay set even when the channel is empty:
    /msg ChanServ SET <#channel> KEEPTOPIC ON
  6. Before you setup the redirect, check for existing invite exemptions with /mode <#channel> +I. You can clear all of them with /msg ChanServ CLEAR <#channel> BANS I if you have a +R permission in the channel. You can clear them one at a time with /mode <#channel> -I <invex> without +R.
  7. Set the channel to invite only and forward any connection attempts to a shared channel that can provide them with more information:
    /msg ChanServ SET <#channel> MLOCK +ifst ##moved_to_libera
  8. Kick any remaining users from the channel with an explanation of why:
    /msg ChanServ CLEAR <#channel> USERS This channel has moved, please see https://w.wiki/3RuS

See also[edit]