tox-prpl – Tox Protocol Plugin For Pidgin / libpurple

Home    News    Help    Download

This is a Tox protocol plugin for Pidgin / libpurple.

The source code is available on github.

It is distributed under GPLv3.

The development is still ongoing, however most features were implemented and the plugin is already usable. It might still be unstable and requires more testing.

IMPORTANT NOTE: The Tox library is currently in a pre-alpha state, that means ‘work in progress’ and that also means that your conversatins may not yet be absolutely secure. Use the plugin for testing purposes only.

Current status

The plugin is almost feature complete for now, so focus will be on testing and stability. When new features are added to the Tox library, I will surely add support for them in the plugin.

One of the currently missing features are group chats.

Here’s a screenshot of a Tox chat in Pidgin:

Below is a list of things that are implemented (which does not mean they are not buggy and won’t crash and burn):

Implemented

Limitations

Currently it’s not clear what will happen if you use the same data file
on several clients and go online at the same time.

TODO

Compiling on Linux

Dependencies

Additionally you will need gcc, autoconf, automake, libtool and maybe a few other things for actually compiling the code.

I assume that you can install the development packages for libpurple and glib using your favorite package manager, same goes for development tools, so I’ll only walk you through the steps for libsodium and Tox.

Usually I prefer not to install software system wide which does not come as a distribution package (i.e. if there is no .rpm, .deb, etc.).

In the example below, replace “youruser” with your actual user name. If you do not provide the prefix, the installation will go to /usr/local/ which will require root priveleges for the make install step.

libsodium

If you cloned libsodium from git you will have to run ./autogen.sh to generate the configure script, if you downloaded a release tarball then configure will already be there.

./configure --prefix=/home/youruser/Tox/sysroot
make
make install

This will install libsodium headers in /home/youruser/Tox/sysroot/include and the library in /home/youruser/Tox/sysroot/lib.

Remember the /home/youruser/Tox/sysroot/ path, we will need it later on.

Tox core

Clone the repo if you did not do so already:

git clone https://github.com/irungentoo/ProjectTox-Core.git
cd ProjectTox-Core

Generate the configure script:

autoreconf -i

Tell configure where to find dependencies and where to install the library, compile and install:

./configure --with-dependency-search=/home/youruser/Tox/sysroot/ --prefix=/home/youruser/Tox/sysroot/
make
make install

tox-prpl

Clone the repo if you did not do so already:

git clone https://github.com/jin-eld/tox-prpl.git
cd tox-prpl

Generate the configure script:

autoreconf -i

Tell configure where to find dependencies and where to install the plugin, compile and install:

./configure --with-dependency-search=/home/youruser/Tox/sysroot/ --prefix=/home/youruser/Tox/sysroot/
make
make install

Unless you also compiled pidgin and installed it in your above “sysroot”, the plugin will not be found, so as a last step you need to:

mkdir ~/.purple/plugins/
cp /home/youruser/Tox/sysroot/lib/purple-2/libtox.so ~/.purple/plugins/

If you used a non standard installation location for the library, as above, then you have to add it to your environment before running pidgin.

In the terminal where you start pidgin (assuming bash):

export LD_LIBRARY_PATH=/home/youruser/Tox/sysroot/lib

Now you are ready to start pidgin and to test the plugin.


Last update: 27-11-2016
(c) 2013-2016 Sergey 'Jin' Bostandzhyan < jin at mediatomb dot cc >