[systemd-commits] 10 commits - Makefile-man.am man/binfmt.d.xml man/bootchart.conf.xml man/coredump.conf.xml man/journald.conf.xml man/logind.conf.xml man/modules-load.d.xml man/resolved.conf.xml man/standard-conf.xml man/sysctl.d.xml man/systemd-sleep.conf.xml man/systemd-suspend.service.xml man/systemd-system.conf.xml man/systemd.xml man/sysusers.d.xml man/timesyncd.conf.xml src/bootchart src/core src/journal src/journal-remote src/resolve src/shared src/timesync

Zbigniew Jędrzejewski-Szmek zbyszek at kemper.freedesktop.org
Sat Nov 29 11:01:15 PST 2014


 Makefile-man.am                     |   52 +++++++++++++++++++++++++++++++-----
 man/binfmt.d.xml                    |   30 ++------------------
 man/bootchart.conf.xml              |   21 ++++++++++----
 man/coredump.conf.xml               |   14 +++++++--
 man/journald.conf.xml               |   14 +++++++--
 man/logind.conf.xml                 |   28 ++++---------------
 man/modules-load.d.xml              |   26 ++----------------
 man/resolved.conf.xml               |   16 +++++++----
 man/standard-conf.xml               |   45 +++++++++++++++++++++++++++++++
 man/sysctl.d.xml                    |   33 ++--------------------
 man/systemd-sleep.conf.xml          |   15 ++++++++--
 man/systemd-suspend.service.xml     |    3 +-
 man/systemd-system.conf.xml         |   25 +++++++++++++----
 man/systemd.xml                     |   10 ++++--
 man/sysusers.d.xml                  |   27 ++++--------------
 man/timesyncd.conf.xml              |   17 +++++++----
 src/bootchart/bootchart.c           |    7 ++--
 src/bootchart/bootchart.conf        |    3 ++
 src/core/main.c                     |    9 ++----
 src/core/system.conf                |    3 ++
 src/core/user.conf                  |    3 ++
 src/journal-remote/journal-remote.c |    8 ++---
 src/journal-remote/journal-upload.c |    8 ++---
 src/journal/coredump.c              |    9 +++---
 src/journal/coredump.conf           |    3 ++
 src/journal/journald-server.c       |    9 +++---
 src/journal/journald.conf           |    3 ++
 src/resolve/resolved-conf.c         |    9 +++---
 src/resolve/resolved.conf.in        |    3 ++
 src/shared/sleep-config.c           |    7 ++--
 src/timesync/timesyncd-conf.c       |    9 +++---
 src/timesync/timesyncd.conf.in      |    3 ++
 32 files changed, 274 insertions(+), 198 deletions(-)

New commits:
commit bf257aed057efd113f1b84e037fde09ffeed32ee
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:07:28 2014 -0800

    journald-remote,journal-upload: Support .d directories in the usual search paths

diff --git a/src/journal-remote/journal-remote.c b/src/journal-remote/journal-remote.c
index a5d40cb..6ec5ad2 100644
--- a/src/journal-remote/journal-remote.c
+++ b/src/journal-remote/journal-remote.c
@@ -1131,10 +1131,10 @@ static int parse_config(void) {
                 { "Remote",  "TrustedCertificateFile", config_parse_path,             0, &arg_trust      },
                 {}};
 
