aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/systemd/systemd/0001-Make-root-s-home-directory-configurable.patch
diff options
context:
space:
mode:
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.patch121
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
-