diff --git a/1096-new-udev-root-symlink-generator.patch b/1096-new-udev-root-symlink-generator.patch index 23036bf..e6a0c0d 100644 --- a/1096-new-udev-root-symlink-generator.patch +++ b/1096-new-udev-root-symlink-generator.patch @@ -94,19 +94,6 @@ + return 0; +} --- /dev/null -+++ systemd-222/units/systemd-udev-root-symlink.service -@@ -0,0 +1,10 @@ -+[Unit] -+Description=Rule generator for /dev/root symlink -+Before=systemd-udevd.service -+DefaultDependencies=no -+ConditionPathIsReadWrite=/run/udev -+ -+[Service] -+Type=oneshot -+RemainAfterExit=yes -+ExecStart=/usr/lib/udev/rootsymlink-generator ---- /dev/null +++ systemd-222/units/systemd-udev-root-symlink.service.in @@ -0,0 +1,10 @@ +[Unit] @@ -118,4 +105,4 @@ +[Service] +Type=oneshot +RemainAfterExit=yes -+ExecStart=@udevlibexec@/rootsymlink-generator ++ExecStart=@udevlibexecdir@/rootsymlink-generator diff --git a/handle-root_uses_lang-value-in-etc-sysconfig-language.patch b/handle-root_uses_lang-value-in-etc-sysconfig-language.patch index 16e2272..520c7bb 100644 --- a/handle-root_uses_lang-value-in-etc-sysconfig-language.patch +++ b/handle-root_uses_lang-value-in-etc-sysconfig-language.patch @@ -11,42 +11,55 @@ Index: systemd-221/src/core/locale-setup.c =================================================================== --- systemd-221.orig/src/core/locale-setup.c +++ systemd-221/src/core/locale-setup.c -@@ -34,6 +34,11 @@ int locale_setup(char ***environment) { +@@ -34,6 +34,10 @@ int locale_setup(char ***environment) { char **add; char *variables[_VARIABLE_LC_MAX] = {}; int r = 0, i; +#ifdef HAVE_SYSV_COMPAT -+ char _cleanup_free_ *root_uses_lang; -+ -+ zero(root_uses_lang); ++ char _cleanup_free_ *rc_lang = NULL, *rc_lc_ctype = NULL; ++ char _cleanup_free_ *root_uses_lang = NULL; +#endif if (detect_container(NULL) <= 0) { r = parse_env_file("/proc/cmdline", WHITESPACE, -@@ -80,6 +85,27 @@ int locale_setup(char ***environment) { +@@ -80,6 +85,41 @@ int locale_setup(char ***environment) { if (r < 0 && r != -ENOENT) log_warning_errno(r, "Failed to read /etc/locale.conf: %m"); } +#ifdef HAVE_SYSV_COMPAT -+ if (r <= 0 && -+ (r = parse_env_file("/etc/sysconfig/language", NEWLINE, -+ "ROOT_USES_LANG", &root_uses_lang, -+ "RC_LANG", &variables[VARIABLE_LANG], -+ NULL)) < 0) { -+ if (r != -ENOENT) -+ log_warning("Failed to read /etc/sysconfig/language: %s", strerror(-r)); ++ r = parse_env_file("/etc/sysconfig/language", NEWLINE, ++ "RC_LANG", &rc_lang, ++ "RC_LC_CTYPE", &rc_lc_ctype, ++ "ROOT_USES_LANG", &root_uses_lang, ++ NULL); + -+ } else { -+ if (!root_uses_lang || (root_uses_lang && !strcaseeq(root_uses_lang,"yes"))) { -+ if (root_uses_lang && strcaseeq(root_uses_lang,"ctype")) -+ variables[VARIABLE_LC_CTYPE]=variables[VARIABLE_LANG]; -+ else -+ free(variables[VARIABLE_LANG]); ++ if (r < 0 && r != -ENOENT) ++ log_warning("Failed to read /etc/sysconfig/language: %s", strerror(-r)); + -+ variables[VARIABLE_LANG]=strdup("POSIX"); ++ /* ++ * Use the values of the interactive locale configuration in /etc/sysconfig/language ++ * as fallback if /etc/locale.conf does not exist and no locale was specified on the ++ * kernel's command line. The special case ROOT_USES_LANG=ctype allows to set LC_CTYPE ++ * even if LANG for root is set to e.g. POSIX. But do this only if no LC_CTYPE has been ++ * set in /etc/locale.conf and on the kernel's command line. ++ */ ++ if (root_uses_lang) { ++ if (strcaseeq(root_uses_lang, "yes") && !variables[VARIABLE_LANG]) { ++ variables[VARIABLE_LANG] = rc_lang; ++ rc_lang = NULL; ++ } ++ if (strcaseeq(root_uses_lang, "ctype") && !variables[VARIABLE_LC_CTYPE]) { ++ if (variables[VARIABLE_LANG]) ++ variables[VARIABLE_LC_CTYPE] = strdup(variables[VARIABLE_LANG]); ++ else if (rc_lc_ctype && *rc_lc_ctype) { ++ variables[VARIABLE_LC_CTYPE] = rc_lc_ctype; ++ rc_lc_ctype = NULL; ++ } else if (rc_lang && *rc_lang) { ++ variables[VARIABLE_LC_CTYPE] = rc_lang; ++ rc_lang = NULL; ++ } ++ } + } -+ } -+ +#endif add = NULL; diff --git a/systemd-mini.changes b/systemd-mini.changes index ce46d87..4724b61 100644 --- a/systemd-mini.changes +++ b/systemd-mini.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Thu Nov 12 09:56:36 UTC 2015 - werner@suse.de + +- Modify patch handle-root_uses_lang-value-in-etc-sysconfig-language.patch + to handle locale at boot time well (boo#927250) +- Be able to use build service environments several times + +------------------------------------------------------------------- +Tue Nov 10 18:06:43 UTC 2015 - schwab@suse.de + +- 1096-new-udev-root-symlink-generator.patch: fix substitution in + ExecStart value + ------------------------------------------------------------------- Wed Oct 21 20:18:58 UTC 2015 - dmueller@suse.com diff --git a/systemd-mini.spec b/systemd-mini.spec index e4c8d27..84245e7 100644 --- a/systemd-mini.spec +++ b/systemd-mini.spec @@ -658,6 +658,16 @@ cflags () esac set +o noclobber } + +# +# Be sure that fresh build libudev is linked as otherwise no errors are found +# +sed -ri '/^systemd_cryptsetup_CFLAGS/,/^systemd_cryptsetup_LDADD/{ /^$/a\ +systemd_cryptsetup_LDFLAGS = \\\ + $(AM_LDFLAGS) \\\ + -Wl,-rpath-link=$(top_srcdir)/.libs\ + +}' Makefile.am sh autogen.sh export V=e diff --git a/systemd.changes b/systemd.changes index ce46d87..4724b61 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Thu Nov 12 09:56:36 UTC 2015 - werner@suse.de + +- Modify patch handle-root_uses_lang-value-in-etc-sysconfig-language.patch + to handle locale at boot time well (boo#927250) +- Be able to use build service environments several times + +------------------------------------------------------------------- +Tue Nov 10 18:06:43 UTC 2015 - schwab@suse.de + +- 1096-new-udev-root-symlink-generator.patch: fix substitution in + ExecStart value + ------------------------------------------------------------------- Wed Oct 21 20:18:58 UTC 2015 - dmueller@suse.com diff --git a/systemd.spec b/systemd.spec index 6c43ffe..674e6fc 100644 --- a/systemd.spec +++ b/systemd.spec @@ -653,6 +653,16 @@ cflags () esac set +o noclobber } + +# +# Be sure that fresh build libudev is linked as otherwise no errors are found +# +sed -ri '/^systemd_cryptsetup_CFLAGS/,/^systemd_cryptsetup_LDADD/{ /^$/a\ +systemd_cryptsetup_LDFLAGS = \\\ + $(AM_LDFLAGS) \\\ + -Wl,-rpath-link=$(top_srcdir)/.libs\ + +}' Makefile.am sh autogen.sh export V=e