Using Evolution under KDE – GNOME Keyring issues

Lets face it – Kontact is a nice application but its not really a contender if you want integration with your corporate address book and calendar in your PIM application1 and Evolution is the only solution for the feature set one would expect from a corporate friendly PIM solution.

Evolution works great when running under GNOME, but if you hate GNOME 3 as much as I do2, then you are likely to try to run Evolution under a recent KDE 4. And then problems start mounting – there’s the file dialogs which look completely different and don’t inter-operate with KDE’s virtual file system layer (KIO), but the most annoying problem is saving the passwords for your email, address book and calendar services.

Evolution relies on GNOME’s keyring service to store passwords for remote services, and that service is not running when you start KDE. Without the keyring, Evolution will keep asking you for passwords to all your email services when you start up, and for all your address book services when you try to compose an email. Which wouldn’t have been that bad if not for the fact that before popping up the password dialog, Evolution spends minutes (!!) trying to contact the GNOME keyring service. Only after being frozen for a couple of minutes you get asked for the first password, and if you have more then one service then please wait two more minutes while Evolution tries fruitlessly to contact GNOME keyring again!

The solution is simple – have GNOME keyring launch automatically when you log in to KDE, just like it does for GNOME. There are several ways to do this – for example using KDE’s “startup applications” system or writing custom profile scripts (I’ve tried both), but the more elegant solution I found in fedorahosted.org where someone committed a simple script that generates GNOME keyring startup and shutdown scripts for KDE. I’m guessing this is used in the KDE live CD spins for Fedora.

Anyway, this script can easily adapted to generate GNOME keyring integration scripts for your local KDE installation. Just start Konsole, and paste this into the command line:


cat > $HOME/.kde/env/start-custom.sh <<EOF
#!/bin/sh
eval \`gnome-keyring-daemon\`
export GNOME_KEYRING_PID
export GNOME_KEYRING_SOCKET
EOF
chmod 755 $HOME/.kde/env/start-custom.sh
cat > $HOME/.kde/shutdown/stop-custom.sh <<EOF
#/bin/sh
if [-n "\$GNOME_KEYRING_PID"]; then
kill \$GNOME_KEYRING_PID
fi
EOF
chmod 755 $HOME/.kde/shutdown/stop-custom.sh

Enhanced by Zemanta
  1. also – contrary to popular belief in hacker circles, rich text editing is useful – and Kontact really sucks at that []
  2. if you are a GNOME user and weren’t exposed to GNOME 3 yet, then don’t worry – soon coming to a distro near your, and you’re likely not going to like it []

The sorry state of mail user agents

I’ve been moaning on and off about how much e-mail clients, or more specifically – “personal information managers” – simply suck. All of them – there isn’t one client software that is useful in all aspects.

I mean – if you are a simple e-mail user: have one account with which you send a few emails, receive a few e-mails and sometimes forward something to your list of friends – then you have several good options including a few web-mail systems.

If, on the other hand, you are more serious in your communication requirements and you need to:

  • Work with multiple e-mail accounts and manage them separately but with the option of moving stuff between accounts.
  • Connect with MS-Exchange (still most companies in Israel use MS-Exchange for their groupware backend)
  • Work with multiple mailing lists with different policies and different internal filing requirements
  • Keep all your past communications for reference
  • Inter-operate with multiple shared calendaring systems, and specifically with other people’s calendars in a heterogeneous environment (some people do not believe there are e-mail clients other then MS-Outlook)
  • Do all this on multiple computers so that e-mail, address books, calendars and what-not are transparently available on all computers
  • Use Linux as your computing platform of choice.

Then you are basically out of luck. The Linux requirement is not that of a problem really (contrary to what many people keep saying when they nag me about moving to MS-Outlook) as the situation isn’t really better in Windows or Mac except that you can’t get Evolution to work there and theoretically Evolution could provide what I need.

(more…)