I was surprized not to have been upgrading Pidgin for quite a while on my laptop (Ubuntu 10.04 Lucid).
It seems Pidgin PPA is not updated accordingly…. I’m still running Pidgin 2.7.11.
When I check on Pidgin site, I could see the latest version is… 2.9.0 !
Time to upgrade… 🙂
Pidgin upgrade
After a quick search, I noticed those packages are being available on GetDeb.
This is a software portal that comes with an Ubuntu repository which you can use to install applications that are not available in the official Ubuntu repositories – this includes updated versions for various applications.
I just added it as a new source.list:
cd /etc/apt/sources.list.d sudo vi getdeb.list
Just enter a single line:
deb http://archive.getdeb.net/ubuntu lucid-getdeb apps
You also need to fetch the repository key:
wget -q -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -
And then, you can update/upgrade:
sudo apt-get update sudo apt-get upgrade
(on my laptop, this also upgraded my VLC version… cool !)
And that’s it ! It runs out of the box…
You can check Pidgin change log.
SIPE upgrade
My company is using MOC (Microsoft Office Communicator)… no comment…
To be able to discuss with my teamates, I installed SIPE since the very beginning, which is a Pidgin plugin “connecting” to Microsoft Office Communicator.
Here again, my current version is obsolete: 1.10.1 (while SIPE web site is proposing 1.11.2)
Unfortunately, no package is available for my Ubuntu distribution. I had to compile myself, which was a little bit… painful (but easier when you know what to do) !
Here are the main steps:
- install libnice
- install farsight2
- install libpurple-dev
- compile SIPE
install libnice
libnice is installed on my Ubuntu, but not in a version compatible with SIPE requirements…
So I had to fetch the latest version (0.1.0) from libnice repository
There, it is quite straight forward:
wget http://nice.freedesktop.org/releases/libnice-0.1.0.tar.gz tar zxvf libnice-0.1.0.tar.gz cd libnice-0.1.0/ ./configure --prefix=/usr make sudo make install
No surprise… all seems to work fine.
install farsight2
Here farsight2 is completely missing from my distro. And no package in sight…
So I downloaded the source code from farsight2 repository
SIPE is requiring farsight2 version >= 0.0.26. I wanted to pick up the latest one (0.0.29), but when I tried to compile it, this one was requiring glibc >= 2.26, and I am running glibc 2.24.1 (and I don’t want to change this : it may have too much impact !!!)
So I picked up the latest version compatible with my Glibc 2.24.1 and satisfying SIPE requirements: this is farsight2-0.0.27.
As pre-requisite, I had to install the DEV packages of 2 existing packages:
sudo apt-get install python-gobject-dev sudo apt-get install python-gst0.10-dev
Then, usual installation magic commands:
tar zxvf farsight2-0.0.27.tar.gz cd farsight2-0.0.27 ./configure --prefix=/usr make sudo make install
install libpurple-dev
This one is very simple:
sudo apt-get install libpurple-dev
compile SIPE
I downloaded the latest package from SIPE repository (version 1.11.2).
Then, I faced compilation issues:
In file included from purple-dnsquery.c:25:
/usr/include/libpurple/dnssrv.h:115: error: expected ‘)’ before ‘*’ token
Thanks to the very active support on the forum (Stefan Becker), I get an answer a few hours after:
“1.11.2 unfortunately doesn’t compile with libpurple API >= 2.8.0 due to incompatible API changes. I would suggest to either wait for 1.12.0, fetch HEAD from git or use the patch from this conversation.”
So I fetched SIPE source code (v 1.11.2) and installed the patch:
wget http://aur.archlinux.org/packages/pidgin-sipe/pidgin-sipe.tar.gz tar zxvf pidgin-sipe.tar.gz cd pidgin-sipe-1.11.2 patch -p1 -i ../pidgin-sipe/sipe-purple-2.8.0.patch
Once again, I faced another compilation issue: a warning message, which was preventing compilation to continue.
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../.. -Werror -Wall -Wextra -Werror=declaration-after-statement -I/usr/include/libxml2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DLOCALEDIR=\"/usr/share/locale\" -I./../api -I/usr/include/nss -I/usr/include/nspr -g -O2 -MT libsipe_core_la-sdpmsg.lo -MD -MP -MF .deps/libsipe_core_la-sdpmsg.Tpo -c sdpmsg.c -fPIC -DPIC -o .libs/libsipe_core_la-sdpmsg.o
cc1: warnings being treated as errors
sdpmsg.c: In function ‘sdpmsg_parse_msg’:
sdpmsg.c:244: error: ‘type’ may be used uninitialized in this function
make[3]: *** [libsipe_core_la-sdpmsg.lo] Error 1
make[3]: Leaving directory `/home/hugue/Downloads/pidgin-sipe-1.11.2/src/core
The workaround is very simple (setup configure to ignore warnings), but Stefan asked me to post the issue… he answered me shortly after that this was corrected in the latest version available on their GIT (but I didn’t make the effort to get it…).
Meanwhile, I compiled as such:
./configure --prefix=/usr --disable-quality-check make sudo make install
And that’s it !
what about video/audio on SIPE ?
One of my first tests was the audio/video feature, which is today available in my company on MOC.
Unfortunately, it does not work for me. There is a “incompatible encryption levels error” when making the call.
After a short investigation, and Stefan’s advices, the main problem is coming from support of SRTP in Farsight, which is not yet available… As soon as we get it, it should not be a big issue to include the needed mechanisms in SIPE…
Conclusion: great tools, and another very good example of the power of opensource community ! Thanks guys !
Pingback: Audio/Video with SIPE on Ubuntu 12.04 | Raistlin's blog
Awesome tutorial!