units: add graphical-session-pre.target user unit (#3848)

This complements graphical-session.target for services which set up the
environment (e. g. dbus-update-activation-environment) and need to run before
the actual graphical session.
This commit is contained in:
Martin Pitt 2016-08-02 14:56:45 +02:00 committed by Zbigniew Jędrzejewski-Szmek
parent 7633f8ef37
commit 98d2d46876
3 changed files with 29 additions and 1 deletions

View file

@ -574,7 +574,8 @@ dist_userunit_DATA = \
units/user/basic.target \
units/user/default.target \
units/user/exit.target \
units/user/graphical-session.target
units/user/graphical-session.target \
units/user/graphical-session-pre.target
nodist_userunit_DATA = \
units/user/systemd-exit.service

View file

@ -927,6 +927,19 @@ PartOf=graphical-session.target
</programlisting>
</example>
</refsect2>
<refsect2>
<title>graphical-session-pre.target</title>
<para>This target contains services which set up the environment or
global configuration of a graphical session, such as SSH/GPG agents
(which need to export an environment variable into all desktop processes)
or migration of obsolete d-conf keys after an OS upgrade (which needs to
happen before starting any process that might use them). This target must
be started before starting a graphical session
like <filename>gnome-session.target</filename>.</para>
</refsect2>
</refsect1>
<refsect1>

View file

@ -0,0 +1,14 @@
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Session services which should run early before the graphical session is brought up
Documentation=man:systemd.special(7)
Requires=basic.target
Before=graphical-session.target
RefuseManualStart=yes
StopWhenUnneeded=yes