IRC (Internet Relay Chat) is a protocol for text-based internet chat created by Jarkko Oikarinen in 1988. Ever since it was developed, IRC gained more and more popularity and currently it's one of the standard ways for projects and distributions to provide online help, for developers to meet and discuss aspects regarding their work.
Two of the well-known networks dedicated to free software and Linux in general are Freenode and OFTC, the latter being the network of choice for the Debian distribution, which switched from Freenode a couple of years ago.
IRC supports private conversations, channels (sometimes called chat rooms), notices, file transfers through the DCC protocol, and some networks even implement channel/nick or username registration.
To connect to an IRC server, you will first need a client. There are several good IRC clients for Linux, however I will discuss here the basics for two GUI (Graphical User Interface) clients: XChat and Konversation, and one CLI (Command Line Interface) client, and that's the powerful Irssi.
The IRC protocol as a concept is very simple: you send in raw lines of text, the server interprets them and eventually performs some action, such as giving a channel list, or sending your message to the users in an entire channel etc. The IRC client is here to ease your work, so instead of sending a little more complicated command in order to send a private message to someone, you will only have to type something like /MSG [nickname]
Anyway, the basic commands which will usually work on any IRC client out there are these:
Both commands do the same thing, they connect you to the specified server using the default port (6667). Example:
Once connected, you will want to join a channel:
You can try this for your distribution (given you are connected to Freenode):
When in a channel, you will only have to type your message and press enter in order to be sent to the channel. Alternately, you can type this from any tab in your client:
Either a channel name or a nickname. If you put a nickname, the message will be sent to the respective user and that's a private conversation. OFTC also implements SSL (Secure Sockets Layer), so the messages will be sent encrypted instead of plain text.
To send a notice to someone, you would issue:
You can send notices to channels too, in which case they'll get to all the users on that channel, but unless you are an operator, I strongly advise against using it. Usually it will only get you kicked out of a channel, since nobody wants to be disturbed with mass messages.
To leave a channel, /PART should do it. To quit your IRC client, type /QUIT, some clients may also quit on /EXIT.
A little about the clients...
XChat uses GTK and is one of the most powerful graphical IRC clients for Linux. Here's a review I made a couple of days ago. The power of XChat stands in the ability to script in Perl, Python, Tcl and to create C plugins. You can expand it to your likings and make the best application for a pleasant IRC experience.
/msg nickserv register your_password your_email
Make sure to enter a password, not your nickname.
I recommend this KDE client for any IRC newbie. Although it doesn't currently support event-based scripting (which can be a good reason for advanced users not to use it), Konversation has all the options a beginner needs, from selecting colours, fonts, to choosing where all the messages go, if notices go to the active window or not, etc.
Konversation 1.1 for KDE3 is still in development, and the latest stable version is 1.0.1.
Irssi is the only CLI client I ever used, and it's very powerful, configurable and it supports Perl scripting. When it starts, just type:
To get on OFTC, where the official #debian channel is located.
I found Irssi to be the most flexible and powerful IRC client up to now, and that's because it is highly configurable through variables and you can make scripts in Perl for anything.
All of the clients here allow connections to multiple servers.
As an IRC addict I recommend this protocol to anyone. I often read that people learn more in 30 minutes from IRC than in two whole hours in forums and I consider that to be true, real-time chatting can be of great help sometimes.
There are several more clients for Linux, like KVirc, epic4 and the basic clients included in IM (Instant Messaging) applications, like Kopete or Pidgin (previously known as Gaim). You can try any of those and see which fits your taste.
Updated: Jul 08, 2008 (Created: Jul 07, 2008)