diff options
Diffstat (limited to 'meta/recipes-core/systemd/systemd/0001-Make-root-s-home-directory-configurable.patch')
-rw-r--r-- | meta/recipes-core/systemd/systemd/0001-Make-root-s-home-directory-configurable.patch | 121 |
1 files changed, 59 insertions, 62 deletions
diff --git a/meta/recipes-core/systemd/systemd/0001-Make-root-s-home-directory-configurable.patch b/meta/recipes-core/systemd/systemd/0001-Make-root-s-home-directory-configurable.patch index c5ad29174c..a86c8410df 100644 --- a/meta/recipes-core/systemd/systemd/0001-Make-root-s-home-directory-configurable.patch +++ b/meta/recipes-core/systemd/systemd/0001-Make-root-s-home-directory-configurable.patch @@ -21,11 +21,11 @@ Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca> units/rescue.service.m4.in | 4 ++-- 8 files changed, 20 insertions(+), 11 deletions(-) -diff --git a/Makefile.am b/Makefile.am -index 4028112..5d18f5c 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -191,6 +191,7 @@ AM_CPPFLAGS = \ +Index: git/Makefile.am +=================================================================== +--- git.orig/Makefile.am ++++ git/Makefile.am +@@ -195,6 +195,7 @@ AM_CPPFLAGS = \ -DKEXEC=\"$(KEXEC)\" \ -DLIBDIR=\"$(libdir)\" \ -DROOTLIBDIR=\"$(rootlibdir)\" \ @@ -33,7 +33,7 @@ index 4028112..5d18f5c 100644 -DTEST_DIR=\"$(abs_top_srcdir)/test\" \ -I $(top_srcdir)/src \ -I $(top_builddir)/src/shared \ -@@ -5584,6 +5585,7 @@ EXTRA_DIST += \ +@@ -5830,6 +5831,7 @@ EXTRA_DIST += \ substitutions = \ '|rootlibexecdir=$(rootlibexecdir)|' \ '|rootbindir=$(rootbindir)|' \ @@ -41,14 +41,14 @@ index 4028112..5d18f5c 100644 '|bindir=$(bindir)|' \ '|SYSTEMCTL=$(rootbindir)/systemctl|' \ '|SYSTEMD_NOTIFY=$(rootbindir)/systemd-notify|' \ -diff --git a/configure.ac b/configure.ac -index 18b7198..365bc73 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1272,6 +1272,11 @@ AC_ARG_WITH([rootlibdir], +Index: git/configure.ac +=================================================================== +--- git.orig/configure.ac ++++ git/configure.ac +@@ -1310,6 +1310,11 @@ AC_ARG_WITH([rootlibdir], [], [with_rootlibdir=${libdir}]) - + +AC_ARG_WITH([roothomedir], + AS_HELP_STRING([--with-roothomedir=DIR], [Home directory for the root user]), + [], @@ -57,15 +57,15 @@ index 18b7198..365bc73 100644 AC_ARG_WITH([pamlibdir], AS_HELP_STRING([--with-pamlibdir=DIR], [Directory for PAM modules]), [], -@@ -1317,6 +1322,7 @@ AC_SUBST([pamlibdir], [$with_pamlibdir]) +@@ -1362,6 +1367,7 @@ AC_SUBST([pamlibdir], [$with_pamlibdir]) AC_SUBST([pamconfdir], [$with_pamconfdir]) AC_SUBST([rootprefix], [$with_rootprefix]) AC_SUBST([rootlibdir], [$with_rootlibdir]) +AC_SUBST([roothomedir], [$with_roothomedir]) - + AC_CONFIG_FILES([ Makefile po/Makefile.in -@@ -1400,6 +1406,7 @@ AC_MSG_RESULT([ +@@ -1446,6 +1452,7 @@ AC_MSG_RESULT([ include_prefix: ${INCLUDE_PREFIX} lib dir: ${libdir} rootlib dir: ${with_rootlibdir} @@ -73,55 +73,55 @@ index 18b7198..365bc73 100644 SysV init scripts: ${SYSTEM_SYSVINIT_PATH} SysV rc?.d directories: ${SYSTEM_SYSVRCND_PATH} Build Python: ${PYTHON} -diff --git a/src/core/unit-printf.c b/src/core/unit-printf.c -index 62599d0..852d34c 100644 ---- a/src/core/unit-printf.c -+++ b/src/core/unit-printf.c -@@ -259,7 +259,7 @@ static int specifier_user_home(char specifier, void *data, void *userdata, char +Index: git/src/core/unit-printf.c +=================================================================== +--- git.orig/src/core/unit-printf.c ++++ git/src/core/unit-printf.c +@@ -259,7 +259,7 @@ static int specifier_user_home(char spec * best of it if we can, but fail if we can't */ - + if (!c->user || streq(c->user, "root") || streq(c->user, "0")) - n = strdup("/root"); + n = strdup(ROOTHOMEDIR); else return -ENOTSUP; - -diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c -index d01da45..3e876d5 100644 ---- a/src/nspawn/nspawn.c -+++ b/src/nspawn/nspawn.c -@@ -3312,7 +3312,7 @@ int main(int argc, char *argv[]) { + +Index: git/src/nspawn/nspawn.c +=================================================================== +--- git.orig/src/nspawn/nspawn.c ++++ git/src/nspawn/nspawn.c +@@ -3183,7 +3183,7 @@ int main(int argc, char *argv[]) { if (r < 0) _exit(EXIT_FAILURE); - + - 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)) { log_oom(); -@@ -3402,7 +3402,7 @@ int main(int argc, char *argv[]) { - } else if (argc > optind) - execvpe(argv[optind], argv + optind, env_use); +@@ -3278,7 +3278,7 @@ int main(int argc, char *argv[]) { + execvp(argv[optind], argv + optind); + #endif /* HAVE_EXECVPE */ else { - chdir(home ? home : "/root"); + chdir(home ? home : ROOTHOMEDIR); execle("/bin/bash", "-bash", NULL, env_use); execle("/bin/sh", "-sh", NULL, env_use); } -diff --git a/src/shared/util.c b/src/shared/util.c -index 85a570a..aef6033 100644 ---- a/src/shared/util.c -+++ b/src/shared/util.c -@@ -4377,7 +4377,7 @@ int get_user_creds( +Index: git/src/shared/util.c +=================================================================== +--- git.orig/src/shared/util.c ++++ git/src/shared/util.c +@@ -4523,7 +4523,7 @@ int get_user_creds( *gid = 0; - + if (home) - *home = "/root"; + *home = ROOTHOMEDIR; - + if (shell) *shell = "/bin/sh"; -@@ -5363,7 +5363,7 @@ int get_home_dir(char **_h) { +@@ -5491,7 +5491,7 @@ int get_home_dir(char **_h) { /* Hardcode home directory for root to avoid NSS */ u = getuid(); if (u == 0) { @@ -129,14 +129,14 @@ index 85a570a..aef6033 100644 + h = strdup(ROOTHOMEDIR); if (!h) return -ENOMEM; - -diff --git a/units/console-shell.service.m4.in b/units/console-shell.service.m4.in -index 3f4904a..e2af652 100644 ---- a/units/console-shell.service.m4.in -+++ b/units/console-shell.service.m4.in + +Index: git/units/console-shell.service.m4.in +=================================================================== +--- git.orig/units/console-shell.service.m4.in ++++ git/units/console-shell.service.m4.in @@ -15,8 +15,8 @@ After=rc-local.service Before=getty.target - + [Service] -Environment=HOME=/root -WorkingDirectory=/root @@ -145,36 +145,33 @@ index 3f4904a..e2af652 100644 ExecStart=-/sbin/sulogin ExecStopPost=-@SYSTEMCTL@ poweroff Type=idle -diff --git a/units/emergency.service.in b/units/emergency.service.in -index 91fc1bb..659547e 100644 ---- a/units/emergency.service.in -+++ b/units/emergency.service.in -@@ -13,8 +13,8 @@ Conflicts=shutdown.target +Index: git/units/emergency.service.in +=================================================================== +--- git.orig/units/emergency.service.in ++++ git/units/emergency.service.in +@@ -14,8 +14,8 @@ Conflicts=rescue.service Before=shutdown.target - + [Service] -Environment=HOME=/root -WorkingDirectory=/root +Environment=HOME=@roothomedir@ +WorkingDirectory=@roothomedir@ ExecStartPre=-/bin/plymouth quit - ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again\\nto boot into default mode.' + ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" or ^D to\\ntry again to boot into default mode.' ExecStart=-/bin/sh -c "/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default" -diff --git a/units/rescue.service.m4.in b/units/rescue.service.m4.in -index ef54369..7aad86f 100644 ---- a/units/rescue.service.m4.in -+++ b/units/rescue.service.m4.in -@@ -14,8 +14,8 @@ After=sysinit.target plymouth-start.service +Index: git/units/rescue.service.in +=================================================================== +--- git.orig/units/rescue.service.in ++++ git/units/rescue.service.in +@@ -14,8 +14,8 @@ After=sysinit.target plymouth-start.serv Before=shutdown.target - + [Service] -Environment=HOME=/root -WorkingDirectory=/root +Environment=HOME=@roothomedir@ +WorkingDirectory=@roothomedir@ ExecStartPre=-/bin/plymouth quit - ExecStartPre=-/bin/echo -e 'Welcome to rescue mode! Type "systemctl default" or ^D to enter default mode.\\nType "journalctl -xb" to view system logs. Type "systemctl reboot" to reboot.' + ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" or ^D to\\nboot into default mode.' ExecStart=-/bin/sh -c "/sbin/sulogin; @SYSTEMCTL@ --fail --no-block default" --- -1.9.3 - |