July 27, 2008

IRC Clients for Linux - A Review

Since I'm an IRC addict and I always liked to spend time learning new stuff on IRC, here is a review of several IRC clients for Linux. Some of them are well-known and popular, like XChat, Konversation or Irssi, and others are not so widely used or known, but nevertheless, they deserve mentioning.

KVirc is a powerful client for KDE focusing on an apealing interface, providing its own scripting language called KVS (KVirc scripting language), with lots of options for configurating it, and much more. Among all the clients I tested, KVirc was the most bloated, trying always to include as many options as possible and be user-friendly in the same time, but sometimes it felt like not all of those were needed. For example, the Ignore As... menu includes all the possible combinations for ignoring a person. I think it would have been wiser to include only 2 or 3 and eventually provide a dialog window so the user can enter it manually, with a brief explanation for how it works.

KVirc 3.4.0 'Virgo'

I also found the CTCP option not useful when on a channel, since if you CTCP VERSION or PING, all the users on that channel will get the CTCP request. On a large channel that can lead to a ban, or lag, and it's just not useful.

Anyway, back to the good stuff that KVirc provides. Each release has a nice codename, like the one in the last version, 'Virgo', with a suggestive picture to emphasise it.

Although I didn't test the scripting language much, it looks pretty much the same as the one mIRC has, so for those who are switching from Windows, KVirc should be a good choice. KVS is accompanied by complete documentation which can be accessed from the Help -> Help Browser menus (you can open it in two different ways, as a separate tab or as a panel). It also supports themes, addons, or the possibility to save different configuration profiles.

KVirc help browser
KVirc scripting menu - the system is somewhat similar with the one of mIRC

Overall, although this particular version (3.4.0) was a little slow for me, KVirc is complete, powerful and it looks very good.
Official website

Configuring KVirc

XChat is a very popular graphical client for Linux, including powerful scripting support in Perl, Python, Tcl, C plugins, powerful configurability using /SET variables and many other. XChat is built in GTK, and a version using GNOME libraries, called xchat-gnome, is also available.

XChat usual look

Some of the features I love about XChat besides the powerful scripting support: logging system allowing to name your path and files using date specifiers (like %b for month or %d for day and so on), the interface is simple and clean, yet all the options I need are available using /SET, including the conference mode. The Linux version doesn't receive as much attention like the Windows one (probably because the Windows one is paid), but XChat is already complete.

XChat preferences

Online documentation is very abundant, and tutorials on how to write scripts and plugins are very helpful and useful.
Official website

Default look for xchat-gnome

Irssi is a command line client which includes a simple yet very effective way of navigating through channels/queries. You'll have to read the manual if you use it for the first time, but once you get used to shortcuts (most of them being Emacs-like), Irssi gets pretty easy to use, and shortcuts can be customised too. It supports Perl scripting and the official website contains hundreds of them, can be customised in each and every way using commands explained in detail in the documentation. For me, Irssi wins at all the chapters if it is to compare it with Weechat, Epic4 or TinyIRC.
Official website

Irssi running inside Konsole

I noticed Konversation received more and more attention over the last years, since it's a client aimed towards persons new to IRC, and strives to be user-friendly. And it succeeds, having all the necessary options in the configuration window. As default though, the interface lacks a toolbar menu, which can be enabled using the Settings -> Show Toolbar menu, and shortcut icons can be added there. As every decent KDE application, Konversation allows editing shortcuts, it can be embedded in the system tray, it includes configurable notifications, it has a basic logging system and an option to load logs in a new tab and perform searches. When joining a new channel or opening a new query, a backlog will be displayed with the last lines of the previous discussion (if any).

Konversation 1.0.1 - 1.1RC1 has been released too

Konversation only lacks event-based scripting, and that's a must-have for a scripting language in my opinion. Otherwise, it comes as default with several powerful scripts, like the now playing script (supporting the major audio and video players for KDE), or a weather script, or system info. The first release candidate for version 1.1 is now available.

Konversation configuration

I warmly recommend Konversation to users who want to try IRC for the first time, but XChat or KVirc would be good choices too.
Official website

Default Konversation scripts

I must say, I rarely use Pidgin or Kopete for connecting to an IRC network, but you can find it useful if you don't care much about having a powerful, dedicated client especially for IRC. Pidgin is widely known for being the GNOME IM (Instant Messaging) client first, but it can also be used as a basic IRC client if you are looking to only get on IRC, without all the options advanced clients provide.
Official website

Adding a new IRC account with Pidgin

Pidgin on IRC

Just like Pidgin, Kopete is the KDE IM client and provides a basic IRC client too. The advantage both Pidgin and Kopete provide is that if you use IM a lot (for example you have both Yahoo and MSN accounts) and want to get on IRC, you can use a single application for it, without the need of opening a new application just to chat on IRC.
Official website

Kopete IRC account

#debian @ Freenode on Kopete

As mentioned above, there are many more clients available, like the popular BitchX, the lightweight Weechat, the classic Epic4 or TinyIRC (official website?) to give a few.


Rock and Linux said...

Nice post, I didn't know some.
I usually use Xchat, when I don't have Xchat available I use Pidgin, I'll try some IRC clients!

Unknown said...

No Bitchx?

Anonymous said...

Irssi ftw! I use Xchat every now and then. Pidgin can be pretty unstable sometimes. Where is BitchX btw :P?

Anonymous said...

Why not use an IRC client that is integrated in your browser like Chatzilla so you can just click on IRC URLs to enter a channel. A quick start is available here

Anonymous said...

I like to most things from Emacs, and not too many people would be surprised to hear it comes with two (that's right, two) IRC clients out of the box.

Of the two I prefer rcirc, but I hear erc's pretty good as well.

I also have all my IM accounts listed at bitlbee, so I do all my IM and irc through the same software I do all my work in.

Plouj said...

Irssi only and forever.

Daniel Hansen said...

weechat is very good too.

Bruno Borges said...

what happened with BitchX? :-)

Snyke said...

Not being a power user, I'm really happy with Pidgin ^^

Gabriel said...

@chaoticmass, @bruno_b:

BitchX has security issues that make it unsuitable right now. As in, client side exploits that let remove systems attack you.

I loved BX, but being rooted by way of it sucks.

Anonymous said...

I think f-irc is missing in this list. Check it out: http://www.vanheusden.com/f-irc/.