[systemd-commits] 6 commits - configure.ac .gitignore Makefile.am man/systemd.special.xml man/systemd.unit.xml src/manager.h src/mount.c src/swap.c units/emergency.service units/.gitignore units/local-fs.target units/network.target units/nss-lookup.target units/remote-fs.target units/rpcbind.target units/rtc-set.target units/shutdown.target units/sigpwr.target units/sockets.target units/swap.target units/syslog.target.in units/systemd-initctl.service.in units/systemd-initctl.socket units/systemd-logger.service.in units/systemd-logger.socket
Lennart Poettering
lennart at kemper.freedesktop.org
Sun May 16 13:50:09 PDT 2010
.gitignore | 1
Makefile.am | 12 -
configure.ac | 35 ++--
man/systemd.special.xml | 325 +++++++++++++++++++++++++++++++++++++++
man/systemd.unit.xml | 4
src/manager.h | 6
src/mount.c | 10 -
src/swap.c | 2
units/.gitignore | 1
units/emergency.service | 2
units/local-fs.target | 2
units/network.target | 2
units/nss-lookup.target | 2
units/remote-fs.target | 2
units/rpcbind.target | 21 ++
units/rtc-set.target | 2
units/shutdown.target | 2
units/sigpwr.target | 2
units/sockets.target | 2
units/swap.target | 2
units/syslog.target.in | 23 ++
units/systemd-initctl.service.in | 2
units/systemd-initctl.socket | 2
units/systemd-logger.service.in | 2
units/systemd-logger.socket | 2
25 files changed, 441 insertions(+), 27 deletions(-)
New commits:
commit f0b02ca2afa806efb73b43a81204ff21c4c65446
Author: Lennart Poettering <lennart at poettering.net>
Date: Sun May 16 22:50:02 2010 +0200
units: add rpcbind.target special
diff --git a/Makefile.am b/Makefile.am
index 15da7b2..7cbbe47 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -70,6 +70,7 @@ dist_systemunit_DATA = \
units/network.target \
units/nss-lookup.target \
units/remote-fs.target \
+ units/rpcbind.target \
units/rtc-set.target \
units/shutdown.target \
units/sigpwr.target \
diff --git a/units/.gitignore b/units/.gitignore
index 88895b6..02fd430 100644
--- a/units/.gitignore
+++ b/units/.gitignore
@@ -1,2 +1,3 @@
systemd-initctl.service
systemd-logger.service
+syslog.target
diff --git a/units/rpcbind.target b/units/rpcbind.target
new file mode 100644
index 0000000..ba6160e
--- /dev/null
+++ b/units/rpcbind.target
@@ -0,0 +1,21 @@
+# This file is part of systemd.
+#
+# Copyright 2010 Lennart Poettering
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# systemd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+
+# See systemd.special(7) for details
+
+[Unit]
+Description=RPC Port Mapper
commit 07c132ffdd4146b3c5c8c01b220147cfc13122bb
Author: Lennart Poettering <lennart at poettering.net>
Date: Sun May 16 22:48:14 2010 +0200
swap: add swap.target Wants links only when running as system instance
diff --git a/src/swap.c b/src/swap.c
index bd49e1e..2c7e492 100644
--- a/src/swap.c
+++ b/src/swap.c
@@ -115,7 +115,7 @@ static int swap_add_target_links(Swap *s) {
if ((r = manager_load_unit(s->meta.manager, SPECIAL_SWAP_TARGET, NULL, &tu)) < 0)
return r;
- if (!p->noauto && p->handle)
+ if (!p->noauto && p->handle && s->meta.manager->running_as != MANAGER_SESSION)
if ((r = unit_add_dependency(tu, UNIT_WANTS, UNIT(s), true)) < 0)
return r;
commit 307e85efbb781ac609b6b3f905ff76b886ddd01e
Author: Lennart Poettering <lennart at poettering.net>
Date: Sun May 16 22:46:03 2010 +0200
mount: add remote-fs.target/local-fs.target Wants links only when running as system instance
diff --git a/src/mount.c b/src/mount.c
index ec03a52..921984c 100644
--- a/src/mount.c
+++ b/src/mount.c
@@ -215,7 +215,7 @@ static int mount_add_target_links(Mount *m) {
MountParameters *p;
Unit *tu;
int r;
- bool noauto, handle, automount;
+ bool noauto, handle, automount, user;
assert(m);
@@ -227,6 +227,7 @@ static int mount_add_target_links(Mount *m) {
return 0;
noauto = !!mount_test_option(p->options, MNTOPT_NOAUTO);
+ user = mount_test_option(p->options, "user") || mount_test_option(p->options, "users");
handle = !!mount_test_option(p->options, "comment=systemd.mount");
automount = !!mount_test_option(p->options, "comment=systemd.automount");
@@ -239,7 +240,7 @@ static int mount_add_target_links(Mount *m) {
if ((r = manager_load_unit(UNIT(m)->meta.manager, target, NULL, &tu)) < 0)
return r;
- if (automount) {
+ if (automount && m->meta.manager->running_as != MANAGER_SESSION) {
Unit *am;
if ((r = unit_load_related_unit(UNIT(m), ".automount", &am)) < 0)
@@ -253,8 +254,9 @@ static int mount_add_target_links(Mount *m) {
} else {
if (!noauto && handle)
- if ((r = unit_add_dependency(tu, UNIT_WANTS, UNIT(m), true)) < 0)
- return r;
+ if (user || m->meta.manager->running_as != MANAGER_SESSION)
+ if ((r = unit_add_dependency(tu, UNIT_WANTS, UNIT(m), true)) < 0)
+ return r;
return unit_add_dependency(UNIT(m), UNIT_BEFORE, tu, true);
}
commit 9f23530860942a8f94b7c535ead80c38f02424b1
Author: Lennart Poettering <lennart at poettering.net>
Date: Sun May 16 22:45:11 2010 +0200
man: document a few special units
diff --git a/.gitignore b/.gitignore
index 4efd824..700a085 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,6 +10,7 @@ systemctl
systemadm
.dirstamp
*.5
+*.7
*.html
*~
*.tar.gz
diff --git a/Makefile.am b/Makefile.am
index 780ded6..15da7b2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -156,18 +156,21 @@ EXTRA_DIST += \
dist_man_MANS = \
man/systemd.unit.5 \
- man/systemd.service.5
+ man/systemd.service.5 \
+ man/systemd.special.7
HTMLMANS = \
man/systemd.unit.html \
- man/systemd.service.html
+ man/systemd.service.html \
+ man/systemd.special.html
dist_noinst_DATA = \
$(HTMLMANS)
EXTRA_DIST += \
man/systemd.unit.xml \
- man/systemd.service.xml
+ man/systemd.service.xml \
+ man/systemd.special.xml
systemd_SOURCES = \
$(COMMON_SOURCES) \
@@ -297,7 +300,7 @@ CLEANFILES = \
units/syslog.target
if HAVE_XSLTPROC
-man/%.5: man/%.xml
+man/%.5 man/%.7: man/%.xml
$(MKDIR_P) man
$(XSLTPROC) -o $@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
diff --git a/man/systemd.special.xml b/man/systemd.special.xml
new file mode 100644
index 0000000..3f9286d
--- /dev/null
+++ b/man/systemd.special.xml
@@ -0,0 +1,325 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+ This file is part of systemd.
+
+ Copyright 2010 Lennart Poettering
+
+ systemd is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ systemd is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="systemd.special">
+
+ <refentryinfo>
+ <title>systemd.special</title>
+ <productname>systemd</productname>
+
+ <authorgroup>
+ <author>
+ <contrib>Developer</contrib>
+ <firstname>Lennart</firstname>
+ <surname>Poettering</surname>
+ <email>lennart at poettering.net</email>
+ </author>
+ </authorgroup>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>systemd.special</refentrytitle>
+ <manvolnum>7</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>systemd.special</refname>
+ <refpurpose>special systemd units</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <para><filename>emergency.service</filename></para>
+ <para><filename>local-fs.target</filename></para>
+ <para><filename>network.target</filename></para>
+ <para><filename>nss-lookup.target</filename></para>
+ <para><filename>remote-fs.target</filename></para>
+ <para><filename>rpcbind.target</filename></para>
+ <para><filename>rtc-set.target</filename></para>
+ <para><filename>shutdown.target</filename></para>
+ <para><filename>sigpwr.target</filename></para>
+ <para><filename>sockets.target</filename></para>
+ <para><filename>swap.target</filename></para>
+ <para><filename>syslog.target</filename></para>
+ <para><filename>systemd-initctl.service</filename></para>
+ <para><filename>systemd-initctl.socket</filename></para>
+ <para><filename>systemd-logger.service</filename></para>
+ <para><filename>systemd-logger.socket</filename></para>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>Description</title>
+
+ <para>A few units are treated specially by
+ systemd. They have special internal semantics and
+ cannot be renamed.</para>
+ </refsect1>
+
+ <refsect1>
+ <title>Special System Units</title>
+
+ <variablelist>
+ <varlistentry>
+ <term><filename>emergency.service</filename></term>
+ <listitem>
+ <para>A special service unit
+ that starts an emergency
+ shell on the main
+ console. This unit is supposed
+ to be used with the kernel
+ command line option
+ <varname>systemd.default=</varname>
+ and has otherwise little use.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>local-fs.target</filename></term>
+ <listitem>
+ <para>systemd automatically
+ adds dependencies of type
+ After to all mount units that
+ refer to local mount
+ points. In addition, systemd
+ adds dependencies of type
+ Wants to those mounts listed
+ in
+ <filename>/etc/fstab</filename>
+ that have the
+ <literal>auto</literal> and
+ <literal>comment=systemd.mount</literal>
+ mount options set.</para>
+
+ <para>systemd automatically
+ adds dependencies of type
+ After to this target unit for
+ all SysV init scripts with an
+ LSB header referring to the
+ <literal>$local_fs</literal>
+ facility.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>network.target</filename></term>
+ <listitem>
+ <para>systemd automatically
+ adds dependencies of type
+ After to this target unit for
+ all SysV init scripts with an
+ LSB header referring to the
+ <literal>$network</literal>
+ facility.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>nss-lookup.target</filename></term>
+ <listitem>
+ <para>systemd automatically
+ adds dependencies of type
+ After to this target unit for
+ all SysV init scripts with an
+ LSB header referring to the
+ <literal>$named</literal>
+ facility.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>remote-fs.target</filename></term>
+ <listitem>
+ <para>Similar to <filename>local-fs.target</filename>, but for remote mount points.</para>
+ <para>systemd automatically
+ adds dependencies of type
+ After to this target unit for
+ all SysV init scripts with an
+ LSB header referring to the
+ <literal>$remote-fs</literal>
+ facility.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>rpcbind.target</filename></term>
+ <listitem>
+ <para>systemd automatically
+ adds dependencies of type
+ After to this target unit for
+ all SysV init scripts with an
+ LSB header referring to the
+ <literal>$rpcbind</literal>
+ facility.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>rtc-set.target</filename></term>
+ <listitem>
+ <para>systemd automatically
+ adds dependencies of type
+ After to this target unit for
+ all SysV init scripts with an
+ LSB header referring to the
+ <literal>$time</literal>
+ facility.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>shutdown.target</filename></term>
+ <listitem>
+ <para>A special target unit
+ that terminates the services
+ on system shutdown.</para>
+
+ <para>Services that shall be
+ terminated on system shutdown
+ shall add Wants dependencies
+ from this unit to their
+ service unit during
+ installation.</para>
+
+ <para>systemd automatically
+ adds dependencies of type
+ Conflicts to this target unit
+ for all SysV init scripts that
+ shall be terminated in SysV
+ runlevels 0 or 6.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>sigpwr.target</filename></term>
+ <listitem>
+ <para>A special target that is
+ started when systemd receives
+ the SIGPWR process signal,
+ which is normally sent by the
+ kernel or UPS daemons when the
+ power fails.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>sockets.target</filename></term>
+ <listitem>
+ <para>A special target unit
+ that sets up all service
+ sockets.</para>
+
+ <para>Services that can be
+ socket-activated shall add
+ Wants dependencies from this
+ unit to their socket unit
+ during installation.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>swap.target</filename></term>
+ <listitem>
+ <para>Similar to
+ <filename>local-fs.target</filename>, but for swap
+ partitions and swap
+ files.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>syslog.target</filename></term>
+ <listitem>
+ <para>systemd automatically
+ adds dependencies of type
+ After to this target unit for
+ all SysV init scripts with an
+ LSB header referring to the
+ <literal>$syslog</literal>
+ facility.</para>
+
+ <para>Administrators should
+ ensure that this target pulls
+ in a service unit with the
+ name or alias of
+ <filename>@SPECIAL_SYSLOG_NAME@</filename> (or a
+ socket unit that activates
+ this service).</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>systemd-initctl.service</filename></term>
+ <listitem>
+ <para>This provides
+ compatibility with the SysV
+ /dev/initctl file system FIFO
+ for communication with the
+ init system.</para>
+ <para>This is a
+ socket-activated service, see
+ <filename>system-initctl.socket</filename>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>systemd-initctl.socket</filename></term>
+ <listitem>
+ <para>Socket activation unit
+ for
+ <filename>system-initctl.service</filename>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>systemd-logger.service</filename></term>
+ <listitem>
+ <para>This is used internally
+ by systemd to provide syslog
+ logging to started
+ processes.</para>
+ <para>This is a
+ socket-activated service, see
+ <filename>system-logger.socket</filename>.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><filename>systemd-logger.socket</filename></term>
+ <listitem>
+ <para>Socket activation unit
+ for
+ <filename>system-logger.service</filename>.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect1>
+
+ <refsect1>
+ <title>Special Session Units</title>
+
+ <para>When systemd runs as a service instance, the
+ following special units are available, which have
+ similar definitions as their system counterparts:
+ <filename>local-fs.target</filename>,
+ <filename>remote-fs.target</filename>,
+ <filename>shutdown.target</filename>,
+ <filename>sockets.target</filename>,
+ <filename>swap.target</filename>.</para>
+ </refsect1>
+
+ <refsect1>
+ <title>See Also</title>
+ <para>
+ <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ <citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+ </para>
+ </refsect1>
+
+</refentry>
diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml
index cfa1b09..4f71ffd 100644
--- a/man/systemd.unit.xml
+++ b/man/systemd.unit.xml
@@ -77,7 +77,7 @@
<variablelist>
<varlistentry>
- <term>Names=</term>
+ <term><varname>Names=</varname></term>
<listitem>
<para>Additional names for this unit. The names
listed here mus have the same suffix (i.e. type)
@@ -86,7 +86,7 @@
</listitem>
</varlistentry>
<varlistentry>
- <term>Requires=</term>
+ <term><varname>Requires=</varname></term>
<listitem>
<para>Dependencies on other
units. If this units get
diff --git a/src/manager.h b/src/manager.h
index 424ce87..7892300 100644
--- a/src/manager.h
+++ b/src/manager.h
@@ -97,10 +97,10 @@ struct Watch {
#define SPECIAL_SIGPWR_TARGET "sigpwr.target"
#define SPECIAL_CTRL_ALT_DEL_TARGET "ctrl-alt-del.target"
-#define SPECIAL_LOCAL_FS_TARGET "local-fs.target"
-#define SPECIAL_REMOTE_FS_TARGET "remote-fs.target"
+#define SPECIAL_LOCAL_FS_TARGET "local-fs.target" /* LSB's $local_fs */
+#define SPECIAL_REMOTE_FS_TARGET "remote-fs.target" /* LSB's $remote_fs */
#define SPECIAL_SWAP_TARGET "swap.target"
-#define SPECIAL_NETWORK_TARGET "network.target"
+#define SPECIAL_NETWORK_TARGET "network.target" /* LSB's $network */
#define SPECIAL_NSS_LOOKUP_TARGET "nss-lookup.target" /* LSB's $named */
#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 */
diff --git a/units/emergency.service b/units/emergency.service
index 13fca6f..6c4b870 100644
--- a/units/emergency.service
+++ b/units/emergency.service
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Emergency Shell
diff --git a/units/local-fs.target b/units/local-fs.target
index 3e7124a..81bff5a 100644
--- a/units/local-fs.target
+++ b/units/local-fs.target
@@ -15,5 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Local File Systems
diff --git a/units/network.target b/units/network.target
index cdb1b5e..a218c64 100644
--- a/units/network.target
+++ b/units/network.target
@@ -15,5 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Network
diff --git a/units/nss-lookup.target b/units/nss-lookup.target
index d1ce0a7..e8e6593 100644
--- a/units/nss-lookup.target
+++ b/units/nss-lookup.target
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Name Lookups
Wants=network.target
diff --git a/units/remote-fs.target b/units/remote-fs.target
index 0ed324e..177a773 100644
--- a/units/remote-fs.target
+++ b/units/remote-fs.target
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Remote File Systems
Requires=network.target
diff --git a/units/rtc-set.target b/units/rtc-set.target
index 626fa5a..18c1ed3 100644
--- a/units/rtc-set.target
+++ b/units/rtc-set.target
@@ -15,5 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=RTC Set
diff --git a/units/shutdown.target b/units/shutdown.target
index 87b1be8..37dca44 100644
--- a/units/shutdown.target
+++ b/units/shutdown.target
@@ -15,5 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Shutdown
diff --git a/units/sigpwr.target b/units/sigpwr.target
index 36d4d24..24f7d38 100644
--- a/units/sigpwr.target
+++ b/units/sigpwr.target
@@ -15,5 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Power Failure
diff --git a/units/sockets.target b/units/sockets.target
index 1061030..00e698f 100644
--- a/units/sockets.target
+++ b/units/sockets.target
@@ -15,5 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Sockets
diff --git a/units/swap.target b/units/swap.target
index aac5456..4f6e193 100644
--- a/units/swap.target
+++ b/units/swap.target
@@ -15,5 +15,7 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Swap
diff --git a/units/syslog.target.in b/units/syslog.target.in
index bcd6453..d21e7a7 100644
--- a/units/syslog.target.in
+++ b/units/syslog.target.in
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=Syslog
Requires=@SPECIAL_SYSLOG_SERVICE@
diff --git a/units/systemd-initctl.service.in b/units/systemd-initctl.service.in
index b6d5158..252a014 100644
--- a/units/systemd-initctl.service.in
+++ b/units/systemd-initctl.service.in
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=systemd /dev/initctl Compatibility Daemon
diff --git a/units/systemd-initctl.socket b/units/systemd-initctl.socket
index ff3dbac..acff322 100644
--- a/units/systemd-initctl.socket
+++ b/units/systemd-initctl.socket
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=systemd /dev/initctl Compatibility Socket
diff --git a/units/systemd-logger.service.in b/units/systemd-logger.service.in
index ba6fa47..e4606ea 100644
--- a/units/systemd-logger.service.in
+++ b/units/systemd-logger.service.in
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=systemd Logging Daemon
diff --git a/units/systemd-logger.socket b/units/systemd-logger.socket
index a1d11e8..8d02ab4 100644
--- a/units/systemd-logger.socket
+++ b/units/systemd-logger.socket
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+# See systemd.special(7) for details
+
[Unit]
Description=systemd Logging Socket
commit 08a96fb00afefbcec822684c25ae1dbe39179264
Author: Lennart Poettering <lennart at poettering.net>
Date: Sun May 16 21:29:41 2010 +0200
units: add missing syslog.target.in file to git tree
diff --git a/units/syslog.target.in b/units/syslog.target.in
new file mode 100644
index 0000000..bcd6453
--- /dev/null
+++ b/units/syslog.target.in
@@ -0,0 +1,21 @@
+# This file is part of systemd.
+#
+# Copyright 2010 Lennart Poettering
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# systemd is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with systemd; If not, see <http://www.gnu.org/licenses/>.
+
+[Unit]
+Description=Syslog
+Requires=@SPECIAL_SYSLOG_SERVICE@
+After=@SPECIAL_SYSLOG_SERVICE@
commit 34eff652cedec3cac34b92629ead5f140334b689
Author: Lennart Poettering <lennart at poettering.net>
Date: Sun May 16 21:28:41 2010 +0200
build-sys: provide distro-agnostic defaults for distro-specific settings
diff --git a/configure.ac b/configure.ac
index 850987d..a94c2fc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -160,39 +160,49 @@ if test "z$with_distro" = "z"; then
fi
with_distro=`echo ${with_distro} | tr '[[:upper:]]' '[[:lower:]]' `
+# Default generic names
+SPECIAL_DBUS_SERVICE=dbus.service
+SPECIAL_SYSLOG_SERVICE=syslog.service
+
+# Location of the init scripts as mandated by LSB
+SYSTEM_SYSVINIT_PATH=/etc/init.d
+
case $with_distro in
fedora)
SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
SYSTEM_SYSVRCND_PATH=/etc/rc.d
+
+ # A little background why we define these special unit
+ # names here in configure.ac: SysV services currently
+ # cannot have aliases. As long as syslog is started
+ # via a SysV init script we hence define these names
+ # to the actual SysV name here. Later on when SysV
+ # init scripts are not used anymore it is advisable to
+ # use the generic names instead and use symlinks in
+ # the unit directories to point to the right native
+ # unit file.
+
SPECIAL_DBUS_SERVICE=messagebus.service
SPECIAL_SYSLOG_SERVICE=rsyslog.service
AC_DEFINE(TARGET_FEDORA, [], [Target is Fedora/RHEL])
;;
suse)
- SYSTEM_SYSVINIT_PATH=/etc/init.d
SYSTEM_SYSVRCND_PATH=/etc/init.d
- SPECIAL_DBUS_SERVICE=dbus.service
- SPECIAL_SYSLOG_SERVICE=syslog.service
AC_DEFINE(TARGET_SUSE, [], [Target is OpenSUSE/SLES])
;;
debian)
- SYSTEM_SYSVINIT_PATH=/etc/init.d
SYSTEM_SYSVRCND_PATH=/etc
- SPECIAL_DBUS_SERVICE=dbus.service
SPECIAL_SYSLOG_SERVICE=rsyslog.service
AC_DEFINE(TARGET_DEBIAN, [], [Target is Debian/Ubuntu])
;;
arch)
SYSTEM_SYSVINIT_PATH=/etc/rc.d
SYSTEM_SYSVRCND_PATH=/etc
- SPECIAL_DBUS_SERVICE=dbus.service
SPECIAL_SYSLOG_SERVICE=syslog-ng.service
AC_DEFINE(TARGET_ARCH, [], [Target is ArchLinux])
;;
gentoo)
- SYSTEM_SYSVINIT_PATH=/etc/init.d
SYSTEM_SYSVRCND_PATH=/etc
- SPECIAL_DBUS_SERVICE=dbus.service
SPECIAL_SYSLOG_SERVICE=syslog-ng.service
AC_DEFINE(TARGET_GENTOO, [], [Target is Gentoo])
;;
@@ -200,18 +210,17 @@ case $with_distro in
SYSTEM_SYSVINIT_PATH=/etc/rc.d/init.d
SYSTEM_SYSVRCND_PATH=/etc/rc.d
SPECIAL_DBUS_SERVICE=messagebus.service
- SPECIAL_SYSLOG_SERVICE=syslog.service
AC_DEFINE(TARGET_SLACKWARE, [], [Target is Slackware])
;;
other)
AS_IF([test "x$with_sysvinit_path" = "x"],
- [AC_MSG_ERROR([With --distro=none, you must pass --with-sysvinit-path to configure])])
+ [AC_MSG_ERROR([With --distro=none, you must pass --with-sysvinit-path= to configure])])
AS_IF([test "x$with_sysvrcd_path" = "x"],
- [AC_MSG_ERROR([With --distro=none, you must pass --with-sysvrcd-path to configure])])
+ [AC_MSG_ERROR([With --distro=none, you must pass --with-sysvrcd-path= to configure])])
AS_IF([test "x$with_dbus_service" = "x"],
- [AC_MSG_ERROR([With --distro=none, you must pass --with-dbus-service to configure])])
+ [AC_MSG_ERROR([With --distro=none, you must pass --with-dbus-service= to configure])])
AS_IF([test "x$with_syslog_service" = "x"],
- [AC_MSG_ERROR([With --distro=none, you must pass --with-syslog-service to configure])])
+ [AC_MSG_ERROR([With --distro=none, you must pass --with-syslog-service= to configure])])
;;
*)
AC_MSG_ERROR([Your distribution (${with_distro}) is not yet supported, SysV init scripts could not be found! (patches welcome); you can specify --with-distro=other to skip this check])
More information about the systemd-commits
mailing list