summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2010-05-24 22:29:59 +0200
committerLennart Poettering <lennart@poettering.net>2010-05-24 22:29:59 +0200
commit1e287fe32fd15b1691cbb966feef5fc2f9f6cf7b (patch)
treed039d803fb1561dd76014e8ba6eb6f392424e67f
parent6464aa0890dd21bf0b3e3acfc2b24a425b252c51 (diff)
unit: turn display-manager.target into a service
-rw-r--r--Makefile.am7
-rw-r--r--man/systemd.special.xml.in21
-rw-r--r--src/manager.h2
-rw-r--r--src/service.c2
4 files changed, 28 insertions, 4 deletions
diff --git a/Makefile.am b/Makefile.am
index 9b0e04f..f1f9da7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -517,9 +517,12 @@ install-data-hook:
$(LN_S) ../sys-kernel-security.automount sys-kernel-security.automount && \
$(LN_S) ../sys-fs-fuse-connections.automount sys-fs-fuse-connections.automount )
if TARGET_FEDORA
+ ( cd $(DESTDIR)$(pkgsysconfdir)/system && \
+ rm -f display-manager.service && \
+ $(LN_S) $(systemunitdir)/prefdm.service display-manager.service )
( cd $(DESTDIR)$(pkgsysconfdir)/system/graphical.target.wants && \
- rm -f prefdm.service && \
- $(LN_S) $(systemunitdir)/prefdm.service prefdm.service )
+ rm -f display-manager.service && \
+ $(LN_S) ../display-manager.service display-manager.service )
( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
rm -f rc-local.service && \
$(LN_S) $(systemunitdir)/rc-local.service rc-local.service )
diff --git a/man/systemd.special.xml.in b/man/systemd.special.xml.in
index daa9358..1c647e9 100644
--- a/man/systemd.special.xml.in
+++ b/man/systemd.special.xml.in
@@ -51,6 +51,7 @@
<para><filename>basic.target</filename>,
<filename>ctrl-alt-del.target</filename>,
<filename>default.target</filename>,
+ <filename>display-manager.service</filename>,
<filename>emergency.service</filename>,
<filename>graphical.target</filename>,
<filename>halt.target</filename>,
@@ -148,6 +149,26 @@
</listitem>
</varlistentry>
<varlistentry>
+ <term><filename>display-manager.service</filename></term>
+ <listitem>
+ <para>The display manager
+ service. Usually this should
+ be aliased (symlinked) to
+ <filename>gdm.service</filename>
+ or a similar display manager
+ service.</para>
+ <para>systemd automatically
+ adds dependencies of type
+ After for this target unit to
+ all SysV init script service
+ units with an LSB header
+ referring to the
+ <literal>$x-display-manager</literal>
+ facility, for compatibility
+ with Debian.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
<term><filename>emergency.service</filename></term>
<listitem>
<para>A special service unit
diff --git a/src/manager.h b/src/manager.h
index e2f9cf6..22ba04f 100644
--- a/src/manager.h
+++ b/src/manager.h
@@ -105,7 +105,7 @@ struct Watch {
#define SPECIAL_RPCBIND_TARGET "rpcbind.target" /* LSB's $portmap */
#define SPECIAL_SYSLOG_TARGET "syslog.target" /* LSB's $syslog; Should pull in syslog.socket or syslog.service */
#define SPECIAL_RTC_SET_TARGET "rtc-set.target" /* LSB's $time */
-#define SPECIAL_DISPLAY_MANAGER_TARGET "display-manager.target" /* Debian's $x-display-manager */
+#define SPECIAL_DISPLAY_MANAGER_SERVICE "display-manager.service" /* Debian's $x-display-manager */
#define SPECIAL_MAIL_TRANSFER_AGENT_TARGET "mail-transfer-agent.target" /* Debian's $mail-{transport|transfer-agent */
#define SPECIAL_BASIC_TARGET "basic.target"
#define SPECIAL_RESCUE_TARGET "rescue.target"
diff --git a/src/service.c b/src/service.c
index d4b874d..3fbc0ac 100644
--- a/src/service.c
+++ b/src/service.c
@@ -203,7 +203,7 @@ static int sysv_translate_facility(const char *name, char **_r) {
/* Debian extensions */
"$mail-transport-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
"$mail-transfer-agent", SPECIAL_MAIL_TRANSFER_AGENT_TARGET,
- "$x-display-manager", SPECIAL_DISPLAY_MANAGER_TARGET,
+ "$x-display-manager", SPECIAL_DISPLAY_MANAGER_SERVICE
};
unsigned i;