Introduction to Pidgin

Pidgin is a Gtk+ 2 instant messaging client that can connect with a wide range of networks including Bonjour, ICQ, GroupWise, Jabber/XMPP, IRC, Gadu-Gadu, SILC, SIMPLE, and Zephyr.

This package is known to build and work properly using an LFS 12.1 platform.

Package Information

Pidgin Dependencies





Avahi-0.8 (required for the Bonjour plugin), Cyrus SASL-2.1.28, dbus-1.14.10, Doxygen-1.10.0, evolution-data-server-3.50.4, Graphviz-10.0.1, libidn-1.42 (required, if you wish to run the test suite), libnsl-2.0.1, NetworkManager-1.44.2, SQLite-3.45.1 (required for the Contact Availability Prediction plugin), startup-notification-0.12, Tk-8.6.13, Farstream (required for video and voice support), Gtkspell, libgadu, libgnt, Meanwhile (required for Sametime protocol support), Mono, SILC Client, SILC Toolkit, Zephyr, and MIT Kerberos V5-1.21.2 (required for Kerberos support in the Zephyr module)

Optional (runtime)


Installation of Pidgin

Compile Pidgin by running the following commands:

./configure --prefix=/usr        \
            --sysconfdir=/etc    \
            --with-gstreamer=1.0 \
            --disable-avahi      \
            --disable-gtkspell   \
            --disable-meanwhile  \
            --disable-idn        \
            --disable-nm         \
            --disable-tk         \
            --disable-vv         &&

If you have Doxygen-1.10.0 installed (Graphviz-10.0.1 can be used also) and you wish to create the API documentation, issue:

make docs

To test the results, issue: make check.

Now, as the root user:

make install &&
mkdir -pv /usr/share/doc/pidgin-2.14.13 &&
cp -v README doc/gtkrc-2.0 /usr/share/doc/pidgin-2.14.13

If you created the API documentation, install it using the following commands as the root user:

mkdir -pv /usr/share/doc/pidgin-2.14.13/api &&
cp -rv doc/html/* /usr/share/doc/pidgin-2.14.13/api


This package installs icon files into the /usr/share/icons/hicolor hierarchy and desktop files into the /usr/share/applications hierarchy. You can improve system performance and memory usage by updating /usr/share/icons/hicolor/index.theme and /usr/share/applications/mimeinfo.cache. To perform the update you must have GTK+-3.24.41 installed (for the icon cache) and desktop-file-utils-0.27 (for the desktop cache) and issue the following commands as the root user:

gtk-update-icon-cache -qtf /usr/share/icons/hicolor &&
update-desktop-database -q

Command Explanations

--with-gstreamer=1.0: Remove this switch and add --disable-gstreamer if you've not installed gstreamer-1.22.10.

--disable-avahi: Remove this switch if you've installed Avahi-0.8.

--disable-gtkspell: Remove this switch if you've installed Gtkspell and wish to enable spellchecking support.

--disable-meanwhile: Remove this switch if you've installed Meanwhile.

--disable-idn: Remove this switch if you've installed libidn-1.42.

--disable-tk: Remove this switch if you've installed Tk-8.6.13 and you wish to use the TCL bindings.

--disable-nm: Remove this switch if you've installed NetworkManager-1.44.2.

--disable-vv: Remove this switch if you've installed Farstream and wish to enable voice and video communication support. You should also remove the --disable-gstreamer flag.

--enable-cyrus-sasl: Use this switch if you've installed Cyrus SASL-2.1.28 and wish to build Pidgin with SASL support.

--disable-gnutls: Use this switch if you've got both GnuTLS-3.8.3 and nss-3.98 installed, but want to use nss-3.98 for the SSL support.

Configuring Pidgin

Config Files

~/.purple/* and ~/.gtkrc-2.0

Configuration Information

Most configuration can be accomplished by using the various preference settings inside the programs. Additionally, you can create a ~/.gtkrc-2.0 file which can store gtk+-2 theme settings that affect Pidgin and other Gtk+ 2 applications. Note that an example gtkrc-2.0 file was installed during the package installation and can be used as a starting point or reference.


Installed Programs: pidgin, purple-client-example, purple-remote, purple-send, purple-send-async, and purple-url-handler
Installed Library:, and
Installed Directories: /usr/include/libpurple, /usr/include/pidgin, /usr/lib/pidgin, /usr/lib/purple-2, /usr/share/doc/pidgin-2.14.13, /usr/share/pixmaps/pidgin, /usr/share/purple, and /usr/share/sounds/purple

Short Descriptions


is a GTK+ 2 instant messaging client


is an example that demonstrates how to use the libpurple-client library to communicate with purple


sends remote commands to Pidgin/Finch


calls purple API functions using DBus and prints the return value


calls purple API functions using DBus. As opposed to purple-send, it does not print the return value


is a python script to handle URLs with purple