diff options
-rw-r--r-- | Makefile.am | 5 | ||||
-rw-r--r-- | manager.c | 10 |
2 files changed, 10 insertions, 5 deletions
diff --git a/Makefile.am b/Makefile.am index 87c686b931..26a2c95850 100644 --- a/Makefile.am +++ b/Makefile.am @@ -250,3 +250,8 @@ CLEANFILES = \ systemadm.c \ systemd-initctl.service \ systemd-logger.service + +install-data-hook: + $(MKDIR_P) $(DESTDIR)$(pkgsysconfdir)/system $(DESTDIR)$(pkgsysconfdir)/session $(DESTDIR)$(sysconfdir)/xdg/systemd + rm -f $(DESTDIR)$(sysconfdir)/xdg/systemd/session + ln -sf $(DESTDIR)$(pkgsysconfdir)/session $(DESTDIR)$(sysconfdir)/xdg/systemd/session @@ -149,12 +149,12 @@ static char** session_dirs(void) { } if ((e = getenv("XDG_CONFIG_DIRS"))) - config_dirs = strv_split(e, ":"); - else - config_dirs = strv_new("/etc/xdg", NULL); + if (!(config_dirs = strv_split(e, ":"))) + goto fail; - if (!config_dirs) - goto fail; + /* We don't treat /etc/xdg/systemd here as the spec + * suggests because we assume that that is a link to + * /etc/systemd/ anyway. */ if ((e = getenv("XDG_DATA_HOME"))) { if (asprintf(&data_home, "%s/systemd/session", e) < 0) |