52

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

1
  • 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, 2016 at 4:27

8 Answers 8

36

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!

4
  • 2
    Seems to be working for me in Debian + Gnome. Thanks!
    – Kumar
    Jan 17, 2017 at 12:25
  • 2
    Kudos for the less dirty hack. That works and it's easily reversible. BTW, to get rid of processes already spawned, use pkill evolution to whack them. They won't come back after the hack.
    – fbicknel
    Jun 5, 2019 at 16:36
  • 1
    To fix this issue after each evolution update, I created a batch file to chmod the three processes. Thanks for the tips! Jul 27, 2020 at 5:27
  • In 22.04, the less dirty hack is probably a little different: sudo chmod -x /usr/libexec/evolution-calendar-factory May 22, 2022 at 21:59
17

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.

N.b. This worked for me in 14.04 and 16.04 if using the Unity desktop; it does not, however, in 18.04, as a lot of critical gnome packages depend upon it

7
  • 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. Apr 25, 2016 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?
    – Fern Moss
    Apr 25, 2016 at 22:09
  • Doesn't work on 15.10
    – Anwar
    May 4, 2016 at 5:16
  • Ubuntu 16.04, removed evolution-data-server, no other components where removed and the evolution processes are gone. :-) Jun 24, 2016 at 10:15
  • 1
    On debian "buster" this removes gdm3, gnome-core and other key components. I suspect similar things happen in Ubuntu... BEWARE.
    – RichieHH
    Mar 7, 2018 at 6:25
16

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.

1
  • This sounded right and promising, but it didn't stop anything in my 16.04 system, even after a reboot. But sudo apt remove evolution-data-server worked fine.
    – mivk
    Jan 9, 2019 at 22:18
7

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.

4
  • 7
    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.
    – Fern Moss
    Feb 10, 2015 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. Aug 13, 2015 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, 2015 at 5:08
  • 3
    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. Feb 16, 2017 at 16:00
4

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.

2

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.

1
  • pkill -f evolution-calendar-factory releases 100mb of RAM, thx! Jul 9, 2017 at 16:23
0

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.

0

In 22.04 I've done the work with:

sudo rm -rf /etc/xdg/autostart/evolution-alarm-notify.desktop

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .