From 00e8918e81cef84a5eec3efbc3fae999825bc0509d5f61c14f1af4635b1a5d22 Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Mon, 8 Apr 2024 16:03:29 +0000 Subject: [PATCH 1/5] - systemd.spec: preparation for the next version of systemd (i.e. v256), libkmod will be dlopened hence explicitly require it now as it doesn't hurt with the current version. However don't recommend it from systemd by assuming that when module loading from PID1 is needed, udev is installed. - Make systemd-doc subpackage noarch. OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=1511 --- systemd.changes | 10 ++++++++++ systemd.spec | 4 ++++ 2 files changed, 14 insertions(+) diff --git a/systemd.changes b/systemd.changes index 6d4b7de1..940d335c 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Mon Apr 8 15:45:46 UTC 2024 - Franck Bui + +- systemd.spec: preparation for the next version of systemd (i.e. v256), libkmod + will be dlopened hence explicitly require it now as it doesn't hurt with the + current version. However don't recommend it from systemd by assuming that when + module loading from PID1 is needed, udev is installed. + +- Make systemd-doc subpackage noarch. + ------------------------------------------------------------------- Wed Apr 3 07:03:59 UTC 2024 - Franck Bui diff --git a/systemd.spec b/systemd.spec index 6798adfb..ff47c0c1 100644 --- a/systemd.spec +++ b/systemd.spec @@ -328,7 +328,10 @@ Requires: %{name} = %{version}-%{release} %systemd_requires Requires: filesystem %if %{without bootstrap} +# kmod executable is needed by kmod-static-nodes.service Requires: kmod +# By v256 libkmod will be dlopen()ed. +Requires: libkmod %endif Requires: system-group-hardware Requires: group(kvm) @@ -729,6 +732,7 @@ Have fun (at your own risk). %package doc Summary: Additional documentation or doc formats for systemd License: LGPL-2.1-or-later +BuildArch: noarch %description doc A HTML version of the systemd documentation, plus the manual pages From 183a1defb46ae5197309c54d6f8da27b5f77b6367895667269c41a144552edf8 Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Mon, 22 Apr 2024 09:41:04 +0000 Subject: [PATCH 2/5] - Drop _FORTIFY_SOURCE=2 workaround. Since commit 7929e180aa (v253) it shouldn't be needed anymore. - Force _FORTIFY_SOURCE=2 as systemd (ab)use of malloc_usable_size() leads to build issues with FS=3 (bsc#1200819). OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=1512 --- systemd.changes | 9 +++++++++ systemd.spec | 5 ----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/systemd.changes b/systemd.changes index 940d335c..81184b8d 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Apr 22 09:20:36 UTC 2024 - Franck Bui + +- Drop _FORTIFY_SOURCE=2 workaround. Since commit 7929e180aa (v253) it shouldn't + be needed anymore. + ------------------------------------------------------------------- Mon Apr 8 15:45:46 UTC 2024 - Franck Bui @@ -1236,6 +1242,9 @@ Tue Nov 8 16:33:26 UTC 2022 - Franck Bui For a complete list of changes, visit: https://github.com/openSUSE/systemd/compare/c212388f7de8d22a3f7c22b19553548ccc0cdd15...9cdd78585069b133bebcd479f3a204057ad25d76 +- Force _FORTIFY_SOURCE=2 as systemd (ab)use of malloc_usable_size() leads to + build issues with FS=3 (bsc#1200819). + ------------------------------------------------------------------- Tue Oct 25 07:19:15 UTC 2022 - Franck Bui diff --git a/systemd.spec b/systemd.spec index ff47c0c1..77e32b44 100644 --- a/systemd.spec +++ b/systemd.spec @@ -743,11 +743,6 @@ for the C APIs. %autosetup -p1 -n systemd-v%{version}%{archive_version} %build -# Disable _FORTIFY_SOURCE=3 as it get confused by the use of -# malloc_usable_size() (bsc#1200819). There used to be a workaround but it was -# reverted, see 2cfb790391958ada34284290af1f9ab863a515c7 for the details. -export CFLAGS="%{optflags} -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2" - %meson \ -Dmode=release \ -Dversion-tag=%{version}%{archive_version} \ From ef8e19e17dcc9dbd777b4cf155d5fd02f88a0e2bd5a0d7eba2cc0d22899046ca Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Thu, 25 Apr 2024 08:58:33 +0000 Subject: [PATCH 3/5] - systemd-testsuite: some of the integration tests depend on the bin, daemon, games and nobody users/groups. OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=1513 --- systemd.changes | 6 ++++++ systemd.spec | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/systemd.changes b/systemd.changes index 81184b8d..42fef767 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Apr 25 08:57:30 UTC 2024 - Franck Bui + +- systemd-testsuite: some of the integration tests depend on the bin, daemon, + games and nobody users/groups. + ------------------------------------------------------------------- Mon Apr 22 09:20:36 UTC 2024 - Franck Bui diff --git a/systemd.spec b/systemd.spec index 77e32b44..bff9c475 100644 --- a/systemd.spec +++ b/systemd.spec @@ -616,6 +616,15 @@ Recommends: knot Recommends: selinux-policy-devel Recommends: selinux-policy-targeted %endif +# System users/groups that some tests rely on. +Requires: group(bin) +Requires: group(daemon) +Requires: group(games) +Requires: group(nobody) +Requires: user(bin) +Requires: user(daemon) +Requires: user(games) +Requires: user(nobody) # The following deps on libs are for test-dlopen-so whereas the pkgconfig ones # are used by test-funtions to find the libs on the host and install them in the # image, see install_missing_libraries() for details. From b19ec777384c2239e92600980a3fc9cbd96d251ea585c35b5c8d02fbdfc71852 Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Thu, 25 Apr 2024 09:12:22 +0000 Subject: [PATCH 4/5] - Update 0008-sysv-generator-translate-Required-Start-into-a-Wants.patch to adapt sysv-generator-test to the SUSE's specificity brought by this patch. OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=1514 --- ...ranslate-Required-Start-into-a-Wants.patch | 19 +++++++++++++++++-- systemd.changes | 6 ++++++ 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/0008-sysv-generator-translate-Required-Start-into-a-Wants.patch b/0008-sysv-generator-translate-Required-Start-into-a-Wants.patch index ee4e6154..beb4ffd7 100644 --- a/0008-sysv-generator-translate-Required-Start-into-a-Wants.patch +++ b/0008-sysv-generator-translate-Required-Start-into-a-Wants.patch @@ -1,4 +1,4 @@ -From 2c821a6c31ce3e2af53274b26fc34648933f6574 Mon Sep 17 00:00:00 2001 +From 6eb24d1fcf8ea676bd0f0e32a9afda7431eafd77 Mon Sep 17 00:00:00 2001 From: Thomas Blume Date: Wed, 4 May 2016 17:40:04 +0200 Subject: [PATCH] sysv-generator: translate "Required-Start" into a "Wants" @@ -12,11 +12,13 @@ It's been decided to add back the support in systemd instead of insserv-compat, see the comments in bsc#857204. [tblume: Port of SLES12SP1 patch 0018-Make-LSB-Skripts-know-about-Required-and-Should.patch] +[fbui: patch sysv-generator-test.py to take this SUSE's specifity into account] [wfink: fixes bsc#857204] --- src/sysv-generator/sysv-generator.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) + test/sysv-generator-test.py | 2 +- + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/sysv-generator/sysv-generator.c b/src/sysv-generator/sysv-generator.c index 4485e2e368..e0833a7179 100644 @@ -37,6 +39,19 @@ index 4485e2e368..e0833a7179 100644 if (r < 0) return log_oom(); } +diff --git a/test/sysv-generator-test.py b/test/sysv-generator-test.py +index 24fafbaaa4..827d802a17 100755 +--- a/test/sysv-generator-test.py ++++ b/test/sysv-generator-test.py +@@ -224,7 +224,7 @@ class SysvGeneratorTest(unittest.TestCase): + self.add_sysv('foo', {'Required-Start': '$named $portmap'}) + s = self.run_generator()[1]['foo.service'] + self.assertEqual(set(s.options('Unit')), +- set(['Documentation', 'SourcePath', 'Description', 'After'])) ++ set(['Documentation', 'SourcePath', 'Description', 'After', 'Wants'])) + self.assertEqual(s.get('Unit', 'After').split(), ['nss-lookup.target', 'rpcbind.target']) + + def test_lsb_deps(self): -- 2.35.3 diff --git a/systemd.changes b/systemd.changes index 42fef767..a6511375 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Apr 25 09:08:21 UTC 2024 - Franck Bui + +- Update 0008-sysv-generator-translate-Required-Start-into-a-Wants.patch to + adapt sysv-generator-test to the SUSE's specificity brought by this patch. + ------------------------------------------------------------------- Thu Apr 25 08:57:30 UTC 2024 - Franck Bui From d0e5bcd9228e6c34064f85af728d95140cc4ee38efaefbb93911e305a27ea341 Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Mon, 29 Apr 2024 15:04:06 +0000 Subject: [PATCH 5/5] Accepting request 1170779 from home:lnussel:branches:Base:System libkmod is in the libkmod2 package OBS-URL: https://build.opensuse.org/request/show/1170779 OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=1515 --- systemd.changes | 2 +- systemd.spec | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/systemd.changes b/systemd.changes index a6511375..ec402874 100644 --- a/systemd.changes +++ b/systemd.changes @@ -19,7 +19,7 @@ Mon Apr 22 09:20:36 UTC 2024 - Franck Bui ------------------------------------------------------------------- Mon Apr 8 15:45:46 UTC 2024 - Franck Bui -- systemd.spec: preparation for the next version of systemd (i.e. v256), libkmod +- systemd.spec: preparation for the next version of systemd (i.e. v256), libkmod2 will be dlopened hence explicitly require it now as it doesn't hurt with the current version. However don't recommend it from systemd by assuming that when module loading from PID1 is needed, udev is installed. diff --git a/systemd.spec b/systemd.spec index bff9c475..50d16859 100644 --- a/systemd.spec +++ b/systemd.spec @@ -1,5 +1,5 @@ # -# spec file +# spec file for package systemd # # Copyright (c) 2024 SUSE LLC # @@ -331,7 +331,7 @@ Requires: filesystem # kmod executable is needed by kmod-static-nodes.service Requires: kmod # By v256 libkmod will be dlopen()ed. -Requires: libkmod +Requires: libkmod2 %endif Requires: system-group-hardware Requires: group(kvm) @@ -341,7 +341,7 @@ Requires: group(lp) Requires(pre): group(kvm) Requires(post): sed Requires(post): coreutils -Requires(postun):coreutils +Requires(postun): coreutils # 'regenerate_initrd_post' macro is expanded during build, hence this BR. BuildRequires: suse-module-tools %if %{without bootstrap}