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-11.0 platform.

Package Information

Pidgin Dependencies





Avahi-0.8 (required for the Bonjour plugin), Cyrus SASL-2.1.27, dbus-1.12.20, Doxygen-1.9.2, evolution-data-server-3.40.4, GConf-3.2.6, Graphviz-2.48.0, libidn-1.38 (required, if you wish to run the test suite), NetworkManager-1.32.10, SQLite-3.36.0 (required for the Contact Availability Prediction plugin), startup-notification-0.12, Tk-, Farstream (Version 0.1) (required for video and voice support), Gtkspell, libgadu, Meanwhile (required for Sametime protocol support), Mono, SILC Client, SILC Toolkit, Zephyr, and MIT Kerberos V5-1.19.2 (required for Kerberos support in the Zephyr module)

Optional (runtime)


User Notes:

Installation of Pidgin

If you wish to run the test suite, make sure that libidn-1.38 is installed and remove the switch --disable-idn. Compile Pidgin by running the following commands:

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

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

make docs

Remember the remarks before configure. To test the results, issue: make check.

Now, as the root user:

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

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

mkdir -pv /usr/share/doc/pidgin-2.14.6/api &&
cp -v doc/html/* /usr/share/doc/pidgin-2.14.6/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+-2.24.33 or GTK+-3.24.30 installed (for the icon cache) and desktop-file-utils-0.26 (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

--disable-gstreamer: This switch disables gstreamer support because there are problems with the build when Voice/Video support is disabled, and gstreamer is enabled.

--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.38.

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

--disable-vv: Remove this switch if you've installed Farstream (Version 0.1) 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.27 and wish to build Pidgin with SASL support.

--disable-gnutls: Use this switch if you've got both GnuTLS-3.7.2 and NSS-3.69 installed, but want to use NSS-3.69 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.6, /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

Last updated on