With the integration of the Telepathy framework into GNOME, most distributions are dropping the old instant messaging favorite Pidgin, for the new upstream application Empathy. It's a reminder of the important role that distributions play in making choices for us all.
Free software is constantly improving. It’s part and parcel with the nature of open source development. On the Linux desktop there is no single package which dominates all others. Choice reigns supreme.
That’s not to say that there aren’t favorites or packages which are most popular. OpenOffice.org for example, remains the most powerful and popular office suite on the platform. Vi is the greatest text editor (or is it Emacs?).
For the longest time, the number one instant messaging client has been Pidgin, formally known as Gaim (GTK+ AOL Instant Messenger). This appears to be changing.
Finding the Way with Telepathy
Telepathy is a new framework which provides a means of real-time communication on the Linux desktop. The interface is provided through the D-Bus messaging system, which is available for any application to take advantage of.
As listed on the project’s website, the framework has three main benefits:
Real-time: Telepathy supports instant messaging (both one-to-one and in groups), voice calls and video calls; it’s less suited for store-and-forward applications like email.
Unified: Many different programs can take advantage of these communications; Telepathy lets these programs work together.
Framework: Telepathy allows the different aspects of communication handling to be divided between different parts of the system, meaning each part is simple.
The GNOME project has adopted Telepathy into the environment so that all applications can have system-wide communication. Just where this technology will take the desktop is not yet clear, but the possibilities are endless. This simple game of Sodoku is a good example of what’s possible with the Telepathy framework.
Pidgin is a GTK+ (GIMP Toolkit) application and although it has been the default GNOME client for a long time, it was never an official part of the desktop. It is an independent application in its own right, which also runs on Windows and OS X. The project, now in its tenth year, grew out of a desire to join the AOL chat network, to which it owes its original name.
In many ways, Pidgin pioneered the way for multiple chat by creating the libpurple library (formally libgaim). The application itself is a user interface on top of libpurple, as are a number of others.
While Pidgin is a solid, feature rich instant messaging client, it’s not following the same path as the GNOME desktop. Telepathy is the way of the future, at least for GNOME, which means that Pidgin could never be.
A Little Empathy
Empathy is another instant messaging program which supports numerous networks and has lots of features.
The project was introduced into GNOME with release 2.24 as the desktop’s messaging client. Empathy was built to take advantage of the new Telepathy framework which enables system wide communication not previously possible.
Empathy also utilizes
libpurple (the same library as Pidgin) and as such inherited support for all of its networks from the onset. Although a young project, it has quickly grown an impressive set of features, including the geolocation of contacts and support for video and audio chat over both XMPP (Jabber) and SIP. The XMPP protocol is used by numerous networks, including Google Mail and is considered a very important feature of the application.
Due to its use of the Telepathy framework, Empathy can tie itself into the desktop far more closely than Pidgin ever could.
The Distro Decision
Distributions have been shipping Pidgin for years and many users are very passionate about it. It’s important to note that Pidgin was just like many other applications – it’s not an official part of GNOME, but rather a useful application which distros include by choice. It’s a reminder of the important role that distributions perform on our behalf.
The question for distributions now is whether to replace Pidgin (a much loved tool) with something new, or stick with the old favorite. As expected, there has been much debate among the community.
After having adopted Empathy upstream, most major distributions which ship GNOME appear to be dropping Pidgin as the default instant messaging client. The upcoming release of Mandriva certainly is, and the Fedora Project has also decided to follow that route. The benefit, they claim, is in being able to stay in sync with upstream and have an instant messaging client that is closely integrated with the rest of the desktop. True enough.
The same decision has also been made for the upcoming Ubuntu 9.10 Karmic Koala release. The development team is ready to roll back to Pidgin however, if feedback from users is not positive.
A common misconception among the community is that Pidgin was replaced because it lacked some features available in Empathy, primarily video and audio chat over the XMPP protocol. Although possibly a factor, this wasn’t the motivation at all.
The recent release of Pidgin 2.6.1 saw the inclusion of video and audio chat on the XMPP protocol, a much sought after feature. Since this has happened, some in the community have asked whether Ubuntu Karmic should now revert back to Pidgin over Empathy. This appears to have been taken into serious consideration, even though Karmic is now in freeze. While it’s certainly an important issue for many, some are still missing the bigger picture.
As Ken VanDine from the Canonical desktop team said: “The primary benefit of switching to empathy wasn’t actually voice or video. The real gain is the incredibly powerful telepathy framework. Which is a huge win for the desktop. It isn’t really just about which IM client (pidgin is certainly mature and rich), it is about creating a truly collaborative desktop.”
Of course, Pidgin will most likely continue to be packaged with distributions for ever more, but it’s no longer the default. The choice has not been taken away. Certainly the migration to Empathy will affect the Pidgin user base, especially as those new to Linux may never encounter it.
With support for SIP also in Telepathy, we could well see Ekiga replaced as the default VoIP client in the coming months as well.
A Sobering Thought
As free software improves over time and applications come and go, it only stands to reason that what is a common tool today might not be tomorrow. The fact that there is lots of choice is naturally a good thing, after all, competition encourages innovation. It is sad to see Pidgin replaced in GNOME because it has been (and continues to be) a great instant messaging client. The problem is that GNOME is going a route that Pidgin is not, and that’s all right.
While Empathy focuses specifically on the GNOME desktop and Telepathy framework, it will probably never become very popular in other environments and operating systems. No longer having the same level of support from Linux distributions, where will Pidgin head to now? Will it try and win back its position, or concentrate on being a multi-platform application? One thing is certain, they are both excellent applications and the community will perhaps remain divided on which is best for many for years to come.
In light of all this, should a project bend and contort its own goals and ambitions for the desires of their users? Or should the project itself be the one defining what a user should expect in the first place? One should remember that Pidgin is a GTK application in its own right – it was never designed for GNOME per se and doesn’t have to follow their goals at all. GNOME is a project in itself too and must do what’s best for the desktop, even if that includes writing its own instant messaging client to replace what has previously been the most popular on the environment.
Still, situations like this are a good reminder that there’s no free lunch. If an application does not do what its users want today, it will be replaced by one that does tomorrow. Thankfully however, we have distributions to help make these decisions for us.