Friday, December 24, 2010

Getting rid of Pidgin's “I'm not here right now” status message

Do you hate the “I'm not here right now” status message that Pigdin insists on setting even when your status is available? I do. After wasting some time digging for solutions I found that this is considered a feature. Yeah, that's true: looks like many users want it so the developers decided to keep that crappy message around!

And to make things worst, even if you edit the $HOME/.purple/status.xml file and remove the additional status messages they will be restored next time you start running Pidgin, right? Well, not exactly.Think about this: what would Pidgin do if it could not add the stupid Available/Not-here status to the configuration file? Let's I give it a try:

$ su -
Password: ********
# chown root:root ~casantos/.purple/ ~casantos/.purple/status.xml
# chmod 755 ~casantos/.purple
# chmod 644 ~casantos/.purple/status.xml
# vi ~casantos/.purple/status.xml

Remove all lines between <statuses version="'1.0'"> and </statuses> and save the file (feel free to use other editors if you don't feel comfortable with vi).

Now Pidgin is unable to add the foolish statuses because the status file belongs to the superuser (root) and is not writable by other users. Pidgin also can not remove the old file and replace it by a new one, because the .purple directory is in the same situation. All other files and directories under .purple were left with the original ownership and permissions.

4 comments:

Anonymous said...

Here's my fix without using root
chmod 400 $HOME/.purple/status.xml
chmod 555 $HOME/.purple

Anonymous said...

Or:
rm -f $HOME/.purple/status.xml
mkdir $HOME/.purple/status.xml

Then a simple 'unlink(...);' does not remove the file, it has to be 'rmdir(...);' and no files have to change permissions.

Jim Parks said...

You can also try:

chattr +i ~/.purple/status.xml

That will make the status file immutable, meaning it can't be changed.

To undo it: chattr -i ~/.purple/status.xml

Henry Grebler said...

This was causing me some degree of grief at work where I was interacting with my boss who uses MS Lync.

I tried the trick 'mkdir $HOME/.purple/status.xml' and it still didn't work, so I went for the more drastic:

cd /usr/lib
cp libpurple.so.0.10.2 libpurple.so.0.10.2.orig_with_annoying_message
emacs libpurple.so.0.10.2

No more annoying message.