chiark / gitweb /
conf: when looking for configurations look in /etc first, in /run second
authorLennart Poettering <lennart@poettering.net>
Wed, 14 Mar 2012 13:25:05 +0000 (14:25 +0100)
committerLennart Poettering <lennart@poettering.net>
Wed, 14 Mar 2012 13:25:05 +0000 (14:25 +0100)
After long consideration we came to the conclusion that user
configuration in /etc should always override the (generally computer
generated) configuration in /run. User configuration should always be
what matters over anything else. Hence rearrange the search orders
accordingly.

In general this should change very little as overriding like this is
seldomn done so far, and the order between /etc and /usr stays the same.

man/binfmt.d.xml
man/modules-load.d.xml
man/sysctl.d.xml
man/tmpfiles.d.xml
src/binfmt/binfmt.c
src/modules-load.c
src/path-lookup.c
src/sysctl.c
src/systemd.pc.in
src/tmpfiles.c

index 966778d..f5ec805 100644 (file)
@@ -46,9 +46,9 @@
         </refnamediv>
 
         <refsynopsisdiv>
-                <para><filename>/usr/lib/binfmt.d/*.conf</filename></para>
                 <para><filename>/etc/binfmt.d/*.conf</filename></para>
                 <para><filename>/run/binfmt.d/*.conf</filename></para>
+                <para><filename>/usr/lib/binfmt.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
index b633663..e2f7d5c 100644 (file)
@@ -46,9 +46,9 @@
         </refnamediv>
 
         <refsynopsisdiv>
-                <para><filename>/usr/lib/modules-load.d/*.conf</filename></para>
                 <para><filename>/etc/modules-load.d/*.conf</filename></para>
                 <para><filename>/run/modules-load.d/*.conf</filename></para>
+                <para><filename>/usr/lib/modules-load.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
index 240aa81..9c108b0 100644 (file)
@@ -46,9 +46,9 @@
         </refnamediv>
 
         <refsynopsisdiv>
-                <para><filename>/usr/lib/sysctl.d/*.conf</filename></para>
                 <para><filename>/etc/sysctl.d/*.conf</filename></para>
                 <para><filename>/run/sysctl.d/*.conf</filename></para>
+                <para><filename>/usr/lib/sysctl.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
index b6bf363..f70bf0e 100644 (file)
@@ -47,9 +47,9 @@
         </refnamediv>
 
         <refsynopsisdiv>
-                <para><filename>/usr/lib/tmpfiles.d/*.conf</filename></para>
                 <para><filename>/etc/tmpfiles.d/*.conf</filename></para>
                 <para><filename>/run/tmpfiles.d/*.conf</filename></para>
+                <para><filename>/usr/lib/tmpfiles.d/*.conf</filename></para>
         </refsynopsisdiv>
 
         <refsect1>
index e8d6524..0e60618 100644 (file)
@@ -138,8 +138,8 @@ int main(int argc, char *argv[]) {
                 write_one_line_file("/proc/sys/fs/binfmt_misc/status", "-1");
 
                 r = conf_files_list(&files, ".conf",
-                                    "/run/binfmt.d",
                                     "/etc/binfmt.d",
+                                    "/run/binfmt.d",
                                     "/usr/local/lib/binfmt.d",
                                     "/usr/lib/binfmt.d",
                                     NULL);
index 043e909..77fe3ea 100644 (file)
@@ -68,8 +68,8 @@ int main(int argc, char *argv[]) {
         kmod_set_log_fn(ctx, systemd_kmod_log, NULL);
 
         if (conf_files_list(&files, ".conf",
-                            "/run/modules-load.d",
                             "/etc/modules-load.d",
+                            "/run/modules-load.d",
                             "/usr/local/lib/modules-load.d",
                             "/usr/lib/modules-load.d",
                             "/lib/modules-load.d",
index 93fdf63..e6f050d 100644 (file)
@@ -54,9 +54,9 @@ int user_config_home(char **config_home) {
 
 static char** user_dirs(void) {
         const char * const config_unit_paths[] = {
-                "/run/systemd/user",
                 USER_CONFIG_UNIT_PATH,
                 "/etc/systemd/user",
+                "/run/systemd/user",
                 NULL
         };
 
@@ -207,9 +207,9 @@ int lookup_paths_init(LookupPaths *p, ManagerRunningAs running_as, bool personal
                                                 /* If you modify this you also want to modify
                                                  * systemduserunitpath= in systemd.pc.in, and
                                                  * the arrays in user_dirs() above! */
