From 9d9a9500cddb4589f7aa5bb64a8e6e89cd7e59d0 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Tue, 23 Jun 2020 10:44:50 +0200 Subject: [PATCH] xdg-autostart: Ignore all files with GNOME autostart phase If an autostart file for GNOME has a phase specified, then this implies it is a session service that needs to be started at a specific time. We have no way of handling the ordering, and while it does make sense to explicitly hide these services with X-systemd-skip, there is no point in even trying to handle them. --- src/xdg-autostart-generator/xdg-autostart-service.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/xdg-autostart-generator/xdg-autostart-service.c b/src/xdg-autostart-generator/xdg-autostart-service.c index 6b46cbaec25..0d33c704012 100644 --- a/src/xdg-autostart-generator/xdg-autostart-service.c +++ b/src/xdg-autostart-generator/xdg-autostart-service.c @@ -527,8 +527,9 @@ int xdg_autostart_service_generate_unit( return 0; } - if (streq_ptr(service->gnome_autostart_phase, "EarlyInitialization")) { - log_info("Not generating service for XDG autostart %s, EarlyInitialization needs to be handled separately.", + if (service->gnome_autostart_phase) { + /* There is no explicit value for the "Application" phase. */ + log_info("Not generating service for XDG autostart %s, startup phases are not supported.", service->name); return 0; } @@ -563,10 +564,7 @@ int xdg_autostart_service_generate_unit( fprintf(f, "Description=%s\n", t); } - /* Only start after the session is ready. - * XXX: GNOME has an autostart order which we may want to support. - * It is not clear how this can be implemented reliably, which - * is why it is skipped for now. */ + /* Only start after the session is ready. */ fprintf(f, "After=graphical-session.target\n"); -- 2.47.3