- Add fix-devname-prefix.patch: fix modules.devname path, it isn't

in /usr.
- Move post script to fix symlinks in /etc/systemd/system to a
  trigger to run it after old systemd is uninstalled.

- Add fix-debugshell.patch: use /bin/bash if sushell isn't
  installed (bnc#789052).
- Add handle-root-uses-lang.patch: handle ROOT_USES_LANG=ctype
  (bnc#792182).
- Ensure libudev1 and libudev-mini1 conflicts.

OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=317
This commit is contained in:
Robert Milasan 2012-12-05 18:07:07 +00:00 committed by Git OBS Bridge
parent d1f5259059
commit 626d8c1aa6
7 changed files with 138 additions and 6 deletions

13
fix-debugshell.patch Normal file
View File

@ -0,0 +1,13 @@
Index: systemd-195/units/debug-shell.service.in
===================================================================
--- systemd-195.orig/units/debug-shell.service.in
+++ systemd-195/units/debug-shell.service.in
@@ -13,7 +13,7 @@ IgnoreOnIsolate=yes
[Service]
Environment=TERM=linux
-ExecStart=@sushell@
+ExecStart=/bin/bash -c '[ -x @sushell@ ] && exec @sushell@ || exec /bin/bash'
Restart=always
RestartSec=0
StandardInput=tty

13
fix-devname-prefix.patch Normal file
View File

@ -0,0 +1,13 @@
Index: systemd-195/src/udev/udevd.c
===================================================================
--- systemd-195.orig/src/udev/udevd.c
+++ systemd-195/src/udev/udevd.c
@@ -820,7 +820,7 @@ static void static_dev_create_from_modul
FILE *f;
uname(&kernel);
- util_strscpyl(modules, sizeof(modules), ROOTPREFIX "/lib/modules/", kernel.release, "/modules.devname", NULL);
+ util_strscpyl(modules, sizeof(modules), "/lib/modules/", kernel.release, "/modules.devname", NULL);
f = fopen(modules, "re");
if (f == NULL)
return;

View File

@ -0,0 +1,48 @@
Index: systemd-195/src/core/locale-setup.c
===================================================================
--- systemd-195.orig/src/core/locale-setup.c
+++ systemd-195/src/core/locale-setup.c
@@ -69,6 +69,11 @@ static const char * const variable_names
int locale_setup(void) {
char *variables[_VARIABLE_MAX];
int r = 0, i;
+#if defined(TARGET_SUSE)
+ char *root_uses_lang;
+
+ zero(root_uses_lang);
+#endif
zero(variables);
@@ -134,11 +139,21 @@ int locale_setup(void) {
#elif defined(TARGET_SUSE)
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));
+ } else {
+ if (!root_uses_lang || root_uses_lang && strcasecmp(root_uses_lang,"yes") != 0) {
+ if (root_uses_lang && strcasecmp(root_uses_lang,"ctype") == 0)
+ variables[VARIABLE_LC_CTYPE]=variables[VARIABLE_LANG];
+ else
+ free(variables[VARIABLE_LANG]);
+
+ variables[VARIABLE_LANG]=strdup("POSIX");
+ }
}
#elif defined(TARGET_DEBIAN) || defined(TARGET_UBUNTU) || defined(TARGET_ANGSTROM)
@@ -247,5 +262,9 @@ finish:
for (i = 0; i < _VARIABLE_MAX; i++)
free(variables[i]);
+#if defined(TARGET_SUSE)
+ free(root_uses_lang);
+#endif
+
return r;
}

View File

