Instant Messaging
[Thus far, I am excluding IRC-only software, on at theory that IRC is mostly used as group-discussion medium, and isn't generally classed as instant messaging.]
Note about maintenance: The question of whether an IM client is actively maintained can be a vital concern, where proprietary IM services are concerned. For example, Yahoo, Inc. upgraded the Yahoo Messenger protocol (and changed all its login servers to require the new v. 16 login protocol) in June 2009, which to my knowledge broke all third-party Yahoo Messenger clients.
Client Software for Linux:
Akeni (Jabber/XMPP) - Graphical client. Proprietary.
http://www.akeni.com/en/product/jabber.phpAlvaro's Messenger: see aMSN Messenger.
AIM aka AOL Instant Messenger (AIM) - GTK+ 1.2-based graphical Linux client. Unmaintained. i386-binary only. Proprietary.
http://www.aim.com/get_aim/linux/latest_linux.adpaMSN Messenger (MSN) - tk/tcl-based graphical client. Formerly called Alvaro's Messenger. GNU GPL.
http://amsn.sourceforge.net/Ari's Yahoo Client aka ari-yahoo (Yahoo Messenger) - console client based on GTKYahoo's yahoolib. Said to be (2007-08-28) unmaintained and a victim of Yahoo protocol changes. Defunct. See successor codebase Freehoo (formerly GNUYahoo). GNU GPL.
http://www.icculus.org/ari-yahoo/Ayttm aka Are You Talking To Me? (AIM, ICQ, IRC, Jabber/XMPP, MSN, Yahoo) - GTK+ 1.2-based graphical client. Successor to EveryBuddy. GNU GPL.
http://ayttm.sourceforge.net/BarnOwl (AIM, Jabber/XMPP including group conferencing = multiuser chat = MUC, Zephyr) curses-based console client in C, with advanced sorting and filtering. Based on a fork of "owl", and primarily intended as a Zephyr client. BSD-type licence.
http://barnowl.mit.edu/BitWise IM (BitWise IM protocol). wxWidgets-based graphical client. Does text, file transfers, whiteboards, voice, SSL encryption. Proprietary.
http://www.bitwiseim.com/Bombus (Jabber/XMPP, ICQ, MSN, AIM, Yahoo) - Java graphical client. Might be Russian-language only. Probably proprietary.
http://bombus.jrudevels.org/BuddySpace (Jabber/XMPP, MSN, ICQ, Yahoo, others) - Java graphical client. Requires Java JRE 1.4. Apache License v. 2, with some parts under JOSL.
http://buddyspace.sourceforge.net/CenterICQ (ICQ2000, Yahoo Messenger, AIM, MSN, IRC, Jabber/XMPP) - console client. Good internationalisation. However, development has ceased. Defunct: See successor project, CenterIM. GNU GPL.
http://web.archive.org/web/20070823060344/http://centericq.de/Carrier (Bonjour, Gadu Gadu, Groupwise, IRC, Jabber/XMPP, MSN, Myspace IM, Oscar, QQ, SILC, Simple, Sametime, Yahoo Messenger, Zephyr) - GTK+-based graphical client in C. Fork of Pidgin by a group of developers who wished to extend Pidgin's functionality. Supports OTR (Off-the-Record Messaging) encrypted chat, via plug-in. GNU GPL.
http://funpidgin.sourceforge.net/Carrier Finch (Bonjour, Gadu Gadu, Groupwise, IRC,Jabber/XMPP, MSN, Myspace IM, Oscar, QQ, SILC, Simple, Sametime, YahooMessenger, Zephyr) - ncurses-based console client in C. The Carrier developers' group's variant form of the Pidgin developers' Finch client. GNU GPL.
http://funpidgin.sourceforge.net/CenterIM (ICQ2000, Yahoo Messenger, AIM, MSN, IRC, Jabber/XMPP) - console client. Good internationalisation. Supports OTR (Off-the-Record Messaging) encrypted chat, natively. GNU GPL.
http://www.centerim.org/CJC (Jabber/XMPP including group conferencing = multiuser chat = MUC) - console client in Python. Beta-level. GNU GPL.
http://cjc.jajcus.net/trac/climm aka Command Line Interface Multi Messenger (AIM, ICQ, Jabber/XMPP) formerly named mICQ aka Matt's ICQ (ICQ) - console client. Simple, small, fast. Supports OTR (Off-the-Record Messaging) encrypted chat, natively. GNU GPL.
http://www.climm.org/Coccinella (Jabber/XMPP) - tcl/tk-based graphical client. Does SSL. Has "integrated whiteboard". GNU GPL.
http://coccinella.im/Colibry (Jabber/XMPP) - Java graphical client. Might be Russian-language only, and may no longer be available for Linux OS. Proprietary.
http://violonix.jabber.ru/CSpace (CSpace P2P protocol) - Qt-based graphical client in Python. Crypto-oriented P2P software for sharing chat, e-mail, IM, and files. GNU GPL.
http://cspace.in/Curphoo Yahoo Messenger - ncurses-based console client in Python. Said to be mature code, but has had no activity since August 2006. See successor, Zinc. GNU GPL.
http://www.nongnu.org/curphoo/eBuddy - Javascript graphical client for Web browsers (AIM, Jabber/XMPP, MSN, Yahoo Messenger). Proprietary.
http://www.ebuddy.com/EKG2 (Jabber/XMPP) - graphical client. Almost all documentation appears to be in Polish. GNU GPL.
http://ekg2.org/eMeSeNe (MSN) - GTK+ and pyGTK-based graphical client in Python. GNU GPL.
http://www.emesene.org/Enigma 3 aka e3 (Jabber/XMPP) - Java graphical client, available in source and bytecode form. GNU GPL.
http://complat.sourceforge.net/jnlpEveryBuddy (MSN, ICQ, Yahoo, AIM, Yahoo Messenger) - GTK+ 1.2-based graphical IM client in C; unmaintained since 2002. Defunct. (See also successor codebase, Ayttm.) GNU GPL.
http://web.archive.org/web/20020523181528/http://www.everybuddy.com/
http://tobyinkster.co.uk/article/everybuddy/Fama IM (AIM/Oscar, AIM/TOC, Gadu-Gadu, ICQ, Jabber/XMPP, MSN, Zephyr) - ncurses-based console client in C. Uses telepathy and libpurple libraries. 0.0.3 beta at 2007-11-06. GNU GPL.
http://www.fama-im.org/Finch (AIM, TOC = AIM's documented protocol / OSCAR = AIM's proprietary protocol / ICQ, Gadu-Gadu, IRC, Jabber/XMPP including group conferencing = multiuser chat = MUC, MSN Messenger, Napster, Novell GroupWise Messenger, Lotus Sametime, old ICQ, QQ, Yahoo Messenger, Zephyr) - ncurses-based console client in C, the console variant of Pidgin. Supports OTR (Off-the-Record Messaging) encrypted chat. GNU GPL.
http://www.pidgin.im/about/Freehoo (Yahoo Messenger) - console client based on readline and guile. Formerly named GNUYahoo. GNU GPL.
http://www.nongnu.org/freehoo/Freetalk (Jabber/XMPP, Google Talk) - console client base on readline and guile. GNU GPL.
http://freetalk.nongnu.org/Gabber (Jabber/XMPP) - GTK+ 1.2-based graphical client in C++. Requires some gnomelibs: libgtk, libsigc, gtkmm, libglade, libgal, gnomememm. GTK2 version is under development, but may be dropped in favour of Gossip and Pidgin (formerly Gaim). GNU GPL.
http://gabber.sourceforge.net/Gaim: see Pidgin.
Gadu aka GNU Gadu (Jabber/XMPP, Gadu-Gadu, Tlen.pl) - GTK2-based graphical client in C. Documentation appears to be in Polish. GNU GPL.
http://www.gnugadu.org/gajim (Jabber/XMPP) - GTK2-based graphical client written in Python/pygtk. Requires python2.3/2.4, pygtk2.6 or higher, python-libglade, pysqlite2. GNU GPL.
http://www.gajim.org/gnome-jabber (Jabber/XMPP) - GTK+ 1.2-based graphical client. Requires gnomelibs. Project stalled at beta v. 0.4. GNU GPL.
http://gnome-jabber.sourceforge.net/GOIM = Gamers' Own Instant Messenger (Jabber/XMPP) - Java graphical client. GNU GPL.
http://goim.us/Gossip (Jabber/XMPP) - GTK2-based graphical client. Requires gnomelibs. GNU GPL.
http://developer.imendio.com/projects/gossip/gtkyahoo (Yahoo Messenger) - GTK+ 1.2-based graphical client. Defunct. GNU GPL.
http://gtkyahoo.sourceforge.net/Gyach (Yahoo Messenger) - GTK2- or GTK+ 1.2-based graphical client. Note: Project is no longer well maintained, as developer is now mostly working on other things. Basically, defunct. (See forks Gyach Enhanced and Gyachi.) GNU GPL.
http://gyach.bc2va.org/Gyach Enhanced (Yahoo Messenger) - GTK2-based graphical client for Linux with voice chat and webcam support, and forked from Gyach. Requires GtkHTML-2, Jasper, and Expat library, and also PyGtk-2 if using voice chat. Plug-in architecture supports optional GPGMe encryption, XMMS, others. Supports themes. GNU GPL.
http://www.phrozensmoke.com/projects/pyvoicechat/index_gyache.phpGyachi aka GyachE Improved (Yahoo Messenger) - GTK2-based graphical client for Linux with voice chat and webcam support, and forked from Gyach Enhanced by people who were impatient with that project's progress. Requires GtkHTML-2, Jasper, and Expat library, and also PyGtk-2 if using voice chat. Plug-in architecture supports optional GPGMe encryption, XMMS, others. Supports themes. Has very little online documentation at 2007-08-28. GNU GPL.
http://gyachi.sourceforge.net/IMCom CLI (Jabber/XMPP with partial support for in-band registration) - console client, written in Python, basic, a bit like micq. BSD-licensed.
http://sourceforge.net/projects/imcom/Instantbird (AIM, MSN, Yahoo Messenger, Google Talk, XMPP/Jabber, Gadu-Gadu, ICQ, QQ, IRC) - xulrunner-based (Mozilla Runtime-based) graphical client. GNU GPL, with most parts multilicensed GPLv2, LGPL, and MPL 1.1. Built around the libpurple (formerly, libgaim) communications library designed for Pidgin and Finch. Can support extensions and themes written in XUL.
http://www.instantbird.com/Iruka (Jabber/XMPP) - GTK+/wxPython-based graphical client, Project stalled in 2002 at alpha-level release. GNU GPL.
http://www.nongnu.org/iruka/irssi-xmpp (Jabber/XMPP including group conferencing = multiuser chat = MUC but not in-band registration) - console client, implemented as a plug-in (add-on module) for the irssi ncurses-based IRC client. irssi supports OTR (Off-the-Record Messaging) encrypted chat, via plug-in. Written in C. GNU GPL.
http://cybione.org/~irssi-xmpp/jabber.el (Jabber/XMPP including group conferencing = multiuser chat = MUC and in-band registration) - console client, written in elisp for emacsen. GNU GPL.
http://emacs-jabber.sourceforge.net/JabberX (Jabber/XMPP) - console client, alpha-level release, not maintained since 2001: CenterIM, CJC, climm, Fama IM, Finch, Freetalk, IMCon CLI, jabber.el, JWGC, MCabber, or sjabber would be a better choice. Supports groupchat (Multi-User Chat = MUC). GNU GPL.
Development site has disappeared.Jabbin (VoIP over Jabber/XMPP) - Qt-based graphical client in C++. Does PC-to-PC VoIP calls over the Jabber messaging network. GNU GPL.
http://sourceforge.net/projects/jabbin/Jarl (Jabber/XMPP including group conferencing = multiuser chat = MUC) - Perl/Tk-based graphical or console client (has optional command-line mode). Unmaintained since 2002. GNU GPL.
http://jarl.jabberstudio.org/Jeti (Jabber/XMPP) - Swing-based graphical client in Java. Requires J2EE 1.4 or later. GNU GPL.
http://jeti-im.org/JWChat (Jabber/XMPP) - Web-based graphical client in JavaScript/XML. GNU GPL.
http://jwchat.sourceforge.net/JWGC aka Jabber WindowGram Client (Jabber/XMPP including group conferencing = MUC and in-band registration) - lightweight console client in C. Intended to function like MIT's Zephyr (separate window for each message). Development appears a little stagnant, but ongoing. GNU GPL.
http://jwgc.sourceforge.net/Kadu (Gadu-Gadu) Qt-based graphical client in C++. GNU GPL.
http://www.kadu.net/kmerlin (MSN) - Qt-based graphical client. Requires kdelibs. Formerly called kmsn. GNU GPL.
http://sourceforge.net/projects/kmerlin/Kinkatta (AIM) - Qt-based graphical client. Requires kdelibs. GNU GPL.
http://www.icefox.net/programs/?program=Kinkattakmsn: See kmerlin.
Konverse (Jabber/XMPP) - Qt-based graphical client. Requires kdelibs. GNU GPL.
http://konverse.sourceforge.net/Kopete (Jabber/XMPP, ICQ, AIM, MSN Messenger, IRC, Yahoo Messenger, OSCAR = AIM's proprietary protocol) - Qt-based graphical, modular, multiprotocol IM client. Supports OTR (Off-the-Record Messaging) encrypted chat, via plug-in. GNU GPL.
http://kopete.kde.org/kyim (Yahoo Messenger) - graphical client. Formerly called kyahoo. Unmaintained/defunct. GNU GPL.
http://kyim.sourceforge.net/kyahoo: see kyim.
Landell (VoIP, Jabber/XMPP) - GTK+-based graphical client in C and C#, using GNOME libraries and the Tapioca/Telepathy framework. GNU GPL.
http://tapioca-voip.sourceforge.net/wiki/index.php/LandellLicq (ICQ, AIM, MSN) - Qt-based graphical client. Probably the best graphical ICQ client. GNU GPL.
http://www.licq.org/MCabber (Jabber/XMPP including group conferencing = multi-user chat = MUC) - ncurses-based console client with user interface similar to that of irssi. Supports OTR (Off-the-Record Messaging) encrypted chat. Small, fast. GNU GPL.
http://mcabber.com/
http://nerim.lilotux.net/mcabber/mICQ: See climm.
naim (TOC = AIM's documented protocol, ICQ, IRC, The Lily CMC) - console client. GNU GPL.
http://naim.n.ml.org/owl (AIM, Zephyr) curses-based console client in C, with advanced sorting and filtering. Support for Jabber/XMPP and IRC are planned. BSD-type licence.
http://ktools.org/owl/Pidgin (was: Gaim, but renamed because of trademark-based legal threats from AOL.) (AIM, TOC = AIM's documented protocol / OSCAR = AIM's proprietary protocol / ICQ, Gadu-Gadu, IRC, Jabber/XMPP, MSN Messenger, Napster, Novell GroupWise Messenger, Lotus Sametime, old ICQ, QQ, Yahoo Messenger, Zephyr) - GTK2-based graphical IM client in C, originally designed for AOL Instant Messenger. Sometimes compiled to require gnomelibs. Supports OTR (Off-the-Record Messaging) encrypted chat. GNU GPL.
http://www.pidgin.im/pJab (Jabber/XMPP including in-band registration) - console client, written in Perl: abandoned at alpha state of completion. GNU GPL. This is the unmaintained Perl console "pJab" by Rico "mc" Gloeckner, not to be confused with the unmaintained Java graphical "pJab" by Trejkaz Xaoza.
http://web.archive.org/web/20030421195020/http://pjab.micq.org/pJab (Jabber/XMPP) graphical client, written in Java: abandoned in favour of the Psi graphical client. GNU GPL. This is the unmaintained Java graphical "pJab" by Trejkaz Xaoza, not to be confused with the unmaintained Perl console "pJab" by Rico "mc" Gloeckner.
http://web.archive.org/web/20041206192408/xaoza.net/software/index.htmlpork (AIM, ICQ, IRC) - console client, resembling ircII. GNU GPL.
http://dev.ojnk.net/Psi (Jabber/XMPP) - Qt-based graphical client resembling licq. Supports groupchat (Multi-User Chat = MUC). multiple accounts. Can use libqss SSL wrapper for Qt applications. Good internationalisation support. Minimal. Supports OTR (Off-the-Record Messaging) encrypted chat, via plug-in. GNU GPL.
http://psi-im.org/Pybber (Jabber/XMPP) - GTK+/Python-based graphical client. Requires gnomelibs. GNU GPL.
http://pybber.sourceforge.net/Qnext (AIM, ICQ, Jabber/XMPP, MSN, Yahoo Messenger) - graphical client. Also shares music files. Proprietary.
http://qnext.com/Shaolo (Jabber/XMPP) - Swing-based Java graphical client, was available in bytecode form. Proprietary.
Development site has vanished.Sim-IM = Simple Instant Messenger (ICQ, AIM, Jabber/XMPP, LiveJournal, MSN Messenger, Yahoo Messenger) - Qt-based graphical client. Impressive multilanguage support, many features. Formerly called SIM-ICQ, and later SIM. Last updated 2007. GNU GPL.
http://sim-im.org/SIM-ICQ: see Sim-IM.
sjabber (Jabber/XMPP; groupchat only) - console client, written in Perl,supporting groupchat (Multi-User Chat = MUC). Unmaintained since 2001. GNU GPL.
http://web.archive.org/web/20060313002607/http://www.pipetree.com/jabber/sjabber/ (patch suggested)Spark (Jabber/XMPP) - Swing-based graphical client in Java. GNU LGPL.
http://www.igniterealtime.org/projects/spark/SrevIM (AIM, ICQ, Jabber/XMPP, MSN, Yahoo Messenger) - Swing-based graphical client in Java. LGPL (though it is entirely unclear how to get the Java source code).
http://www.srevspace.com/
http://web.archive.org/web/20070323021136/http://srevspace.com/Swagger (Jabber/XMPP) - Swing-based Java graphical client using Jabberbeans for the back end, available in source and bytecode form. Unmaintained as of 2006. GNU GPL.
http://web.archive.org/web/20060703234855/http://www.weatherlight.com/projects.htmtkabber (Jabber/XMPP) - tcl/tk-based graphical client. Unicode, SSL support, HTTP proxy, file transfers, groupchat (Multi-User Chat = MUC). GNU GPL.
http://tkabber.jabber.ru/tkJabber (Jabber/XMPP) - Qt-based graphical client from theKompany, available as a plug-in to the Aethera PIM. Proprietary.
http://www.thekompany.com/projects/tkjabber/wija (Jabber/XMPP) - Swing-based graphical client in Java. GNU GPL.
http://www.media-art-online.org/wija/Yahoo Messenger (Yahoo Messenger) - GTK+ 1.2-based graphical client. Requires GtkHTML 0.8, gdk-pixbuf 0.8.0 or above. Proprietary, i386-binary only.
http://web.archive.org/web/20070827102705/http://messenger.yahoo.com/unix.php
http://in.docs.yahoo.com/messenger/download/unix.htmlYSM aka You Sick Me (ICQ) - console client. GNU GPL.
http://ysmv7.sourceforge.net/Zephyr (Zephyr) - console client. MIT/X licence.
http://itinfo.mit.edu/product.php?name=zephyrZinc (Yahoo Messenger) - console client in Python, originally forked from Curphoo, but completely rewritten. GNU GPL.
http://larvalstage.com/zinc/
Related Software:
BitlBee is an IRC daemon that also functions as a gateway to other IM networks: AIM and ICQ (both using OSCAR), MSN, Yahoo Messenger, and Jabber/XMPP. Supports OTR (Off-the-Record Messaging) encrypted chat (with plugin). GNU GPL and MPL 1.1.
http://www.bitlbee.org/
gotmail - Utility to download e-mail from a Hotmail or MSN account. GNU GPL.
http://linux.cudeso.be/linuxdoc/gotmail.phpjabberd - Jabber/XMPP daemon supporting plug-in transport libraries for gateway communication with AIM, ICQ (icqv7-t, libicq2000), IRC, MSM, Yahoo Messenger (libyahoo), others. GNU GPL.
http://jabberd.jabberstudio.org/Jabber MSN Transport (jabber-msn) - Provides the MSN transport for the Jabber IM server. Written in Python using the Twisted networking libs. GNU GPL.
http://delx.cjb.net/pymsnt/hotway - POP3 to Hotmail/MSN/Lycos/Spray (HTTPmail) gateway. GNU GPL.
http://sourceforge.net/projects/hotwayd/Pretzel - Jabber/XMPP daemon written in Python and the Twisted network libraries, designed to be extensible. MIT/X Licence.
http://code.google.com/p/pretzel/psyced - multi-protocol gateway and server application supporting the PSYC, Jabber/XMPP, IRC, telnet, http, and other protocols. GNU GPL.
http://www.psyced.org/ReAIM - Enable AIM and MSN file transfer on Linux iptables-based NAT (via transparent proxy. GNU GPL.
http://reaim.sourceforge.net/
More Information:
Much more at: