Is there a way of removing it from startup?
I don't need it and I'm not using evolution at all.

  • I tried this method to disable evolution-calendar-factory askubuntu.com/a/694515/158636 it seems to work in my ubuntu 14.04 unity desktop – Eka Aug 8 '16 at 4:27
up vote 1 down vote accepted

Ubuntu won't allow you to remove evolution-calendar-factory because this is a library shared by many programs.

If you try to execute: sudo apt-get purge evolution-data-server or sudo apt-get remove evolution-data-server your system will be broken!

You can test these commands in the terminal using the -s flag (simulate) (be careful!)

sudo apt-get remove evolution-data-server -s

And you will see that the ubuntu-gnome-desktop would be removed, and after next reboot, you won't be able to log in to the system any more. :(

So, do not remove evolution-data-server.

  • 6
    This is not true, at least with regards to the Unity environment on 14.04 (I can't speak for later versions). I've purged evolution-data-server on my own system and everything works just fine. I assume you are using GNOME as as desktop environment (ubuntu-gnome-desktop has never even been installed on my system), which apparently relies on that package. Note that evolution-data-server-common should stay installed, but that package doesn't cause evolution-calendar-factory to run. – Aibara Feb 10 '15 at 0:31
  • 1
    To expand on Aibara's comment, removing evolution-data-server-common will remove unity-control-center and replace it with gnome-control-center, among other things. – Matthew Read Aug 13 '15 at 18:45
  • 2
    apt-get purge evolution-data-server --dry-run allows you to see what will be purged before purging evolution-data-server. The --dry-run parameter informed me (15.10 Wily): The following packages will be REMOVED: evolution-data-server* gnome-contacts* libebook-1.2-16* libedata-book-1.2-25* libfolks-eds25* – noobninja Dec 5 '15 at 5:08
  • 2
    For Ubuntu 16.10, this is certainly not true. Removing evolution-data-server just removes packages that aren't needed for everyday unity use, and saves some RAM on your system. – David Georg Reichelt Feb 16 '17 at 16:00

I didn't have Evolution installed, but still had this running as well.

Remove the package evolution-data-server via the Software Center. Or type this into a terminal: sudo apt-get purge evolution-data-server. Then log out and back in, it should be gone.

  • Works fine for me in Ubuntu 16.04, This however removes the Snappy System and its components from the System and I am OK with that. At least the RAM usage of Unity is Under Control now.. Much Appreciated. – Rajat Pandita Apr 25 '16 at 19:33
  • @RajatPandita Odd, I'm using 16.04 now and have the Snappy packages without evolution-data-server. Maybe something is different since I upgraded from 14.04? – Aibara Apr 25 '16 at 22:09
  • Doesn't work on 15.10 – Anwar May 4 '16 at 5:16
  • Ubuntu 16.04, removed evolution-data-server, no other components where removed and the evolution processes are gone. :-) – andreaplanet Jun 24 '16 at 10:15
  • Warning: this broke my system in Ubuntu Gnome 16.04, as many other apps appeared associated with evolution-dat-server, including gnome shell. – Esteban Knöbl Jul 11 '16 at 18:17

If you want to remove evolution-data-server, it will remove these at least (tested in 16.04)

The following packages will be REMOVED:
  evolution-data-server gdm3 gnome-contacts gnome-shell libfolks-eds25
0 upgraded, 0 newly installed, 5 to remove and 378 not upgraded.
After this operation, 15.8 MB disk space will be freed.

So, the better treatment is a bit nasty, but it works!

Nasty Hack!

Rename Evolution binary folder, so that it won't be found! What works for me is these

sudo mv /usr/lib/evolution-data-server /usr/lib/evolution-data-server-disabled
sudo mv /usr/lib/evolution /usr/lib/evolution-disabled

That's it! Now, I can at least use the system.

Notes: If you disable evolution this way, you won't be able to use calender syncs or other fancy (useless for me) stuff.


Less dirty hack (update)

Looks like more and more people are unsatisfied with evolution lately. But in my current setup, I don't rename the folder. Instead I just remove the executable bit and it works.

For disabling calendar process, I used