@ -1,3 +1,20 @@
-------------------------------------------------------------------
Wed Dec 5 15:13:27 UTC 2012 - fcrozat@suse.com
- Add fix-devname-prefix.patch: fix modules.devname path, it isn't
in /usr.
- Move post script to fix symlinks in /etc/systemd/system to a
trigger to run it after old systemd is uninstalled.
-------------------------------------------------------------------
Tue Dec 4 16:51:32 UTC 2012 - fcrozat@suse.com
- Add fix-debugshell.patch: use /bin/bash if sushell isn't
installed (bnc#789052).
- Add handle-root-uses-lang.patch: handle ROOT_USES_LANG=ctype
(bnc#792182).
- Ensure libudev1 and libudev-mini1 conflicts.
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Nov 22 14:22:00 UTC 2012 - rmilasan@suse.com Thu Nov 22 14:22:00 UTC 2012 - rmilasan@suse.com

View File

@ -131,6 +131,10 @@ Patch59: fix-enable-disable-boot-initscript.patch
Patch60: var-run-lock.patch Patch60: var-run-lock.patch
Patch63: xdm-display-manager.patch Patch63: xdm-display-manager.patch
Patch64: fix-permissions-btmp.patch Patch64: fix-permissions-btmp.patch
# PATCH-FIX-UPSTREAM fix-debugshell.patch fcrozat@suse.com bnc#789052 -- use bash if sushell isn't available
Patch71: fix-debugshell.patch
# PATCH-FIX-OPENSUSE handle-root-uses-lang.patch bnc#792182 fcrozat@suse.com -- handle ROOT_USES_LANG=ctype
Patch72: handle-root-uses-lang.patch
# Upstream First - Policy: # Upstream First - Policy:
# Never add any patches to this package without the upstream commit id # Never add any patches to this package without the upstream commit id
@ -165,6 +169,8 @@ Patch1014: 0014-rules-create-by-id-scsi-links-for-ATA-devices.patch
Patch1026: 0026-udev-netlink-null-rules.patch Patch1026: 0026-udev-netlink-null-rules.patch
# PATCH-FIX-OPENSUSE 0027-udev-fix-sg-autoload-regression.patch # PATCH-FIX-OPENSUSE 0027-udev-fix-sg-autoload-regression.patch
Patch1027: 0027-udev-fix-sg-autoload-regression.patch Patch1027: 0027-udev-fix-sg-autoload-regression.patch
# PATCH-FIX-OPENSUSE fix-devname-prefix.patch fcrozat@suse.com -- fix modules.devname path, it isn't in /usr
Patch1028: fix-devname-prefix.patch
%description %description
Systemd is a system and service manager, compatible with SysV and LSB Systemd is a system and service manager, compatible with SysV and LSB
@ -247,6 +253,9 @@ Summary: Dynamic library to access udev device information
License: LGPL-2.1+ License: LGPL-2.1+
Group: System/Libraries Group: System/Libraries
Requires: %{udevpkgname} >= %{version}-%{release} Requires: %{udevpkgname} >= %{version}-%{release}
%if 0%{?bootstrap}
Conflicts: libudev%{udev_major}
%endif
%description -n lib%{udevpkgname}%{udev_major} %description -n lib%{udevpkgname}%{udev_major}
This package contains the dynamic library libudev, which provides This package contains the dynamic library libudev, which provides
@ -325,6 +334,7 @@ cp %{SOURCE7} m4/
%patch1014 -p1 %patch1014 -p1
%patch1026 -p1 %patch1026 -p1
%patch1027 -p1 %patch1027 -p1
%patch1028 -p1
#systemd #systemd
%patch1 -p1 %patch1 -p1
@ -359,6 +369,8 @@ cp %{SOURCE7} m4/
%patch68 -p1 %patch68 -p1
%patch69 -p1 %patch69 -p1
%patch70 -p1 %patch70 -p1
%patch71 -p1
%patch72 -p1
%build %build
autoreconf -fiv autoreconf -fiv
@ -518,15 +530,15 @@ if [ "$1" -eq 1 ]; then
systemd-readahead-collect.service \ systemd-readahead-collect.service \
systemd-readahead-replay.service \ systemd-readahead-replay.service \
remote-fs.target >/dev/null 2>&1 || : remote-fs.target >/dev/null 2>&1 || :
else fi
%triggerpostun -- systemd < 194
# migrate any symlink which may refer to the old path # migrate any symlink which may refer to the old path
for f in $(find /etc/systemd/system -type l -xtype l); do for f in $(find /etc/systemd/system -type l -xtype l); do
new_target="/usr$(readlink $f)" new_target="/usr$(readlink $f)"
[ -f "$new_target" ] && ln -s -f $new_target $f || : [ -f "$new_target" ] && ln -s -f $new_target $f || :
done done
fi
%postun %postun
/sbin/ldconfig /sbin/ldconfig
if [ $1 -ge 1 ]; then if [ $1 -ge 1 ]; then

View File

@ -1,3 +1,20 @@
-------------------------------------------------------------------
Wed Dec 5 15:13:27 UTC 2012 - fcrozat@suse.com
- Add fix-devname-prefix.patch: fix modules.devname path, it isn't
in /usr.
- Move post script to fix symlinks in /etc/systemd/system to a
trigger to run it after old systemd is uninstalled.
-------------------------------------------------------------------
Tue Dec 4 16:51:32 UTC 2012 - fcrozat@suse.com
- Add fix-debugshell.patch: use /bin/bash if sushell isn't
installed (bnc#789052).
- Add handle-root-uses-lang.patch: handle ROOT_USES_LANG=ctype
(bnc#792182).
- Ensure libudev1 and libudev-mini1 conflicts.
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Nov 22 14:22:00 UTC 2012 - rmilasan@suse.com Thu Nov 22 14:22:00 UTC 2012 - rmilasan@suse.com

View File

@ -126,6 +126,10 @@ Patch59: fix-enable-disable-boot-initscript.patch
Patch60: var-run-lock.patch Patch60: var-run-lock.patch
Patch63: xdm-display-manager.patch Patch63: xdm-display-manager.patch
Patch64: fix-permissions-btmp.patch Patch64: fix-permissions-btmp.patch
# PATCH-FIX-UPSTREAM fix-debugshell.patch fcrozat@suse.com bnc#789052 -- use bash if sushell isn't available
Patch71: fix-debugshell.patch
# PATCH-FIX-OPENSUSE handle-root-uses-lang.patch bnc#792182 fcrozat@suse.com -- handle ROOT_USES_LANG=ctype
Patch72: handle-root-uses-lang.patch
# Upstream First - Policy: # Upstream First - Policy:
# Never add any patches to this package without the upstream commit id # Never add any patches to this package without the upstream commit id
@ -160,6 +164,8 @@ Patch1014: 0014-rules-create-by-id-scsi-links-for-ATA-devices.patch
Patch1026: 0026-udev-netlink-null-rules.patch Patch1026: 0026-udev-netlink-null-rules.patch
# PATCH-FIX-OPENSUSE 0027-udev-fix-sg-autoload-regression.patch # PATCH-FIX-OPENSUSE 0027-udev-fix-sg-autoload-regression.patch
Patch1027: 0027-udev-fix-sg-autoload-regression.patch Patch1027: 0027-udev-fix-sg-autoload-regression.patch
# PATCH-FIX-OPENSUSE fix-devname-prefix.patch fcrozat@suse.com -- fix modules.devname path, it isn't in /usr
Patch1028: fix-devname-prefix.patch
%description %description
Systemd is a system and service manager, compatible with SysV and LSB Systemd is a system and service manager, compatible with SysV and LSB
@ -242,6 +248,9 @@ Summary: Dynamic library to access udev device information
License: LGPL-2.1+ License: LGPL-2.1+
Group: System/Libraries Group: System/Libraries
Requires: %{udevpkgname} >= %{version}-%{release} Requires: %{udevpkgname} >= %{version}-%{release}
%if 0%{?bootstrap}
Conflicts: libudev%{udev_major}
%endif
%description -n lib%{udevpkgname}%{udev_major} %description -n lib%{udevpkgname}%{udev_major}
This package contains the dynamic library libudev, which provides This package contains the dynamic library libudev, which provides
@ -320,6 +329,7 @@ cp %{SOURCE7} m4/
%patch1014 -p1 %patch1014 -p1
%patch1026 -p1 %patch1026 -p1
%patch1027 -p1 %patch1027 -p1
%patch1028 -p1
#systemd #systemd
%patch1 -p1 %patch1 -p1
@ -354,6 +364,8 @@ cp %{SOURCE7} m4/
%patch68 -p1 %patch68 -p1
%patch69 -p1 %patch69 -p1
%patch70 -p1 %patch70 -p1
%patch71 -p1
%patch72 -p1
%build %build
autoreconf -fiv autoreconf -fiv
@ -513,15 +525,15 @@ if [ "$1" -eq 1 ]; then
systemd-readahead-collect.service \ systemd-readahead-collect.service \
systemd-readahead-replay.service \ systemd-readahead-replay.service \
remote-fs.target >/dev/null 2>&1 || : remote-fs.target >/dev/null 2>&1 || :
else fi
%triggerpostun -- systemd < 194
# migrate any symlink which may refer to the old path # migrate any symlink which may refer to the old path
for f in $(find /etc/systemd/system -type l -xtype l); do for f in $(find /etc/systemd/system -type l -xtype l); do
new_target="/usr$(readlink $f)" new_target="/usr$(readlink $f)"
[ -f "$new_target" ] && ln -s -f $new_target $f || : [ -f "$new_target" ] && ln -s -f $new_target $f || :
done done
fi
%postun %postun
/sbin/ldconfig /sbin/ldconfig
if [ $1 -ge 1 ]; then if [ $1 -ge 1 ]; then