diff options
Diffstat (limited to 'meta/recipes-core/systemd/systemd/0013-Make-root-s-home-directory-configurable.patch')
-rw-r--r-- | meta/recipes-core/systemd/systemd/0013-Make-root-s-home-directory-configurable.patch | 155 |
1 files changed, 0 insertions, 155 deletions
diff --git a/meta/recipes-core/systemd/systemd/0013-Make-root-s-home-directory-configurable.patch b/meta/recipes-core/systemd/systemd/0013-Make-root-s-home-directory-configurable.patch deleted file mode 100644 index aeebbfb8fe..0000000000 --- a/meta/recipes-core/systemd/systemd/0013-Make-root-s-home-directory-configurable.patch +++ /dev/null @@ -1,155 +0,0 @@ -From 479e1f4aa2b9f1c911a4d0dd18e222d241a978ea Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Wed, 9 Nov 2016 20:35:30 -0800 -Subject: [PATCH 42/48] Make root's home directory configurable - -OpenEmbedded has a configurable home directory for root. Allow -systemd to be built using its idea of what root's home directory -should be. - -Upstream-Status: Denied -Upstream wants to have a unified hierarchy where everyone is -using the same root folder. -https://github.com/systemd/systemd/issues/541 - -Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca> -Signed-off-by: Khem Raj <raj.khem@gmail.com> - ---- - Makefile.am | 2 ++ - configure.ac | 7 +++++++ - src/basic/user-util.c | 4 ++-- - src/nspawn/nspawn.c | 4 ++-- - units/emergency.service.in | 4 ++-- - units/rescue.service.in | 4 ++-- - 6 files changed, 17 insertions(+), 8 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index 1bcd932c2..c2b4a99d2 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -226,6 +226,7 @@ AM_CPPFLAGS = \ - -DLIBDIR=\"$(libdir)\" \ - -DROOTLIBDIR=\"$(rootlibdir)\" \ - -DROOTLIBEXECDIR=\"$(rootlibexecdir)\" \ -+ -DROOTHOMEDIR=\"$(roothomedir)\" \ - -I $(top_srcdir)/src \ - -I $(top_builddir)/src/basic \ - -I $(top_srcdir)/src/basic \ -@@ -6356,6 +6357,7 @@ substitutions = \ - '|rootlibdir=$(rootlibdir)|' \ - '|rootlibexecdir=$(rootlibexecdir)|' \ - '|rootbindir=$(rootbindir)|' \ -+ '|roothomedir=$(roothomedir)|' \ - '|bindir=$(bindir)|' \ - '|SYSTEMCTL=$(rootbindir)/systemctl|' \ - '|SYSTEMD_NOTIFY=$(rootbindir)/systemd-notify|' \ -diff --git a/configure.ac b/configure.ac -index 0354ffe6a..b53ca1f1a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1641,6 +1641,11 @@ AC_ARG_WITH([rootlibdir], - [with_rootlibdir=${libdir}]) - AX_NORMALIZE_PATH([with_rootlibdir]) - -+AC_ARG_WITH([roothomedir], -+ AS_HELP_STRING([--with-roothomedir=DIR], [Home directory for the root user]), -+ [], -+ [with_roothomedir=/root]) -+ - AC_ARG_WITH([pamlibdir], - AS_HELP_STRING([--with-pamlibdir=DIR], [directory for PAM modules]), - [], -@@ -1733,6 +1738,7 @@ AC_SUBST([pamconfdir], [$with_pamconfdir]) - AC_SUBST([rpmmacrosdir], [$with_rpmmacrosdir]) - AC_SUBST([rootprefix], [$with_rootprefix]) - AC_SUBST([rootlibdir], [$with_rootlibdir]) -+AC_SUBST([roothomedir], [$with_roothomedir]) - - AC_CONFIG_FILES([ - Makefile -@@ -1829,6 +1835,7 @@ AC_MSG_RESULT([ - includedir: ${includedir} - lib dir: ${libdir} - rootlib dir: ${with_rootlibdir} -+ root home dir: ${with_roothomedir} - SysV init scripts: ${SYSTEM_SYSVINIT_PATH} - SysV rc?.d directories: ${SYSTEM_SYSVRCND_PATH} - build Python: ${PYTHON} -diff --git a/src/basic/user-util.c b/src/basic/user-util.c -index c619dad52..662682adf 100644 ---- a/src/basic/user-util.c -+++ b/src/basic/user-util.c -@@ -129,7 +129,7 @@ int get_user_creds( - *gid = 0; - - if (home) -- *home = "/root"; -+ *home = ROOTHOMEDIR; - - if (shell) - *shell = "/bin/sh"; -@@ -389,7 +389,7 @@ int get_home_dir(char **_h) { - /* Hardcode home directory for root to avoid NSS */ - u = getuid(); - if (u == 0) { -- h = strdup("/root"); -+ h = strdup(ROOTHOMEDIR); - if (!h) - return -ENOMEM; - -diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c -index 8a5fedd4b..7b01ec078 100644 ---- a/src/nspawn/nspawn.c -+++ b/src/nspawn/nspawn.c -@@ -2291,7 +2291,7 @@ static int inner_child( - if (envp[n_env]) - n_env++; - -- if ((asprintf((char**)(envp + n_env++), "HOME=%s", home ? home: "/root") < 0) || -+ if ((asprintf((char**)(envp + n_env++), "HOME=%s", home ? home: ROOTHOMEDIR) < 0) || - (asprintf((char**)(envp + n_env++), "USER=%s", arg_user ? arg_user : "root") < 0) || - (asprintf((char**)(envp + n_env++), "LOGNAME=%s", arg_user ? arg_user : "root") < 0)) - return log_oom(); -@@ -2373,7 +2373,7 @@ static int inner_child( - } else { - if (!arg_chdir) - /* If we cannot change the directory, we'll end up in /, that is expected. */ -- (void) chdir(home ?: "/root"); -+ (void) chdir(home ?: ROOTHOMEDIR); - - execle("/bin/bash", "-bash", NULL, env_use); - execle("/bin/sh", "-sh", NULL, env_use); -diff --git a/units/emergency.service.in b/units/emergency.service.in -index e9eb238b9..32588e48a 100644 ---- a/units/emergency.service.in -+++ b/units/emergency.service.in -@@ -15,8 +15,8 @@ Conflicts=syslog.socket - Before=shutdown.target - - [Service] --Environment=HOME=/root --WorkingDirectory=-/root -+Environment=HOME=@roothomedir@ -+WorkingDirectory=-@roothomedir@ - ExecStart=-@rootlibexecdir@/systemd-sulogin-shell emergency - Type=idle - StandardInput=tty-force -diff --git a/units/rescue.service.in b/units/rescue.service.in -index 4ab66f485..bd9898f2c 100644 ---- a/units/rescue.service.in -+++ b/units/rescue.service.in -@@ -14,8 +14,8 @@ After=sysinit.target plymouth-start.service - Before=shutdown.target - - [Service] --Environment=HOME=/root --WorkingDirectory=-/root -+Environment=HOME=@roothomedir@ -+WorkingDirectory=-@roothomedir@ - ExecStart=-@rootlibexecdir@/systemd-sulogin-shell rescue - Type=idle - StandardInput=tty-force --- -2.13.2 - |