sudo chmod -x /usr/lib/evolution/evolution-calendar-factory

The good thing with this method is other evolution service can still work (they start and runs)

Repeat the same process for evolution-source-registry and evolution-addressbook-factory if you want to shut them up too!

  • 2
    Seems to be working for me in Debian + Gnome. Thanks! – Kumar Jan 17 '17 at 12:25

If you're using Gnome or Gnome-Shell, it seems you cannot remove evolution-data-server, since it will remove also the entire DE

root@europa:/home/user# apt remove evolution-data-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
evolution-data-server gdm3 gnome-contacts gnome-shell gnome-shell-extension-weather gnome-shell-extensions libfolks-eds25
0 upgraded, 0 newly installed, 7 to remove and 6 not upgraded.
After this operation, 17,5 MB disk space will be freed.
Do you want to continue? [Y/n] n

If you still want to get rid of those annoying and resource-greedy processes, you can just delete (or, better, rename) the directory of their executables:

root@europa:/home/user# mv /usr/lib/evolution /usr/lib/evolution_DISABLE

Then kill all the running processes:

root@europa:/home/user# for procname in $(ps aux | grep evolution | awk -F'/' '{print $NF}' | grep evolution | grep -v grep); do killall $procname; done

This way, Gnome won't be able to restart them anymore.

Worked for me without any visible collateral damage.

So, if you think the above answers are too poisonous to your system (ripping out gnome-desktop prereqs, deleting/renaming packaged files? No thanks!), I may have a solution for you.

Create ~/.config/upstart/kill-evolution-services.conf and populate it with the following code. Be sure to replace USER with your username.

start on desktop-start
stop on desktop-end

script
  ME=USER
  GIVEUP=60
  while ! pgrep -u "$ME" -f '^/usr/lib/evolution/evolution'; do
    GIVEUP=$((GIVEUP - 1))
    if test $GIVEUP = 0; then
      break
    fi
    sleep 1
  done
  pkill -u "$ME" -f '^/usr/lib/evolution/evolution'
end script

This will run on login, wait until the evolution services have started (up to 60s, adjustable with GIVEUP), then kill them. From what I've seen (on 16.04) they'll stay dead until you interact with some application that needs them, like gnome-calendar (the app, not the indicator). To counter this, you can add the following to crontab (run "crontab -e" from terminal). Again, be sure to replace USER with your username.

*/1 * * * * pkill -u USER -f '^/usr/lib/evolution/evolution'

This will try to kill evolution services once per minute.

So we're rid of evolution services without driving apt crazy or even calling sudo. Allegedly the memory usage issues with these services has been fixed in Gnome 3.20, but Ubuntu has yet to backport them to 3.18. Keep an eye on https://bugs.launchpad.net/ubuntu/+source/indicator-datetime/+bug/1589605, even though it has nothing to do with indicator-datetime, from what I can tell. The indicator runs fine without evolution services at the lightdm login, anyway.

If any of this ends up having side effects on your configuration, you can simply delete ~/.config/upstart/kill-evolution-services.conf and remove the crontab line (again, crontab -e from a terminal). Then log out and back in for good measure, if you're paranoid.

  • pkill -f evolution-calendar-factory releases 100mb of RAM, thx! – Aquarius Power Jul 9 '17 at 16:23

You can mask the units using systemd (tested on Ubuntu 18.04, Unity):

systemctl --user mask evolution-addressbook-factory.service evolution-calendar-factory.service evolution-source-registry.service

After logout/login the services will not be started anymore.

I didn't try to remove it since I run gnome, but what did work was to copy the systemd unit files to /etc and set ExecStart to /bin/ls:

cp /usr/lib/systemd/user/evolution-calendar-factory.service /etc/systemd/user/
cp /usr/lib/systemd/user/evolution-source-registry.service /etc/systemd/user/

and in the unit file make sure ExecStart is /bin/ls:

ExecStart=/bin/ls

Then do

systemctl --user daemon-reload
systemctl --user restart evolution-source-registry
systemctl --user restart evolution-calendar-factory

Note that doing "systemctl disable --user evolution-source-registry" seemed to have no effect.

protected by Community Mar 23 at 17:01

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.