Thursday, January 31, 2008

Getting Pidgin To Support SameTime Protocol

I did'nt find many documents on getting pidgin to support Sametime protocol. So this guide is aimed at filling that gap. At the time of writing this document the pidgin version was 2.3.1. This can be downloaded from here. To get Sametime protocol working we need libmeanwhile installed. The library can be downloaded from here. But the best approach would be to install rpms/debs. You can find them in your distro extras. The libraries have dependencies on gnutls and gnutls-devel.
So this has to installed prior to installing libmeanwhile.

One libmeanwhile is set up, its time to install pidgin. Unzip pidgin and run the configure script.
#tar jxvf pidgin-2.3.1.tar.bz2
#cd pidgin-2.3.1/
Run the script
#./configure --prefix=/usr --with-gnutls-includes=/usr/include/gnutls/
Make sure that sametime protocol is selected as the part of the configure script. You configure output must be as follows:

pidgin 2.3.1

Build GTK+ 2.x UI............. : yes
Build console UI.............. : yes
Build for X11................. : yes

Enable Gestures............... : yes
Protocols to build dynamically : gg irc jabber msnp9 myspace novell oscar qq sametime simple yahoo zephyr
Protocols to link statically.. :

Build with GStreamer support.. : no
Build with D-Bus support...... : yes
D-Bus services directory...... : /usr/share/dbus-1/services
Build with NetworkManager..... : no
SSL Library/Libraries......... : Mozilla NSS
Build with Cyrus SASL support. : no
Use kerberos 4 with zephyr.... : no
Use external libzephyr........ : no
Has you....................... : yes

Use XScreenSaver Extension.... : yes
Use X Session Management...... : yes
Use startup notification...... : yes
Build with GtkSpell support... : yes

Build with plugin support..... : yes
Build with Mono support....... : no
Build with Perl support....... : yes
Build with Tcl support........ : yes
Build with Tk support......... : yes

Print debugging messages...... : no

Pidgin will be installed in /usr/bin.

Now, to compile the program

Then install (needs root privilege).
#sudo make install

Its time to start pidgin.

Once pidgin starts, you can create your sametime account as shown in the figure.

Next step is to make some advanced configuration as shown in figure.

Note: For the newer Sametime servers, its necessary that client id is shielded. So please tick on "Hide client identity"

After that save the account and close pidgin (Pidgin continues to run in the system tray. Make sure you kill that).
Its been observed that there were some problems with pidgin authenticating to the server.
There is a hack to get around this bug.
Open the file ~/.purple/accounts.xml
Search the file for "prpl-meanwhile"
Under the <settings> of this sametime account add the following line
<setting name='client_major' type='int'>30</setting>
<setting name='client_minor' type='int'>6511</setting>
<setting name='client_id_val' type='int'>4098</setting>

Common Problem Faced:
You might encounter a problem that looks like this "pidgin : symbol lookup error: pidgin : undefined symbol : purple_core_ensure_single_instance"
This problem is commonly due to the fact that you have previous version of pidgin installed. To solve this problem, do a "make uninstall" on the source directory of older pidgin. In case you have deleted the source directory then, remove the pidgin folder in /usr/local/lib/ as well as /usr/local. If its an rpm the do uninstall pidgin using -e option. Then reinstall the newly compiled pidgin by doing "make install".This must solve the problem.

Monday, January 28, 2008

OLPC Project Going Microsoft Way

The new year started with a bad news. Microsoft has got its way as far as OLPC is concerned. They have decided to go on a dual boot system with linux as one of the options. For those who do not know about OLPC, Its a project started to provide a low cost laptops to poor children. The laptop should cost around Rs.15000. It is supposed to have a turbo charger which can be attached to a bicycle and charged. The laptop is expected to have linux as primary OS.

Along came Microsoft to poke its nose. They wanted win xp to run on OLPC. They were generous enough to port the OS themselves and avoid troubles for the OLPC team. If we analyze the need for Microsoft to interfere with the OLPC is simply to avoid third world children from using linux. Microsoft is jealous and simply can't stand the next generation learning something new that might be against Microsoft. The reason given by Microsoft for the move is to benefit "Bill & Melinda Gates Foundation". Iam not going to buy this reason. What is even sadder is the fact that their are many people supporting this move. People blindly believe that Microsoft products are easy to use and faster. Unfortunately its far from the truth. Most of windows user by now realize that they cannot run the OS without an anti-virus software. And its a know fact that most Antivirus software takes up a lot of system resources. How can winxp work well on a low performing hardware such as OLPC with antivirus? So, the bottom line is that even though the winxp might work well on OLPC the additional software load to keep the OS safe is going to pull down the performance. You would'nt want children to be spending most of their time removing virus and formating systems. The alternate OS, linux, comes really handy here. Its free , easily customizable and light weight. So lets hope the Big Microsoft Bully stops this madness and do something constructive by letting OLPC go the original way.