Skip to content

Commit

Permalink
Disable evolution-data-server by default
Browse files Browse the repository at this point in the history
evolution-data-center provides calendar support for GNOME Shell in a
default Fedora installation.  However, Qubes OS does not use GNOME
Shell.  Furthermore, the default email client in Qubes OS is
Thunderbird, not Evolution.  Therefore, evolution-data-server will
typically have no data to serve.

Since evolution-data-server provides no benefits to most Qubes users,
disable it by default to reduce memory consumption.  It can be
re-enabled with

$ qvm-service VMNAME evolution-data-server on

where VMNAME is the name of the qube in which evolution-data-server
should run.
  • Loading branch information
DemiMarie committed Aug 6, 2023
1 parent fdc05cf commit 7909ba2
Show file tree
Hide file tree
Showing 7 changed files with 21 additions and 1 deletion.
6 changes: 5 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,11 @@ USER_DROPINS := \
tracker-miner-rss-3.service \
tracker-miner-fs-control-3.service \
tracker-miner-fs-3.service \
tracker-extract-3.service
tracker-extract-3.service \

This comment has been minimized.

Copy link
@Rudd-O

Rudd-O Aug 7, 2023

Contributor

I understand how helpful disabling Tracker and Evolution data server is going to be, but basically what this means is that many applications will simply and inexplicably not work for pretty much all users, who are not going to know they need to go look for this arcane setting the user must run.

There must be a better way. Perhaps a socket activated service instead? That way it only starts when it is necessary.

This comment has been minimized.

Copy link
@marmarek

marmarek Aug 8, 2023

Member

Well, those are already dbus-activable services. And from what I see, at least evolution one is started pretty much immediately, seems like by gvfs-daemon iterating over things on startup...

This comment has been minimized.

Copy link
@DemiMarie

DemiMarie Aug 8, 2023

Author Contributor

@Rudd-O which applications are your referring to?

This comment has been minimized.

Copy link
@Rudd-O

Rudd-O Aug 8, 2023

Contributor

Yes, but that means Evolution will fail because the service has been disabled here and it won't activate.

I use Evolution. Yes, I have already enabled the qvm-service corresponding to it. Who is going to explain to users, and through which mechanism, that Evolution being defective unless they type an arcane command is the intended result?

This comment has been minimized.

Copy link
@DemiMarie

DemiMarie Aug 8, 2023

Author Contributor

How does Evolution fail?

This comment has been minimized.

Copy link
@Rudd-O

Rudd-O Aug 11, 2023

Contributor

Evolution requests these services to be started via D-Bus. If the marker file does not exist, this config change makes it so the service never starts. As a result, Evolution can't actually manage calendars or contacts — possibly even crashes outright. Likely the same happens with GNOME calendar and GNOME contacts.

evolution-addressbook-factory.service \
evolution-calendar-factory.service \
evolution-source-registry.service \
evolution-user-prompter.service

# Ubuntu Dropins
ifeq ($(release),Ubuntu)
Expand Down
4 changes: 4 additions & 0 deletions debian/qubes-core-agent.install
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,10 @@ usr/lib/systemd/user/tracker-miner-fs-control-3.service.d/30_qubes.conf
usr/lib/systemd/user/tracker-miner-rss-3.service.d/30_qubes.conf
usr/lib/systemd/user/tracker-writeback-3.service.d/30_qubes.conf
usr/lib/systemd/user/tracker-xdg-portal-3.service.d/30_qubes.conf
usr/lib/systemd/user/evolution-addressbook-factory.service.d/30_qubes.conf
usr/lib/systemd/user/evolution-calendar-factory.service.d/30_qubes.conf
usr/lib/systemd/user/evolution-source-registry.service.d/30_qubes.conf
usr/lib/systemd/user/evolution-user-prompter.service.d/30_qubes.conf
lib/udev/rules.d/50-qubes-mem-hotplug.rules
usr/bin/qubes-desktop-run
usr/bin/qubes-open
Expand Down
4 changes: 4 additions & 0 deletions rpm_spec/core-agent.spec.in
Original file line number Diff line number Diff line change
Expand Up @@ -1184,6 +1184,10 @@ The Qubes core startup configuration for SystemD init.
%_userunitdir/tracker-miner-rss-3.service.d/30_qubes.conf
%_userunitdir/tracker-writeback-3.service.d/30_qubes.conf
%_userunitdir/tracker-xdg-portal-3.service.d/30_qubes.conf
%_userunitdir/evolution-addressbook-factory.service.d/30_qubes.conf
%_userunitdir/evolution-calendar-factory.service.d/30_qubes.conf
%_userunitdir/evolution-source-registry.service.d/30_qubes.conf
%_userunitdir/evolution-user-prompter.service.d/30_qubes.conf

%post systemd

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Unit]
ConditionPathExists=/run/qubes-service/evolution-data-server
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Unit]
ConditionPathExists=/run/qubes-service/evolution-data-server
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Unit]
ConditionPathExists=/run/qubes-service/evolution-data-server
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Unit]
ConditionPathExists=/run/qubes-service/evolution-data-server

0 comments on commit 7909ba2

Please sign in to comment.