-        return config_parse(NULL, PKGSYSCONFDIR "/journal-remote.conf", NULL,
-                            "Remote\0",
-                            config_item_table_lookup, items,
-                            false, false, true, NULL);
+        return config_parse_many(PKGSYSCONFDIR "/journal-remote.conf",
+                                 CONF_DIRS_NULSTR("systemd/journal-remote.conf"),
+                                 "Remote\0", config_item_table_lookup, items,
+                                 false, NULL);
 }
 
 static void help(void) {
diff --git a/src/journal-remote/journal-upload.c b/src/journal-remote/journal-upload.c
index 8be0f93..62853b6 100644
--- a/src/journal-remote/journal-upload.c
+++ b/src/journal-remote/journal-upload.c
@@ -532,10 +532,10 @@ static int parse_config(void) {
                 { "Upload",  "TrustedCertificateFile", config_parse_path,   0, &arg_trust  },
                 {}};
 
-        return config_parse(NULL, PKGSYSCONFDIR "/journal-upload.conf", NULL,
-                            "Upload\0",
-                            config_item_table_lookup, items,
-                            false, false, true, NULL);
+        return config_parse_many(PKGSYSCONFDIR "/journal-upload.conf",
+                                 CONF_DIRS_NULSTR("systemd/journal-upload.conf"),
+                                 "Upload\0", config_item_table_lookup, items,
+                                 false, NULL);
 }
 
 static void help(void) {

commit be795898c0d2fa21e3389b89793dcd45c47f8b9f
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:07:21 2014 -0800

    timesyncd: Support timesyncd.conf.d directories in the usual search paths

diff --git a/Makefile-man.am b/Makefile-man.am
index 36e0ebb..e3c43b2 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -1244,11 +1244,16 @@ MANPAGES += \
 	man/systemd-timesyncd.service.8 \
 	man/timesyncd.conf.5
 MANPAGES_ALIAS += \
-	man/systemd-timesyncd.8
+	man/systemd-timesyncd.8 \
+	man/timesyncd.conf.d.5
 man/systemd-timesyncd.8: man/systemd-timesyncd.service.8
+man/timesyncd.conf.d.5: man/timesyncd.conf.5
 man/systemd-timesyncd.html: man/systemd-timesyncd.service.html
 	$(html-alias)
 
+man/timesyncd.conf.d.html: man/timesyncd.conf.html
+	$(html-alias)
+
 endif
 
 if ENABLE_VCONSOLE
diff --git a/man/timesyncd.conf.xml b/man/timesyncd.conf.xml
index aeb7182..1a56c2c 100644
--- a/man/timesyncd.conf.xml
+++ b/man/timesyncd.conf.xml
@@ -22,7 +22,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="timesyncd.conf" conditional='ENABLE_TIMESYNCD'>
+<refentry id="timesyncd.conf" conditional='ENABLE_TIMESYNCD'
+          xmlns:xi="http://www.w3.org/2001/XInclude">
         <refentryinfo>
                 <title>timesyncd.conf</title>
                 <productname>systemd</productname>
@@ -44,24 +45,28 @@
 
         <refnamediv>
                 <refname>timesyncd.conf</refname>
-                <refpurpose>Network Time Synchronization configuration file</refpurpose>
+                <refname>timesyncd.conf.d</refname>
+                <refpurpose>Network Time Synchronization configuration files</refpurpose>
         </refnamediv>
 
         <refsynopsisdiv>
                 <para><filename>/etc/systemd/timesyncd.conf</filename></para>
+                <para><filename>/etc/systemd/timesyncd.conf.d/*.conf</filename></para>
+                <para><filename>/run/systemd/timesyncd.conf.d/*.conf</filename></para>
+                <para><filename>/usr/lib/systemd/timesyncd.conf.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
-                <para>When starting, systemd-timesyncd will read the
-                configuration file
-                <filename>timesyncd.conf</filename>.  This
-                configuration file controls NTP network time
+                <para>These configuration files control NTP network time
                 synchronization.</para>
 
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+        <xi:include href="standard-conf.xml" xpointer="conf" />
+
         <refsect1>
                 <title>Options</title>
 
diff --git a/src/timesync/timesyncd-conf.c b/src/timesync/timesyncd-conf.c
index 4c2dcdb..be1f4bb 100644
--- a/src/timesync/timesyncd-conf.c
+++ b/src/timesync/timesyncd-conf.c
@@ -97,8 +97,9 @@ int config_parse_servers(
 int manager_parse_config_file(Manager *m) {
         assert(m);
 
-        return config_parse(NULL, "/etc/systemd/timesyncd.conf", NULL,
-                            "Time\0",
-                            config_item_perf_lookup, timesyncd_gperf_lookup,
-                            false, false, true, m);
+        return config_parse_many("/etc/systemd/timesyncd.conf",
+                                 CONF_DIRS_NULSTR("systemd/timesyncd.conf"),
+                                 "Time\0",
+                                 config_item_perf_lookup, timesyncd_gperf_lookup,
+                                 false, m);
 }
diff --git a/src/timesync/timesyncd.conf.in b/src/timesync/timesyncd.conf.in
index 674a51d..fc3c6c4 100644
--- a/src/timesync/timesyncd.conf.in
+++ b/src/timesync/timesyncd.conf.in
@@ -5,6 +5,9 @@
 #  the Free Software Foundation; either version 2.1 of the License, or
 #  (at your option) any later version.
 #
+# You can override the directives in this file by creating files in
+# /etc/systemd/timesyncd.conf.d/*.conf.
+#
 # See timesyncd.conf(5) for details
 
 [Time]

commit f2dacc96b25528ca1b0caca6364a69d656cf1569
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:07:11 2014 -0800

    resolved: Support resolved.conf.d directories in the usual search paths

diff --git a/Makefile-man.am b/Makefile-man.am
index 01d3408..36e0ebb 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -1204,8 +1204,13 @@ MANPAGES += \
 	man/resolved.conf.5 \
 	man/systemd-resolved.service.8
 MANPAGES_ALIAS += \
+	man/resolved.conf.d.5 \
 	man/systemd-resolved.8
+man/resolved.conf.d.5: man/resolved.conf.5
 man/systemd-resolved.8: man/systemd-resolved.service.8
+man/resolved.conf.d.html: man/resolved.conf.html
+	$(html-alias)
+
 man/systemd-resolved.html: man/systemd-resolved.service.html
 	$(html-alias)
 
diff --git a/man/resolved.conf.xml b/man/resolved.conf.xml
index c582368..36013a5 100644
--- a/man/resolved.conf.xml
+++ b/man/resolved.conf.xml
@@ -22,7 +22,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="resolved.conf" conditional='ENABLE_RESOLVED'>
+<refentry id="resolved.conf" conditional='ENABLE_RESOLVED'
+          xmlns:xi="http://www.w3.org/2001/XInclude">
         <refentryinfo>
                 <title>resolved.conf</title>
                 <productname>systemd</productname>
@@ -44,23 +45,28 @@
 
         <refnamediv>
                 <refname>resolved.conf</refname>
-                <refpurpose>Network Name Resolution configuration file</refpurpose>
+                <refname>resolved.conf.d</refname>
+                <refpurpose>Network Name Resolution configuration files</refpurpose>
         </refnamediv>
 
         <refsynopsisdiv>
                 <para><filename>/etc/systemd/resolved.conf</filename></para>
+                <para><filename>/etc/systemd/resolved.conf.d/*.conf</filename></para>
+                <para><filename>/run/systemd/resolved.conf.d/*.conf</filename></para>
+                <para><filename>/usr/lib/systemd/resolved.conf.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
-                <para>When starting, systemd-resolved will read the
-                configuration file <filename>resolved.conf</filename>.
-                This configuration file controls local DNS and LLMNR
+                <para>These configuration files control local DNS and LLMNR
                 name resolving.</para>
 
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+        <xi:include href="standard-conf.xml" xpointer="conf" />
+
         <refsect1>
                 <title>Options</title>
 
diff --git a/src/resolve/resolved-conf.c b/src/resolve/resolved-conf.c
index 63e87f8..81b9d34 100644
--- a/src/resolve/resolved-conf.c
+++ b/src/resolve/resolved-conf.c
@@ -147,8 +147,9 @@ int config_parse_support(
 int manager_parse_config_file(Manager *m) {
         assert(m);
 
-        return config_parse(NULL, "/etc/systemd/resolved.conf", NULL,
-                            "Resolve\0",
-                            config_item_perf_lookup, resolved_gperf_lookup,
-                            false, false, true, m);
+        return config_parse_many("/etc/systemd/resolved.conf",
+                                 CONF_DIRS_NULSTR("systemd/resolved.conf"),
+                                 "Resolve\0",
+                                 config_item_perf_lookup, resolved_gperf_lookup,
+                                 false, m);
 }
diff --git a/src/resolve/resolved.conf.in b/src/resolve/resolved.conf.in
index c8263d6..e5a19ee 100644
--- a/src/resolve/resolved.conf.in
+++ b/src/resolve/resolved.conf.in
@@ -5,6 +5,9 @@
 #  the Free Software Foundation; either version 2.1 of the License, or
 #  (at your option) any later version.
 #
+# You can override the directives in this file by creating files in
+# /etc/systemd/resolved.conf.d/*.conf.
+#
 # See resolved.conf(5) for details
 
 [Resolve]

commit 301af7e4853ad0281402f8d86f5a77c6cb7ce9f4
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:06:48 2014 -0800

    coredump: Support coredump.conf.d directories in the usual search paths

diff --git a/Makefile-man.am b/Makefile-man.am
index 593dc40..01d3408 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -714,8 +714,10 @@ MANPAGES += \
 	man/coredumpctl.1 \
 	man/systemd-coredump.8
 MANPAGES_ALIAS += \
-	#
-
+	man/coredump.conf.d.5
+man/coredump.conf.d.5: man/coredump.conf.5
+man/coredump.conf.d.html: man/coredump.conf.html
+	$(html-alias)
 
 endif
 
diff --git a/man/coredump.conf.xml b/man/coredump.conf.xml
index 5eb5c5f..37916f0 100644
--- a/man/coredump.conf.xml
+++ b/man/coredump.conf.xml
@@ -22,7 +22,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="coredump.conf" conditional="ENABLE_COREDUMP">
+<refentry id="coredump.conf" conditional="ENABLE_COREDUMP"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
   <refentryinfo>
     <title>coredump.conf</title>
     <productname>systemd</productname>
@@ -44,20 +45,27 @@
 
   <refnamediv>
     <refname>coredump.conf</refname>
-    <refpurpose>Coredump storage configuration file</refpurpose>
+    <refname>coredump.conf.d</refname>
+    <refpurpose>Coredump storage configuration files</refpurpose>
   </refnamediv>
 
   <refsynopsisdiv>
     <para><filename>/etc/systemd/coredump.conf</filename></para>
+    <para><filename>/etc/systemd/coredump.conf.d/*.conf</filename></para>
+    <para><filename>/run/systemd/coredump.conf.d/*.conf</filename></para>
+    <para><filename>/usr/lib/systemd/coredump.conf.d/*.conf</filename></para>
   </refsynopsisdiv>
 
   <refsect1>
     <title>Description</title>
 
-    <para>This file configures the behaviour of <command>systemd-coredump</command>,
+    <para>These files configure the behaviour of <command>systemd-coredump</command>,
     a handler for core dumps invoked by the kernel.</para>
   </refsect1>
 
+  <xi:include href="standard-conf.xml" xpointer="confd" />
+  <xi:include href="standard-conf.xml" xpointer="conf" />
+
   <refsect1>
     <title>Options</title>
 
diff --git a/src/journal/coredump.c b/src/journal/coredump.c
index d889ed1..be45a68 100644
--- a/src/journal/coredump.c
+++ b/src/journal/coredump.c
@@ -120,10 +120,11 @@ static int parse_config(void) {
                 {}
         };
 
-        return config_parse(NULL, "/etc/systemd/coredump.conf", NULL,
-                            "Coredump\0",
-                            config_item_table_lookup, items,
-                            false, false, true, NULL);
+        return config_parse_many("/etc/systemd/coredump.conf",
+                                 CONF_DIRS_NULSTR("systemd/coredump.conf"),
+                                 "Coredump\0",
+                                 config_item_table_lookup, items,
+                                 false, NULL);
 }
 
 static int fix_acl(int fd, uid_t uid) {
diff --git a/src/journal/coredump.conf b/src/journal/coredump.conf
index 0cc328f..0fe9fe8 100644
--- a/src/journal/coredump.conf
+++ b/src/journal/coredump.conf
@@ -5,6 +5,9 @@
 #  the Free Software Foundation; either version 2.1 of the License, or
 #  (at your option) any later version.
 #
+# You can override the directives in this file by creating files in
+# /etc/systemd/coredump.conf.d/*.conf.
+#
 # See coredump.conf(5) for details
 
 [Coredump]

commit 396f9e2b327d702ea9502b80febf836283e19350
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:06:41 2014 -0800

    bootchart: Support bootchart.conf.d directories in the usual search paths

diff --git a/Makefile-man.am b/Makefile-man.am
index 2a0d73e..593dc40 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -701,8 +701,10 @@ MANPAGES += \
 	man/bootchart.conf.5 \
 	man/systemd-bootchart.1
 MANPAGES_ALIAS += \
-	#
-
+	man/bootchart.conf.d.5
+man/bootchart.conf.d.5: man/bootchart.conf.5
+man/bootchart.conf.d.html: man/bootchart.conf.html
+	$(html-alias)
 
 endif
 
diff --git a/man/bootchart.conf.xml b/man/bootchart.conf.xml
index 68834c7..a364826 100644
--- a/man/bootchart.conf.xml
+++ b/man/bootchart.conf.xml
@@ -25,7 +25,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="bootchart.conf" conditional='ENABLE_BOOTCHART'>
+<refentry id="bootchart.conf" conditional='ENABLE_BOOTCHART'
+          xmlns:xi="http://www.w3.org/2001/XInclude">
         <refentryinfo>
                 <title>bootchart.conf</title>
                 <productname>systemd</productname>
@@ -47,23 +48,31 @@
 
         <refnamediv>
                 <refname>bootchart.conf</refname>
-                <refpurpose>Boot performance analysis graphing tool configuration file</refpurpose>
+                <refname>bootchart.conf.d</refname>
+                <refpurpose>Boot performance analysis graphing tool configuration files</refpurpose>
         </refnamediv>
 
         <refsynopsisdiv>
                 <para><filename>/etc/systemd/bootchart.conf</filename></para>
+                <para><filename>/etc/systemd/bootchart.conf.d/*.conf</filename></para>
+                <para><filename>/run/systemd/bootchart.conf.d/*.conf</filename></para>
+                <para><filename>/usr/lib/systemd/bootchart.conf.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
                 <para>When starting, systemd-bootchart will read the
-                configuration file <filename>bootchart.conf</filename>.
-                This configuration file determines logging parameters and
-                graph output.</para>
-
+                configuration file
+                <filename>/etc/systemd/bootchart.conf</filename>, followed by
+                the files in the <filename>bootchart.conf.d</filename>
+                directories.  These configuration files determine logging
+                parameters and graph output.</para>
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+        <xi:include href="standard-conf.xml" xpointer="conf" />
+
         <refsect1>
                 <title>Options</title>
 
diff --git a/src/bootchart/bootchart.c b/src/bootchart/bootchart.c
index 5bb4247..0808ba4 100644
--- a/src/bootchart/bootchart.c
+++ b/src/bootchart/bootchart.c
@@ -125,10 +125,9 @@ static void parse_conf(void) {
                 { NULL, NULL, NULL, 0, NULL }
         };
 
-        config_parse(NULL, BOOTCHART_CONF, NULL,
-                     NULL,
-                     config_item_table_lookup, items,
-                     true, false, true, NULL);
+        config_parse_many(BOOTCHART_CONF,
+                          CONF_DIRS_NULSTR("systemd/bootchart.conf"),
+                          NULL, config_item_table_lookup, items, true, NULL);
 
         if (init != NULL)
                 strscpy(arg_init_path, sizeof(arg_init_path), init);
diff --git a/src/bootchart/bootchart.conf b/src/bootchart/bootchart.conf
index d7e0dab..c73328f 100644
--- a/src/bootchart/bootchart.conf
+++ b/src/bootchart/bootchart.conf
@@ -5,6 +5,9 @@
 #  the Free Software Foundation; either version 2.1 of the License, or
 #  (at your option) any later version.
 #
+# You can override the directives in this file by creating files in
+# /etc/systemd/bootchart.conf.d/*.conf.
+#
 # See bootchart.conf(5) for details
 
 [Bootchart]

commit 778b6a3f8888ec9496143c92c8cbf95f5c891df9
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:06:28 2014 -0800

    systemd-sleep: Support sleep.conf.d directories in the usual search paths

diff --git a/Makefile-man.am b/Makefile-man.am
index e0c15fa..2a0d73e 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -196,6 +196,7 @@ MANPAGES_ALIAS += \
 	man/sd_journal_wait.3 \
 	man/sd_machine_get_ifindices.3 \
 	man/sd_notifyf.3 \
+	man/sleep.conf.d.5 \
 	man/system.conf.d.5 \
 	man/systemd-ask-password-console.path.8 \
 	man/systemd-ask-password-wall.path.8 \
@@ -305,6 +306,7 @@ man/sd_journal_test_cursor.3: man/sd_journal_get_cursor.3
 man/sd_journal_wait.3: man/sd_journal_get_fd.3
 man/sd_machine_get_ifindices.3: man/sd_machine_get_class.3
 man/sd_notifyf.3: man/sd_notify.3
+man/sleep.conf.d.5: man/systemd-sleep.conf.5
 man/system.conf.d.5: man/systemd-system.conf.5
 man/systemd-ask-password-console.path.8: man/systemd-ask-password-console.service.8
 man/systemd-ask-password-wall.path.8: man/systemd-ask-password-console.service.8
@@ -562,6 +564,9 @@ man/sd_machine_get_ifindices.html: man/sd_machine_get_class.html
 man/sd_notifyf.html: man/sd_notify.html
 	$(html-alias)
 
+man/sleep.conf.d.html: man/systemd-sleep.conf.html
+	$(html-alias)
+
 man/system.conf.d.html: man/systemd-system.conf.html
 	$(html-alias)
 
diff --git a/man/systemd-sleep.conf.xml b/man/systemd-sleep.conf.xml
index d724960..99e0e33 100644
--- a/man/systemd-sleep.conf.xml
+++ b/man/systemd-sleep.conf.xml
@@ -22,7 +22,8 @@ You should have received a copy of the GNU Lesser General Public License
 along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="systemd-sleep.conf">
+<refentry id="systemd-sleep.conf"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
   <refentryinfo>
     <title>systemd-sleep.conf</title>
     <productname>systemd</productname>
@@ -44,11 +45,15 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
 
   <refnamediv>
     <refname>systemd-sleep.conf</refname>
+    <refname>sleep.conf.d</refname>
     <refpurpose>Suspend and hibernation configuration file</refpurpose>
   </refnamediv>
 
   <refsynopsisdiv>
     <para><filename>/etc/systemd/sleep.conf</filename></para>
+    <para><filename>/etc/systemd/sleep.conf.d/*.conf</filename></para>
+    <para><filename>/run/systemd/sleep.conf.d/*.conf</filename></para>
+    <para><filename>/usr/lib/systemd/sleep.conf.d/*.conf</filename></para>
   </refsynopsisdiv>
 
   <refsect1>
@@ -98,7 +103,7 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
       </varlistentry>
     </variablelist>
 
-    <para>Settings in this file determine what strings
+    <para>Settings in these files determine what strings
     will be written to
     <filename>/sys/power/disk</filename> and
     <filename>/sys/power/state</filename> by
@@ -108,12 +113,16 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>.
     attempts to suspend or hibernate the machine.</para>
   </refsect1>
 
+  <xi:include href="standard-conf.xml" xpointer="confd" />
+  <xi:include href="standard-conf.xml" xpointer="conf" />
+
   <refsect1>
     <title>Options</title>
 
     <para>The following options can be configured in the
     <literal>[Sleep]</literal> section of
-    <filename>/etc/systemd/sleep.conf</filename>:</para>
+    <filename>/etc/systemd/sleep.conf</filename> or a
+    <filename>sleep.conf.d</filename> file:</para>
 
     <variablelist class='systemd-directives'>
       <varlistentry>
diff --git a/man/systemd-suspend.service.xml b/man/systemd-suspend.service.xml
index 9a3ae1b..375c255 100644
--- a/man/systemd-suspend.service.xml
+++ b/man/systemd-suspend.service.xml
@@ -114,7 +114,8 @@
                 <filename>/sys/power/state</filename>, to trigger the
                 actual system suspend. What exactly is written
                 where can be configured in the <literal>[Sleep]</literal>
-                section of <filename>/etc/systemd/sleep.conf</filename>.
+                section of <filename>/etc/systemd/sleep.conf</filename> or a
+                <filename>sleep.conf.d</filename> file.
                 See <citerefentry><refentrytitle>systemd-sleep.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
                 </para>
         </refsect1>
diff --git a/src/shared/sleep-config.c b/src/shared/sleep-config.c
index 0fd307d..ae14c6b 100644
--- a/src/shared/sleep-config.c
+++ b/src/shared/sleep-config.c
@@ -48,9 +48,10 @@ int parse_sleep_config(const char *verb, char ***_modes, char ***_states) {
                 {}
         };
 
-        config_parse(NULL, PKGSYSCONFDIR "/sleep.conf", NULL,
-                     "Sleep\0",
-                     config_item_table_lookup, items, false, false, true, NULL);
+        config_parse_many(PKGSYSCONFDIR "/sleep.conf",
+                          CONF_DIRS_NULSTR("systemd/sleep.conf"),
+                          "Sleep\0", config_item_table_lookup, items,
+                          false, NULL);
 
         if (streq(verb, "suspend")) {
                 /* empty by default */

commit a9edaeff8481573764288ccf7e433a95b6dc7c03
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:06:20 2014 -0800

    journald: Support journald.conf.d directories in the usual search paths

diff --git a/Makefile-man.am b/Makefile-man.am
index f025be0..e0c15fa 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -148,6 +148,7 @@ MANPAGES_ALIAS += \
 	man/SD_NOTICE.3 \
 	man/SD_WARNING.3 \
 	man/init.1 \
+	man/journald.conf.d.5 \
 	man/poweroff.8 \
 	man/reboot.8 \
 	man/sd_id128_equal.3 \
@@ -256,6 +257,7 @@ man/SD_LISTEN_FDS_START.3: man/sd_listen_fds.3
 man/SD_NOTICE.3: man/sd-daemon.3
 man/SD_WARNING.3: man/sd-daemon.3
 man/init.1: man/systemd.1
+man/journald.conf.d.5: man/journald.conf.5
 man/poweroff.8: man/halt.8
 man/reboot.8: man/halt.8
 man/sd_id128_equal.3: man/sd-id128.3
@@ -416,6 +418,9 @@ man/SD_WARNING.html: man/sd-daemon.html
 man/init.html: man/systemd.html
 	$(html-alias)
 
+man/journald.conf.d.html: man/journald.conf.html
+	$(html-alias)
+
 man/poweroff.html: man/halt.html
 	$(html-alias)
 
diff --git a/man/journald.conf.xml b/man/journald.conf.xml
index 5538b96..bf0b944 100644
--- a/man/journald.conf.xml
+++ b/man/journald.conf.xml
@@ -22,7 +22,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="journald.conf">
+<refentry id="journald.conf"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
         <refentryinfo>
                 <title>journald.conf</title>
                 <productname>systemd</productname>
@@ -44,22 +45,29 @@
 
         <refnamediv>
                 <refname>journald.conf</refname>
-                <refpurpose>Journal service configuration file</refpurpose>
+                <refname>journald.conf.d</refname>
+                <refpurpose>Journal service configuration files</refpurpose>
         </refnamediv>
 
         <refsynopsisdiv>
                 <para><filename>/etc/systemd/journald.conf</filename></para>
+                <para><filename>/etc/systemd/journald.conf.d/*.conf</filename></para>
+                <para><filename>/run/systemd/journald.conf.d/*.conf</filename></para>
+                <para><filename>/usr/lib/systemd/journald.conf.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
-                <para>This file configures various parameters of the
+                <para>These files configure various parameters of the
                 systemd journal service,
                 <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
 
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+        <xi:include href="standard-conf.xml" xpointer="conf" />
+
         <refsect1>
                 <title>Options</title>
 
diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c
index 9ec425d..3bee18b 100644
--- a/src/journal/journald-server.c
+++ b/src/journal/journald-server.c
@@ -1351,10 +1351,11 @@ static int server_parse_proc_cmdline(Server *s) {
 static int server_parse_config_file(Server *s) {
         assert(s);
 
-        return config_parse(NULL, "/etc/systemd/journald.conf", NULL,
-                            "Journal\0",
-                            config_item_perf_lookup, journald_gperf_lookup,
-                            false, false, true, s);
+        return config_parse_many("/etc/systemd/journald.conf",
+                                 CONF_DIRS_NULSTR("systemd/journald.conf"),
+                                 "Journal\0",
+                                 config_item_perf_lookup, journald_gperf_lookup,
+                                 false, s);
 }
 
 static int server_dispatch_sync(sd_event_source *es, usec_t t, void *userdata) {
diff --git a/src/journal/journald.conf b/src/journal/journald.conf
index 2073f1b..29bdf8f 100644
--- a/src/journal/journald.conf
+++ b/src/journal/journald.conf
@@ -5,6 +5,9 @@
 #  the Free Software Foundation; either version 2.1 of the License, or
 #  (at your option) any later version.
 #
+# You can override the directives in this file by creating files in
+# /etc/systemd/journald.conf.d/*.conf.
+#
 # See journald.conf(5) for details
 
 [Journal]

commit 1b907b5c3b11491b790e541dd24255a758511a2f
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:06:04 2014 -0800

    core: Support system.conf.d and user.conf.d directories in the usual search paths

diff --git a/Makefile-man.am b/Makefile-man.am
index c24606a..f025be0 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -195,6 +195,7 @@ MANPAGES_ALIAS += \
 	man/sd_journal_wait.3 \
 	man/sd_machine_get_ifindices.3 \
 	man/sd_notifyf.3 \
+	man/system.conf.d.5 \
 	man/systemd-ask-password-console.path.8 \
 	man/systemd-ask-password-wall.path.8 \
 	man/systemd-ask-password-wall.service.8 \
@@ -227,7 +228,8 @@ MANPAGES_ALIAS += \
 	man/systemd-udevd-kernel.socket.8 \
 	man/systemd-udevd.8 \
 	man/systemd-update-done.8 \
-	man/systemd-user.conf.5
+	man/systemd-user.conf.5 \
+	man/user.conf.d.5
 man/SD_ALERT.3: man/sd-daemon.3
 man/SD_CRIT.3: man/sd-daemon.3
 man/SD_DEBUG.3: man/sd-daemon.3
@@ -301,6 +303,7 @@ man/sd_journal_test_cursor.3: man/sd_journal_get_cursor.3
 man/sd_journal_wait.3: man/sd_journal_get_fd.3
 man/sd_machine_get_ifindices.3: man/sd_machine_get_class.3
 man/sd_notifyf.3: man/sd_notify.3
+man/system.conf.d.5: man/systemd-system.conf.5
 man/systemd-ask-password-console.path.8: man/systemd-ask-password-console.service.8
 man/systemd-ask-password-wall.path.8: man/systemd-ask-password-console.service.8
 man/systemd-ask-password-wall.service.8: man/systemd-ask-password-console.service.8
@@ -334,6 +337,7 @@ man/systemd-udevd-kernel.socket.8: man/systemd-udevd.service.8
 man/systemd-udevd.8: man/systemd-udevd.service.8
 man/systemd-update-done.8: man/systemd-update-done.service.8
 man/systemd-user.conf.5: man/systemd-system.conf.5
+man/user.conf.d.5: man/systemd-system.conf.5
 man/SD_ALERT.html: man/sd-daemon.html
 	$(html-alias)
 
@@ -553,6 +557,9 @@ man/sd_machine_get_ifindices.html: man/sd_machine_get_class.html
 man/sd_notifyf.html: man/sd_notify.html
 	$(html-alias)
 
+man/system.conf.d.html: man/systemd-system.conf.html
+	$(html-alias)
+
 man/systemd-ask-password-console.path.html: man/systemd-ask-password-console.service.html
 	$(html-alias)
 
@@ -652,6 +659,9 @@ man/systemd-update-done.html: man/systemd-update-done.service.html
 man/systemd-user.conf.html: man/systemd-system.conf.html
 	$(html-alias)
 
+man/user.conf.d.html: man/systemd-system.conf.html
+	$(html-alias)
+
 
 if ENABLE_BACKLIGHT
 MANPAGES += \
diff --git a/man/systemd-system.conf.xml b/man/systemd-system.conf.xml
index 284516d..dfb180c 100644
--- a/man/systemd-system.conf.xml
+++ b/man/systemd-system.conf.xml
@@ -22,7 +22,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="systemd-system.conf">
+<refentry id="systemd-system.conf"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
         <refentryinfo>
                 <title>systemd-system.conf</title>
                 <productname>systemd</productname>
@@ -44,25 +45,39 @@
 
         <refnamediv>
                 <refname>systemd-system.conf</refname>
+                <refname>system.conf.d</refname>
                 <refname>systemd-user.conf</refname>
-                <refpurpose>System and session service manager configuration file</refpurpose>
+                <refname>user.conf.d</refname>
+                <refpurpose>System and session service manager configuration files</refpurpose>
         </refnamediv>
 
         <refsynopsisdiv>
                 <para><filename>/etc/systemd/system.conf</filename></para>
+                <para><filename>/etc/systemd/system.conf.d/*.conf</filename></para>
+                <para><filename>/run/systemd/system.conf.d/*.conf</filename></para>
+                <para><filename>/usr/lib/systemd/system.conf.d/*.conf</filename></para>
                 <para><filename>/etc/systemd/user.conf</filename></para>
+                <para><filename>/etc/systemd/user.conf.d/*.conf</filename></para>
+                <para><filename>/run/systemd/user.conf.d/*.conf</filename></para>
+                <para><filename>/usr/lib/systemd/user.conf.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
                 <title>Description</title>
 
-                <para>When run as system instance systemd reads the
-                configuration file <filename>system.conf</filename>,
-                otherwise <filename>user.conf</filename>. These
+                <para>When run as a system instance, systemd interprets the
+                configuration file <filename>system.conf</filename> and the
+                files in <filename>system.conf.d</filename> directories; when
+                run as a user instance, systemd interprets the configuration
+                file <filename>user.conf</filename> and the files in
+                <filename>user.conf.d</filename> directories. These
                 configuration files contain a few settings controlling
                 basic manager operations.</para>
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+        <xi:include href="standard-conf.xml" xpointer="conf" />
+
         <refsect1>
                 <title>Options</title>
 
diff --git a/man/systemd.xml b/man/systemd.xml
index bf7a7a6..d776815 100644
--- a/man/systemd.xml
+++ b/man/systemd.xml
@@ -75,10 +75,12 @@
                 <citerefentry><refentrytitle>telinit</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                 for more information.</para>
 
-                <para>When run as system instance, systemd interprets
-                the configuration file
-                <filename>system.conf</filename>, otherwise
-                <filename>user.conf</filename>. See
+                <para>When run as a system instance, systemd interprets the
+                configuration file <filename>system.conf</filename> and the
+                files in <filename>system.conf.d</filename> directories; when
+                run as a user instance, systemd interprets the configuration
+                file <filename>user.conf</filename> and the files in
+                <filename>user.conf.d</filename> directories. See
                 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
                 for more information.</para>
         </refsect1>
diff --git a/src/core/main.c b/src/core/main.c
index c9fd562..140f219 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -667,13 +667,12 @@ static int parse_config_file(void) {
                 {}
         };
 
-        const char *fn;
+        const char *fn, *conf_dirs_nulstr;
 
         fn = arg_running_as == SYSTEMD_SYSTEM ? PKGSYSCONFDIR "/system.conf" : PKGSYSCONFDIR "/user.conf";
-        config_parse(NULL, fn, NULL,
-                     "Manager\0",
-                     config_item_table_lookup, items,
-                     false, false, true, NULL);
+        conf_dirs_nulstr = arg_running_as == SYSTEMD_SYSTEM ? CONF_DIRS_NULSTR("systemd/system.conf") : CONF_DIRS_NULSTR("systemd/user.conf");
+        config_parse_many(fn, conf_dirs_nulstr, "Manager\0",
+                          config_item_table_lookup, items, false, NULL);
 
         return 0;
 }
diff --git a/src/core/system.conf b/src/core/system.conf
index 65a35a0..a372720 100644
--- a/src/core/system.conf
+++ b/src/core/system.conf
@@ -5,6 +5,9 @@
 #  the Free Software Foundation; either version 2.1 of the License, or
 #  (at your option) any later version.
 #
+# You can override the directives in this file by creating files in
+# /etc/systemd/system.conf.d/*.conf.
+#
 # See systemd-system.conf(5) for details
 
 [Manager]
diff --git a/src/core/user.conf b/src/core/user.conf
index 8c7ecde..87c8164 100644
--- a/src/core/user.conf
+++ b/src/core/user.conf
@@ -5,6 +5,9 @@
 #  the Free Software Foundation; either version 2.1 of the License, or
 #  (at your option) any later version.
 #
+# You can override the directives in this file by creating files in
+# /etc/systemd/user.conf.d/*.conf.
+#
 # See systemd-user.conf(5) for details
 
 [Manager]

commit d3fae78fe86f1dfcdb07fd613ccbb3adf547a617
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:05:43 2014 -0800

    man: Factor out a common snippet for .d directories and precedence
    
    Several manpages contain duplicate text describing a standard set of .d
    configuration directories, with the usual sorting, precedence,
    overrides, and so on.  Factor this common text out using XInclude before
    proliferating it even further.

diff --git a/Makefile-man.am b/Makefile-man.am
index 906a968..c24606a 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -1638,6 +1638,7 @@ EXTRA_DIST += \
 	man/sd_uid_get_state.xml \
 	man/sd_watchdog_enabled.xml \
 	man/shutdown.xml \
+	man/standard-conf.xml \
 	man/standard-options.xml \
 	man/sysctl.d.xml \
 	man/systemctl.xml \
diff --git a/man/binfmt.d.xml b/man/binfmt.d.xml
index 2270166..55a3df0 100644
--- a/man/binfmt.d.xml
+++ b/man/binfmt.d.xml
@@ -19,7 +19,8 @@
   You should have received a copy of the GNU Lesser General Public License
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
-<refentry id="binfmt.d" conditional='ENABLE_BINFMT'>
+<refentry id="binfmt.d" conditional='ENABLE_BINFMT'
+          xmlns:xi="http://www.w3.org/2001/XInclude">
 
         <refentryinfo>
                 <title>binfmt.d</title>
@@ -74,33 +75,10 @@
                 <para>Empty lines and lines beginning with ; and # are
                 ignored. Note that this means you may not use ; and #
                 as delimiter in binary format rules.</para>
-
-                <para>Each configuration file shall be named in the
-                style of <filename><replaceable>program</replaceable>.conf</filename>.
-                Files in <filename>/etc/</filename> override files
-                with the same name in <filename>/usr/lib/</filename>
-                and <filename>/run/</filename>. Files in
-                <filename>/run/</filename> override files with the
-                same name in <filename>/usr/lib/</filename>. Packages
-                should install their configuration files in
-                <filename>/usr/lib/</filename>, files in
-                <filename>/etc/</filename> are reserved for the local
-                administrator, who may use this logic to override the
-                configuration files installed from vendor
-                packages. All files are sorted by their filename in
-                lexicographic order, regardless of which of the
-                directories they reside in. If multiple files specify
-                the same binary type name, the entry in the file with
-                the lexicographically latest name will be applied.</para>
-
-                <para>If the administrator wants to disable a
-                configuration file supplied by the vendor, the
-                recommended way is to place a symlink to
-                <filename>/dev/null</filename> in
-                <filename>/etc/binfmt.d/</filename> bearing the
-                same filename.</para>
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+
         <refsect1>
                 <title>Example</title>
                 <example>
diff --git a/man/logind.conf.xml b/man/logind.conf.xml
index ca7525f..e927cf4 100644
--- a/man/logind.conf.xml
+++ b/man/logind.conf.xml
@@ -22,7 +22,8 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="logind.conf" conditional='ENABLE_LOGIND'>
+<refentry id="logind.conf" conditional='ENABLE_LOGIND'
+          xmlns:xi="http://www.w3.org/2001/XInclude">
         <refentryinfo>
                 <title>logind.conf</title>
                 <productname>systemd</productname>
@@ -59,29 +60,11 @@
                 <title>Description</title>
 
                 <para>These files configure various parameters of the systemd login manager, <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
-
-                <para>Each configuration file shall be named in the style of
-                <filename><replaceable>filename</replaceable>.conf</filename>.
-                Files in <filename>/etc/</filename> override files with the
-                same name in <filename>/usr/lib/</filename> and
-                <filename>/run/</filename>.  Files in
-                <filename>/run/</filename> override files with the same name in
-                <filename>/usr/lib/</filename>. Packages should install their
-                configuration files in <filename>/usr/lib/</filename>. Files in
-                <filename>/etc/</filename> are reserved for the local
-                administrator, who may use this logic to override the
-                configuration files installed by vendor packages. All
-                configuration files are sorted by their filename in
-                lexicographic order, regardless of which of the directories
-                they reside in. If multiple files specify the same option, the
-                entry in the file with the lexicographically latest name will
-                be applied; entries in any <filename>logind.conf.d</filename>
-                file override entries in
-                <filename>/etc/systemd/logind.conf</filename>. It is
-                recommended to prefix all filenames with a two-digit number and
-                a dash, to simplify the ordering of the files.</para>
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+        <xi:include href="standard-conf.xml" xpointer="conf" />
+
         <refsect1>
                 <title>Options</title>
 
diff --git a/man/modules-load.d.xml b/man/modules-load.d.xml
index 33c466f..4b578d7 100644
--- a/man/modules-load.d.xml
+++ b/man/modules-load.d.xml
@@ -19,7 +19,8 @@
   You should have received a copy of the GNU Lesser General Public License
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
-<refentry id="modules-load.d" conditional='HAVE_KMOD'>
+<refentry id="modules-load.d" conditional='HAVE_KMOD'
+          xmlns:xi="http://www.w3.org/2001/XInclude">
 
         <refentryinfo>
                 <title>modules-load.d</title>
@@ -74,29 +75,10 @@
                 list of kernel module names to load, separated by
                 newlines. Empty lines and lines whose first
                 non-whitespace character is # or ; are ignored.</para>
-
-                <para>Each configuration file shall be named in the
-                style of <filename><replaceable>program</replaceable>.conf</filename>.
-                Files in <filename>/etc/</filename> override files
-                with the same name in <filename>/usr/lib/</filename>
-                and <filename>/run/</filename>. Files in
-                <filename>/run/</filename> override files with the
-                same name in <filename>/usr/lib/</filename>. Packages
-                should install their configuration files in
-                <filename>/usr/lib/</filename>, files in
-                <filename>/etc/</filename> are reserved for the local
-                administrator, who may use this logic to override the
-                configuration files installed from vendor
-                packages.</para>
-
-                <para>If the administrator wants to disable a
-                configuration file supplied by the vendor, the
-                recommended way is to place a symlink to
-                <filename>/dev/null</filename> in
-                <filename>/etc/modules-load.d/</filename> bearing the
-                same filename.</para>
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+
         <refsect1>
                 <title>Example</title>
                 <example>
diff --git a/man/standard-conf.xml b/man/standard-conf.xml
new file mode 100644
index 0000000..b87d7e9
--- /dev/null
+++ b/man/standard-conf.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0"?> <!--*- Mode: nxml; nxml-child-indent: 2; indent-tabs-mode: nil -*-->
+<!DOCTYPE refsection PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+          "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+
+<refsection>
+  <refsection id='confd'>
+    <title>Configuration Directories and Precedence</title>
+
+    <para>Configuration files are read from directories in
+    <filename>/etc/</filename>, <filename>/run/</filename>, and
+    <filename>/usr/lib/</filename>, in order of precedence.
+    Each configuration file in these configuration directories shall be named in
+    the style of <filename><replaceable>filename</replaceable>.conf</filename>.
+    Files in <filename>/etc/</filename> override files with the same name in
+    <filename>/run/</filename> and <filename>/usr/lib/</filename>. Files in
+    <filename>/run/</filename> override files with the same name in
+    <filename>/usr/lib/</filename>.</para>
+
+    <para>Packages should install their configuration files in
+    <filename>/usr/lib/</filename>. Files in <filename>/etc/</filename> are
+    reserved for the local administrator, who may use this logic to override the
+    configuration files installed by vendor packages. All configuration files
+    are sorted by their filename in lexicographic order, regardless of which of
+    the directories they reside in. If multiple files specify the same option,
+    the entry in the file with the lexicographically latest name will take
+    precedence. It is recommended to prefix all filenames with a two-digit number
+    and a dash, to simplify the ordering of the files.</para>
+
+    <para>If the administrator wants to disable a configuration file supplied by
+    the vendor, the recommended way is to place a symlink to
+    <filename>/dev/null</filename> in the configuration directory in
+    <filename>/etc/</filename>, with the same filename as the vendor
+    configuration file.</para>
+  </refsection>
+
+  <refsection id='conf'>
+    <title>Configuration File</title>
+
+    <para>Configuration is also read from a single configuration file in
+    <filename>/etc/</filename>. This file is read before any of the
+    configuration directories, and has the lowest precedence; entries in a file
+    in any configuration directory override entries in the single configuration
+    file.</para>
+  </refsection>
+</refsection>
diff --git a/man/sysctl.d.xml b/man/sysctl.d.xml
index 922b5c4..c67a199 100644
--- a/man/sysctl.d.xml
+++ b/man/sysctl.d.xml
@@ -18,7 +18,8 @@
   You should have received a copy of the GNU Lesser General Public License
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
-<refentry id="sysctl.d">
+<refentry id="sysctl.d"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
 
         <refentryinfo>
                 <title>sysctl.d</title>
@@ -70,27 +71,6 @@
                 is <literal>#</literal> or <literal>;</literal> are
                 ignored.</para>
 
-                <para>Each configuration file shall be named in the
-                style of <filename><replaceable>program</replaceable>.conf</filename>.
-                Files in <filename>/etc/</filename> override files
-                with the same name in <filename>/usr/lib/</filename>
-                and <filename>/run/</filename>.  Files in
-                <filename>/run/</filename> override files with the same
-                name in <filename>/usr/lib/</filename>. Packages
-                should install their configuration files in
-                <filename>/usr/lib/</filename>. Files in
-                <filename>/etc/</filename> are reserved for the local
-                administrator, who may use this logic to override the
-                configuration files installed by vendor packages. All
-                configuration files are sorted by their filename in
-                lexicographic order, regardless of which of the
-                directories they reside in. If multiple files specify the
-                same variable name, the entry in the file with the
-                lexicographically latest name will be applied. It is
-                recommended to prefix all filenames with a two-digit
-                number and a dash, to simplify the ordering of the
-                files.</para>
-
                 <para>Note that either <literal>/</literal> or
                 <literal>.</literal> may be used as separators within
                 sysctl variable names. If the first separator is a
@@ -109,13 +89,6 @@
                 <filename>/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</filename>.
                 </para>
 
-                <para>If the administrator wants to disable a
-                configuration file supplied by the vendor, the
-                recommended way is to place a symlink to
-                <filename>/dev/null</filename> in
-                <filename>/etc/sysctl.d/</filename> bearing the
-                same filename.</para>
-
                 <para>The settings configured with
                 <filename>sysctl.d</filename> files will be applied
                 early on boot. The network interface-specific options
@@ -142,6 +115,8 @@
                 example below).</para>
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+
         <refsect1>
                 <title>Examples</title>
                 <example>
diff --git a/man/sysusers.d.xml b/man/sysusers.d.xml
index 18c71db..ac2db98 100644
--- a/man/sysusers.d.xml
+++ b/man/sysusers.d.xml
@@ -19,7 +19,8 @@
   You should have received a copy of the GNU Lesser General Public License
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
-<refentry id="sysusers.d">
+<refentry id="sysusers.d"
+          xmlns:xi="http://www.w3.org/2001/XInclude">
 
         <refentryinfo>
                 <title>sysusers.d</title>
@@ -239,8 +240,10 @@ u root 0 "Superuser" /root</programlisting>
 
         </refsect1>
 
+        <xi:include href="standard-conf.xml" xpointer="confd" />
+
         <refsect1>
-                <title>Overriding vendor configuration</title>
+                <title>Idempotence</title>
 
                 <para>Note that <command>systemd-sysusers</command>
                 will do nothing if the specified users or groups
@@ -248,31 +251,13 @@ u root 0 "Superuser" /root</programlisting>
                 <filename>sysusers.d</filename> vendor configuration,
                 except to block certain users or groups from being
                 created.</para>
-
-                <para>Files in <filename>/etc/sysusers.d</filename>
-                override files with the same name in
-                <filename>/usr/lib/sysusers.d</filename> and
-                <filename>/run/sysusers.d</filename>. Files in
-                <filename>/run/sysusers.d</filename> override files
-                with the same name in
-                <filename>/usr/lib/sysusers.d</filename>. The scheme is the same as for
-                <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
-                except for the directory name.</para>
-
-                <para>If the administrator wants to disable a
-                configuration file supplied by the vendor, the
-                recommended way is to place a symlink to
-                <filename>/dev/null</filename> in
-                <filename>/etc/sysusers.d/</filename> bearing the
-                same filename.</para>
         </refsect1>
 
         <refsect1>
                 <title>See Also</title>
                 <para>
                         <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>tmpfiles.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                        <citerefentry><refentrytitle>systemd-sysusers</refentrytitle><manvolnum>8</manvolnum></citerefentry>
                 </para>
         </refsect1>
 

commit 02b75c9edd61f47de7940b61b97b071b69f38a11
Author: Josh Triplett <josh at joshtriplett.org>
Date:   Sat Nov 29 01:05:20 2014 -0800

    man/logind.conf.xml: Make "man logind.conf.d" work too

diff --git a/Makefile-man.am b/Makefile-man.am
index f817a05..906a968 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -1110,8 +1110,13 @@ MANPAGES += \
 	man/logind.conf.5 \
 	man/systemd-logind.service.8
 MANPAGES_ALIAS += \
+	man/logind.conf.d.5 \
 	man/systemd-logind.8
+man/logind.conf.d.5: man/logind.conf.5
 man/systemd-logind.8: man/systemd-logind.service.8
+man/logind.conf.d.html: man/logind.conf.html
+	$(html-alias)
+
 man/systemd-logind.html: man/systemd-logind.service.html
 	$(html-alias)
 
diff --git a/man/logind.conf.xml b/man/logind.conf.xml
index 0b35f51..ca7525f 100644
--- a/man/logind.conf.xml
+++ b/man/logind.conf.xml
@@ -44,6 +44,7 @@
 
         <refnamediv>
                 <refname>logind.conf</refname>
+                <refname>logind.conf.d</refname>
                 <refpurpose>Login manager configuration files</refpurpose>
         </refnamediv>
 



More information about the systemd-commits mailing list