-                                                "/run/systemd/user",
                                                 USER_CONFIG_UNIT_PATH,
                                                 "/etc/systemd/user",
+                                                "/run/systemd/user",
                                                 "/usr/local/lib/systemd/user",
                                                 "/usr/local/share/systemd/user",
                                                 USER_DATA_UNIT_PATH,
@@ -224,9 +224,9 @@ int lookup_paths_init(LookupPaths *p, ManagerRunningAs running_as, bool personal
                         if (!(p->unit_path = strv_new(
                                               /* If you modify this you also want to modify
                                                * systemdsystemunitpath= in systemd.pc.in! */
-                                              "/run/systemd/system",
                                               SYSTEM_CONFIG_UNIT_PATH,
                                               "/etc/systemd/system",
+                                              "/run/systemd/system",
                                               "/usr/local/lib/systemd/system",
                                               "/usr/lib/systemd/system",
                                               SYSTEM_DATA_UNIT_PATH,
index 8bdfb08..852ec91 100644 (file)
@@ -236,8 +236,8 @@ int main(int argc, char *argv[]) {
                 char **files, **f;
 
                 r = conf_files_list(&files, ".conf",
-                                    "/run/sysctl.d",
                                     "/etc/sysctl.d",
+                                    "/run/sysctl.d",
                                     "/usr/local/lib/sysctl.d",
                                     "/usr/lib/sysctl.d",
                                     "/lib/sysctl.d",
index 4f2abb0..61de305 100644 (file)
@@ -12,8 +12,8 @@ systemdsystemunitdir=@systemunitdir@
 systemduserunitdir=@userunitdir@
 systemdsystemconfdir=@pkgsysconfdir@/system
 systemduserconfdir=@pkgsysconfdir@/user
-systemdsystemunitpath=/run/systemd/system:${systemdsystemconfdir}:/etc/systemd/system:/usr/local/share/systemd/system:/usr/local/lib/systemd/system:/usr/share/systemd/system:/usr/lib/systemd/system:/lib/systemd/system:${systemdsystemunitdir}
-systemduserunitpath=${systemduserconfdir}:/etc/systemd/user:/usr/local/share/systemd/user:/usr/local/lib/systemd/user:/usr/share/systemd/user:/usr/lib/systemd/user:${systemduserunitdir}
+systemdsystemunitpath=${systemdsystemconfdir}:/etc/systemd/system:/run/systemd/system:/usr/local/share/systemd/system:/usr/local/lib/systemd/system:/usr/share/systemd/system:/usr/lib/systemd/system:/lib/systemd/system:${systemdsystemunitdir}
+systemduserunitpath=${systemduserconfdir}:/etc/systemd/user:/run/systemd/user:/usr/local/share/systemd/user:/usr/local/lib/systemd/user:/usr/share/systemd/user:/usr/lib/systemd/user:${systemduserunitdir}
 
 Name: systemd
 Description: systemd System and Service Manager
index 8cbce12..873bf23 100644 (file)
@@ -1271,8 +1271,8 @@ int main(int argc, char *argv[]) {
                 char **files, **f;
 
                 r = conf_files_list(&files, ".conf",
-                                    "/run/tmpfiles.d",
                                     "/etc/tmpfiles.d",
+                                    "/run/tmpfiles.d",
                                     "/usr/local/lib/tmpfiles.d",
                                     "/usr/lib/tmpfiles.d",
                                     NULL);