diff --git a/0001-conf-parser-introduce-early-drop-ins.patch b/0001-conf-parser-introduce-early-drop-ins.patch index bcd96141..a63fa0f3 100644 --- a/0001-conf-parser-introduce-early-drop-ins.patch +++ b/0001-conf-parser-introduce-early-drop-ins.patch @@ -1,7 +1,7 @@ -From 079a6f89f9e42517cd14b488320b6302746bcf9b Mon Sep 17 00:00:00 2001 +From a1c88ab7f5e5ad127833168bbb38340d1b582a88 Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Fri, 22 Jan 2021 14:57:08 +0100 -Subject: [PATCH 01/11] conf-parser: introduce 'early' drop-ins +Subject: [PATCH 1/1] conf-parser: introduce 'early' drop-ins MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -61,15 +61,15 @@ drop this feature at any time. Fixes: #2121 --- - src/shared/conf-parser.c | 48 +++++++++-- - src/test/test-conf-parser.c | 154 ++++++++++++++++++++++++++++++++++++ - 2 files changed, 197 insertions(+), 5 deletions(-) + src/shared/conf-parser.c | 54 +++++++++++- + src/test/test-conf-parser.c | 163 ++++++++++++++++++++++++++++++++++++ + 2 files changed, 213 insertions(+), 4 deletions(-) diff --git a/src/shared/conf-parser.c b/src/shared/conf-parser.c -index 1e1967d7ea..eb81732dfa 100644 +index 6bd3ab38db..1722b90ca0 100644 --- a/src/shared/conf-parser.c +++ b/src/shared/conf-parser.c -@@ -464,6 +464,7 @@ static int hashmap_put_stats_by_path(Hashmap **stats_by_path, const char *path, +@@ -478,6 +478,7 @@ static int hashmap_put_stats_by_path(Hashmap **stats_by_path, const char *path, static int config_parse_many_files( const char* const* conf_files, @@ -77,25 +77,32 @@ index 1e1967d7ea..eb81732dfa 100644 char **files, const char *sections, ConfigItemLookup lookup, -@@ -481,6 +482,12 @@ static int config_parse_many_files( - stats_by_path = hashmap_new(&path_hash_ops_free_free); - if (!stats_by_path) +@@ -496,6 +497,20 @@ static int config_parse_many_files( return -ENOMEM; -+ } -+ + } + + STRV_FOREACH(fn, early_files) { + r = config_parse(NULL, *fn, NULL, sections, lookup, table, flags, userdata, &st); + if (r < 0) + return r; - } - ++ if (r == 0) ++ continue; ++ ++ if (ret_stats_by_path) { ++ r = hashmap_put_stats_by_path(&stats_by_path, *fn, &st); ++ if (r < 0) ++ return r; ++ } ++ } ++ /* First read the first found main config file. */ -@@ -521,6 +528,28 @@ static int config_parse_many_files( + STRV_FOREACH(fn, conf_files) { + r = config_parse(NULL, *fn, NULL, sections, lookup, table, flags, userdata, &st); +@@ -534,6 +549,27 @@ static int config_parse_many_files( return 0; } +static int config_parse_split_conf_files(char **files, char ***early_files, char ***late_files) { -+ char **f; + + assert(files); + assert(early_files); @@ -119,7 +126,7 @@ index 1e1967d7ea..eb81732dfa 100644 /* Parse each config file in the directories specified as nulstr. */ int config_parse_many_nulstr( const char *conf_file, -@@ -532,15 +561,19 @@ int config_parse_many_nulstr( +@@ -545,15 +581,19 @@ int config_parse_many_nulstr( void *userdata, Hashmap **ret_stats_by_path) { @@ -142,17 +149,15 @@ index 1e1967d7ea..eb81732dfa 100644 ret_stats_by_path); } -@@ -556,8 +589,8 @@ int config_parse_many( +@@ -590,6 +630,7 @@ int config_parse_many( void *userdata, Hashmap **ret_stats_by_path) { -+ _cleanup_strv_free_ char **files = NULL, **early_files = NULL, **late_files = NULL; - _cleanup_strv_free_ char **dropin_dirs = NULL; -- _cleanup_strv_free_ char **files = NULL; - const char *suffix; ++ _cleanup_strv_free_ char **early_files = NULL, **late_files = NULL; + _cleanup_strv_free_ char **files = NULL; int r; -@@ -570,7 +603,12 @@ int config_parse_many( +@@ -602,7 +643,12 @@ int config_parse_many( if (r < 0) return r; @@ -165,9 +170,9 @@ index 1e1967d7ea..eb81732dfa 100644 + sections, lookup, table, flags, userdata, ret_stats_by_path); } - #define DEFINE_PARSER(type, vartype, conv_func) \ + static int config_get_stats_by_path_one( diff --git a/src/test/test-conf-parser.c b/src/test/test-conf-parser.c -index e61932ab16..de408272f0 100644 +index e61932ab16..5a5c0d73ff 100644 --- a/src/test/test-conf-parser.c +++ b/src/test/test-conf-parser.c @@ -5,6 +5,9 @@ @@ -180,12 +185,11 @@ index e61932ab16..de408272f0 100644 #include "string-util.h" #include "strv.h" #include "tests.h" -@@ -391,4 +394,155 @@ TEST(config_parse) { +@@ -391,4 +394,164 @@ TEST(config_parse) { test_config_parse_one(i, config_file[i]); } +static void setup_conf_files(const char *root, bool is_main, char **conf_files, char ***ret_conf_dirs) { -+ char **path; + + /* If 'is_main' is true then 'conf_files' should only contain an entry + * for the main conf file. */ @@ -264,8 +268,12 @@ index e61932ab16..de408272f0 100644 + NULL, + NULL); + } else { ++ /* sigh... since commit bdb2d3c6889408c7f26c2eeddbe9021ac53f962c, ++ * 'conf_file_dirs' parameter can't be NULL. */ ++ + r = config_parse_many(STRV_MAKE_CONST(conf_file), -+ (const char * const*) conf_dirs, "", ++ (const char * const*)(conf_dirs ?: STRV_MAKE_EMPTY), ++ "", + "Section\0", + config_item_table_lookup, items, + CONFIG_PARSE_WARN, @@ -274,9 +282,15 @@ index e61932ab16..de408272f0 100644 + } + + assert_se(r == 0); -+ assert_se((!name && !parsed_name) || streq(name, parsed_name)); -+ assert_se((!late && !parsed_late) || streq(late, parsed_late)); -+ assert_se((!early && !parsed_early) || streq(early, parsed_early)); ++ ++ assert_se((!!name == !!parsed_name)); ++ assert_se(!name || streq(name, parsed_name)); ++ ++ assert_se((!!late == !!parsed_late)); ++ assert_se(!late || streq(late, parsed_late)); ++ ++ assert_se((!!early == !!parsed_early)); ++ assert_se(!early || streq(early, parsed_early)); + + assert_se(rm_rf(tmp_dir, REMOVE_ROOT|REMOVE_PHYSICAL) == 0); +} @@ -337,5 +351,5 @@ index e61932ab16..de408272f0 100644 + DEFINE_TEST_MAIN(LOG_INFO); -- -2.34.1 +2.35.3 diff --git a/files.devel b/files.devel index c1a2301c..fde7b6f7 100644 --- a/files.devel +++ b/files.devel @@ -87,7 +87,9 @@ %{_mandir}/man3/SD_ID128_NULL.3.gz %{_mandir}/man3/SD_ID128_STRING_MAX.3.gz %{_mandir}/man3/SD_ID128_TO_STRING.3.gz +%{_mandir}/man3/SD_ID128_TO_UUID_STRING.3.gz %{_mandir}/man3/SD_ID128_UUID_FORMAT_STR.3.gz +%{_mandir}/man3/SD_ID128_UUID_STRING_MAX.3.gz %{_mandir}/man3/SD_INFO.3.gz %{_mandir}/man3/SD_JOURNAL_ALL_NAMESPACES.3.gz %{_mandir}/man3/SD_JOURNAL_APPEND.3.gz @@ -112,6 +114,7 @@ %{_mandir}/man3/sd-bus-errors.3.gz %{_mandir}/man3/sd-bus.3.gz %{_mandir}/man3/sd-daemon.3.gz +%{_mandir}/man3/sd-device.3.gz %{_mandir}/man3/sd-event.3.gz %{_mandir}/man3/sd-hwdb.3.gz %{_mandir}/man3/sd-id128.3.gz @@ -423,6 +426,20 @@ %{_mandir}/man3/sd_bus_unref.3.gz %{_mandir}/man3/sd_bus_unrefp.3.gz %{_mandir}/man3/sd_bus_wait.3.gz +%{_mandir}/man3/sd_device_get_devname.3.gz +%{_mandir}/man3/sd_device_get_devnum.3.gz +%{_mandir}/man3/sd_device_get_devpath.3.gz +%{_mandir}/man3/sd_device_get_devtype.3.gz +%{_mandir}/man3/sd_device_get_diskseq.3.gz +%{_mandir}/man3/sd_device_get_driver.3.gz +%{_mandir}/man3/sd_device_get_ifindex.3.gz +%{_mandir}/man3/sd_device_get_subsystem.3.gz +%{_mandir}/man3/sd_device_get_sysname.3.gz +%{_mandir}/man3/sd_device_get_sysnum.3.gz +%{_mandir}/man3/sd_device_get_syspath.3.gz +%{_mandir}/man3/sd_device_ref.3.gz +%{_mandir}/man3/sd_device_unref.3.gz +%{_mandir}/man3/sd_device_unrefp.3.gz %{_mandir}/man3/sd_event.3.gz %{_mandir}/man3/sd_event_add_child.3.gz %{_mandir}/man3/sd_event_add_child_pidfd.3.gz @@ -535,6 +552,7 @@ %{_mandir}/man3/sd_id128_randomize.3.gz %{_mandir}/man3/sd_id128_t.3.gz %{_mandir}/man3/sd_id128_to_string.3.gz +%{_mandir}/man3/sd_id128_to_uuid_string.3.gz %{_mandir}/man3/sd_is_fifo.3.gz %{_mandir}/man3/sd_is_mq.3.gz %{_mandir}/man3/sd_is_socket.3.gz diff --git a/files.network b/files.network index 9e3f698c..d3c3715c 100644 --- a/files.network +++ b/files.network @@ -23,19 +23,24 @@ %{_mandir}/man5/systemd.network.5.gz %{_mandir}/man8/systemd-networkd-wait-online.8.gz %{_mandir}/man8/systemd-networkd-wait-online.service.8.gz +%{_mandir}/man8/systemd-networkd-wait-online@.service.8.gz %{_mandir}/man8/systemd-networkd.8.gz %{_mandir}/man8/systemd-networkd.service.8.gz %{_systemd_util_dir}/network/80-6rd-tunnel.network %{_systemd_util_dir}/network/80-container-host0.network %{_systemd_util_dir}/network/80-container-ve.network %{_systemd_util_dir}/network/80-container-vz.network +%{_systemd_util_dir}/network/80-ethernet.network.example %{_systemd_util_dir}/network/80-vm-vt.network %{_systemd_util_dir}/network/80-wifi-adhoc.network %{_systemd_util_dir}/network/80-wifi-ap.network.example %{_systemd_util_dir}/network/80-wifi-station.network.example %{_systemd_util_dir}/systemd-networkd %{_systemd_util_dir}/systemd-networkd-wait-online +%{_sysusersdir}/systemd-network.conf +%{_tmpfilesdir}/systemd-network.conf %{_unitdir}/systemd-networkd-wait-online.service +%{_unitdir}/systemd-networkd-wait-online@.service %{_unitdir}/systemd-networkd.service %{_unitdir}/systemd-networkd.socket %endif diff --git a/files.systemd b/files.systemd index 8e3481a9..482666b7 100644 --- a/files.systemd +++ b/files.systemd @@ -183,6 +183,7 @@ %{_datadir}/polkit-1/actions/org.freedesktop.login1.policy %{_datadir}/polkit-1/actions/org.freedesktop.systemd1.policy %{_datadir}/polkit-1/actions/org.freedesktop.timedate1.policy +%{_datadir}/polkit-1/actions/org.freedesktop.timesync1.policy %{_datadir}/systemd/kbd-model-map %{_datadir}/systemd/language-fallback-map %if %{without bootstrap} @@ -301,6 +302,7 @@ %{_mandir}/man5/systemd.target.5.gz %{_mandir}/man5/systemd.timer.5.gz %{_mandir}/man5/systemd.unit.5.gz +%{_mandir}/man5/sysupdate.d.5.gz %{_mandir}/man5/sysusers.d.5.gz %{_mandir}/man5/timesyncd.conf.5.gz %{_mandir}/man5/timesyncd.conf.d.5.gz @@ -386,6 +388,11 @@ %{_mandir}/man8/systemd-sysext.8.gz %{_mandir}/man8/systemd-sysext.service.8.gz %{_mandir}/man8/systemd-system-update-generator.8.gz +%{_mandir}/man8/systemd-sysupdate-reboot.service.8.gz +%{_mandir}/man8/systemd-sysupdate-reboot.timer.8.gz +%{_mandir}/man8/systemd-sysupdate.8.gz +%{_mandir}/man8/systemd-sysupdate.service.8.gz +%{_mandir}/man8/systemd-sysupdate.timer.8.gz %{_mandir}/man8/systemd-sysusers.8.gz %{_mandir}/man8/systemd-sysusers.service.8.gz %{_mandir}/man8/systemd-time-wait-sync.8.gz @@ -419,7 +426,8 @@ %{_sysconfdir}/xdg/systemd/user %{_sysctldir}/99-sysctl.conf %{_systemd_user_env_generator_dir}/30-systemd-environment-d-generator -%{_systemd_util_dir}/libsystemd-shared-250.so +%{_systemd_util_dir}/libsystemd-core-251.so +%{_systemd_util_dir}/libsystemd-shared-251.so %{_systemd_util_dir}/ntp-units.d/80-systemd-timesync.list %{_systemd_util_dir}/scripts/migrate-sysconfig-i18n.sh %{_systemd_util_dir}/scripts/upgrade-from-pre-210.sh @@ -444,6 +452,9 @@ %{_systemd_util_dir}/systemd-socket-proxyd %{_systemd_util_dir}/systemd-sulogin-shell %{_systemd_util_dir}/systemd-sysctl +%if %{without bootstrap} +%{_systemd_util_dir}/systemd-sysupdate +%endif %{_systemd_util_dir}/systemd-time-wait-sync %{_systemd_util_dir}/systemd-timedated %{_systemd_util_dir}/systemd-timesyncd @@ -483,11 +494,6 @@ %{_systemdgeneratordir}/systemd-run-generator %{_systemdgeneratordir}/systemd-system-update-generator %{_sysusersdir}/systemd-journal.conf -%if %{with networkd} -# Yes, systemd-network.conf really belongs here, see -# https://github.com/systemd/systemd/pull/22416#issuecomment-1029828592 -%{_sysusersdir}/systemd-network.conf -%endif %{_sysusersdir}/systemd-timesync.conf %{_tmpfilesdir}/journal-nocow.conf %{_tmpfilesdir}/suse.conf @@ -643,6 +649,12 @@ %{_unitdir}/systemd-suspend.service %{_unitdir}/systemd-sysctl.service %{_unitdir}/systemd-sysext.service +%if %{without bootstrap} +%{_unitdir}/systemd-sysupdate-reboot.service +%{_unitdir}/systemd-sysupdate-reboot.timer +%{_unitdir}/systemd-sysupdate.service +%{_unitdir}/systemd-sysupdate.timer +%endif %{_unitdir}/systemd-sysusers.service %{_unitdir}/systemd-time-wait-sync.service %{_unitdir}/systemd-timedated.service diff --git a/files.udev b/files.udev index 5e9aa154..b0034758 100644 --- a/files.udev +++ b/files.udev @@ -1,6 +1,7 @@ # # Please keep the list sorted (with `LC_ALL=C sort`). # +%config(noreplace) %{_sysconfdir}/systemd/pstore.conf %config(noreplace) %{_sysconfdir}/udev/udev.conf %if %{without bootstrap} # %%dir %{_libdir}/cryptsetup @@ -40,6 +41,8 @@ %{_mandir}/man5/crypttab.5.gz %{_mandir}/man5/integritytab.5.gz %{_mandir}/man5/modules-load.d.5.gz +%{_mandir}/man5/pstore.conf.5.gz +%{_mandir}/man5/pstore.conf.d.5.gz %{_mandir}/man5/udev.conf.5.gz %{_mandir}/man5/veritytab.5.gz %{_mandir}/man7/hwdb.7.gz @@ -63,6 +66,8 @@ %{_mandir}/man8/systemd-modules-load.service.8.gz %{_mandir}/man8/systemd-network-generator.8.gz %{_mandir}/man8/systemd-network-generator.service.8.gz +%{_mandir}/man8/systemd-pstore.8.gz +%{_mandir}/man8/systemd-pstore.service.8.gz %{_mandir}/man8/systemd-rfkill.8.gz %{_mandir}/man8/systemd-rfkill.service.8.gz %{_mandir}/man8/systemd-rfkill.socket.8.gz @@ -104,6 +109,7 @@ %{_systemd_util_dir}/systemd-modules-load %endif %{_systemd_util_dir}/systemd-network-generator +%{_systemd_util_dir}/systemd-pstore %{_systemd_util_dir}/systemd-rfkill %{_systemd_util_dir}/systemd-udevd %if %{without bootstrap} @@ -120,6 +126,7 @@ %{_systemdgeneratordir}/systemd-veritysetup-generator %endif %{_tmpfilesdir}/static-nodes-permissions.conf +%{_tmpfilesdir}/systemd-pstore.conf %{_udevhwdbdir}/20-OUI.hwdb %{_udevhwdbdir}/20-acpi-vendor.hwdb %{_udevhwdbdir}/20-bluetooth-vendor-product.hwdb @@ -145,6 +152,7 @@ %{_udevhwdbdir}/70-cameras.hwdb %{_udevhwdbdir}/70-joystick.hwdb %{_udevhwdbdir}/70-mouse.hwdb +%{_udevhwdbdir}/70-pda.hwdb %{_udevhwdbdir}/70-pointingstick.hwdb %{_udevhwdbdir}/70-touchpad.hwdb %{_udevhwdbdir}/80-ieee1394-unit-function.hwdb @@ -220,6 +228,7 @@ %{_unitdir}/systemd-modules-load.service %endif %{_unitdir}/systemd-network-generator.service +%{_unitdir}/systemd-pstore.service %{_unitdir}/systemd-rfkill.service %{_unitdir}/systemd-rfkill.socket %{_unitdir}/systemd-tmpfiles-setup-dev.service diff --git a/files.uefi-boot b/files.uefi-boot index 70e46b69..a50867c4 100644 --- a/files.uefi-boot +++ b/files.uefi-boot @@ -19,6 +19,7 @@ %{_mandir}/man7/linuxia32.efi.stub.7.gz %{_mandir}/man7/linuxx64.efi.stub.7.gz %{_mandir}/man7/sd-boot.7.gz +%{_mandir}/man7/sd-stub.7.gz %{_mandir}/man7/systemd-boot.7.gz %{_mandir}/man7/systemd-stub.7.gz %{_mandir}/man8/kernel-install.8.gz diff --git a/systemd-rpmlintrc b/systemd-rpmlintrc index d381b82f..717dd254 100644 --- a/systemd-rpmlintrc +++ b/systemd-rpmlintrc @@ -11,4 +11,4 @@ addFilter(".*explicit-lib-dependency .*") addFilter(".*tmpfile-not-in-filelist .*") # shlib policy does not cover multibuilds -addFilter("libsystemd0-mini.x86_64: E: shlib-policy-name-error SONAME: libsystemd.so.0.*") +addFilter("libsystemd0-mini\..*: E: shlib-policy-name-error SONAME: libsystemd.so.0.*") diff --git a/systemd-v250.6+suse.58.g4dbc543953.tar.xz b/systemd-v250.6+suse.58.g4dbc543953.tar.xz deleted file mode 100644 index 8d9d9222..00000000 --- a/systemd-v250.6+suse.58.g4dbc543953.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7c00bf0607ca3a8ad8d001808741277c600db2c446bb58ce347e445dec2ff20e -size 7677168 diff --git a/systemd-v251.2+suse.21.ge9fc337d97.tar.xz b/systemd-v251.2+suse.21.ge9fc337d97.tar.xz new file mode 100644 index 00000000..9edde956 --- /dev/null +++ b/systemd-v251.2+suse.21.ge9fc337d97.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6b345714da705a4dd420ae4ebec9192b009d5d00c0186b7300894f961d3495c +size 7827816 diff --git a/systemd.changes b/systemd.changes index ba9c7421..25f7c3d3 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,50 @@ +------------------------------------------------------------------- +Tue Jun 21 14:09:51 UTC 2022 - Franck Bui + +- pstore is no more considered as an experimental feature: move it to udev + package (bsc#1197802) + +------------------------------------------------------------------- +Tue Jun 21 13:20:39 UTC 2022 - Franck Bui + +- Adjust rpmlintrc for shlib-policy-name-error/multibuild case so that it's not + only for x86_64. + +------------------------------------------------------------------- +Tue Jun 21 13:15:12 UTC 2022 - Franck Bui + +- spec: %suse_version rpm macro is already reserved and has a special meaning in + openSUSE distros so rename it to %archive_version instead. + +------------------------------------------------------------------- +Wed Jun 8 10:11:12 UTC 2022 - Franck Bui + +- Import commit e9fc337d97539fcab23078ab3e06f6b2ce3a3c8d + + ca0b29521f sha256: fix compilation on efi-ia32 + 1bbbac6a7e test: enable virtio-rng device for QEMU guests + +------------------------------------------------------------------- +Wed Jun 1 07:20:05 UTC 2022 - Franck Bui + +- Upgrade to v251.2 (commit 949d6bb7201dd48167ee9716ed6278764d1f4c0f) + + See https://github.com/openSUSE/systemd/blob/SUSE/v251/NEWS for + details. + + This includes the following bug fixes: + + - upstream commit e6b169418369abbc88c8f622e02e1d704a23d4ef (bsc#1137373 bsc#1181658 bsc#1194708 bsc#1195157 bsc#1197570) + + * Rebased 0001-conf-parser-introduce-early-drop-ins.patch + + * systemd-testsuite now requires python3-pexpect due to TEST-69-SHUTDOWN + relying on this module. + + * sysusers.d/systemd-network.conf has been moved to systemd-network + sub-package since the tmpfiles configuration snippets for networkd has also + been moved to this sub-package. + ------------------------------------------------------------------- Tue May 31 13:26:38 UTC 2022 - Franck Bui @@ -26,6 +73,11 @@ Fri Apr 29 12:37:00 UTC 2022 - Franck Bui It's a backport of upstream commit 1000522a60ceade446773c67031b47a566d4a70d. +------------------------------------------------------------------- +Wed Apr 20 08:25:27 UTC 2022 - Ludwig Nussel + +- spec: add sbat (boo#1198589) + ------------------------------------------------------------------- Wed Apr 20 07:59:23 UTC 2022 - Ludwig Nussel @@ -1065,6 +1117,7 @@ Mon Apr 26 16:25:38 UTC 2021 - Franck Bui - upstream commit 4327574fc1093513badc2177f71cede2fc88c13c (bsc#1166028) - upstream commit 3573e032f26724949e86626eace058d006b8bf70 (bsc#1186411) + - upstream commit 30927a24848c4d727f7619cc74b878f098cdd724 (bsc#1200170) - A couple runtime dependencies on libraries are now tracked manually (with Recommends:) due to the fact that some symbols of diff --git a/systemd.spec b/systemd.spec index e7d0df84..cfd91bc8 100644 --- a/systemd.spec +++ b/systemd.spec @@ -19,7 +19,7 @@ %global flavor @BUILD_FLAVOR@%{nil} %define min_kernel_version 4.5 -%define suse_version +suse.58.g4dbc543953 +%define archive_version +suse.21.ge9fc337d97 %define _testsuitedir /usr/lib/systemd/tests %define xinitconfdir %{?_distconfdir}%{!?_distconfdir:%{_sysconfdir}}/X11/xinit @@ -72,7 +72,7 @@ Name: systemd%{?mini} URL: http://www.freedesktop.org/wiki/Software/systemd -Version: 250.6 +Version: 251.2 Release: 0 Summary: A System and Session Manager License: LGPL-2.1-or-later @@ -156,7 +156,7 @@ Provides: systemd-analyze = %{version}-%{release} Obsoletes: pm-utils <= 1.4.1 Obsoletes: suspend <= 1.0 Obsoletes: systemd-analyze < 201 -Source0: systemd-v%{version}%{suse_version}.tar.xz +Source0: systemd-v%{version}%{archive_version}.tar.xz Source1: systemd-rpmlintrc Source2: systemd-user %if %{with sysvcompat} @@ -547,6 +547,7 @@ Requires: libtss2-rc0 Requires: lz4 Requires: make Requires: netcat +Requires: python3-pexpect Requires: qemu-kvm Requires: quota Requires: socat @@ -627,7 +628,7 @@ Components that turn out to be stable and considered as fully supported will be merged into the main package or moved into a dedicated package. -The package contains: homed, pstore, repart, userdbd. +The package contains: homed, repart, userdbd. Have fun with these services at your own risk. %endif @@ -637,12 +638,12 @@ Have fun with these services at your own risk. %endif %prep -%autosetup -p1 -n systemd-v%{version}%{suse_version} +%autosetup -p1 -n systemd-v%{version}%{archive_version} %build %meson \ -Dmode=release \ - -Dversion-tag=%{version}%{suse_version} \ + -Dversion-tag=%{version}%{archive_version} \ -Ddocdir=%{_docdir}/systemd \ %if %{with split_usr} -Drootprefix=/usr \ @@ -680,6 +681,8 @@ Have fun with these services at your own risk. -Doomd=false \ -Dsmack=false \ \ + -Dpstore=true \ + \ -Dapparmor=%{when_not bootstrap} \ -Defi=%{when_not bootstrap} \ -Delfutils=%{when_not bootstrap} \ @@ -689,6 +692,7 @@ Have fun with these services at your own risk. -Dnss-systemd=%{when_not bootstrap} \ -Dseccomp=%{when_not bootstrap} \ -Dselinux=%{when_not bootstrap} \ + -Dsysupdate=%{when_not bootstrap} \ -Dtpm=%{when_not bootstrap} \ -Dtpm2=%{when_not bootstrap} \ -Dtranslations=%{when_not bootstrap} \ @@ -702,7 +706,13 @@ Have fun with these services at your own risk. \ -Dgnu-efi=%{when sd_boot} \ -Dkernel-install=%{when sd_boot} \ - -Dsbat-distro= \ + \ + -Dsbat-distro="%{?sbat_distro}" \ + -Dsbat-distro-summary="%{?sbat_distro_summary}" \ + -Dsbat-distro-url="%{?sbat_distro_url}" \ + \ + -Dsbat-distro-pkgname="%{name}" \ + -Dsbat-distro-version="%{version}-%{release}" \ \ -Ddefault-dnssec=no \ -Ddns-servers='' \ @@ -710,7 +720,6 @@ Have fun with these services at your own risk. -Dresolve=%{when resolved} \ \ -Dhomed=%{when experimental} \ - -Dpstore=%{when experimental} \ -Drepart=%{when experimental} \ -Duserdb=%{when experimental} \ \ @@ -975,7 +984,6 @@ pam-config --add --systemd || : # in %%post. However this shouldn't be an issue since all files the # main package ships are owned by root. %sysusers_create systemd-journal.conf -%sysusers_create systemd-network.conf %sysusers_create systemd-timesync.conf [ -e %{_localstatedir}/lib/random-seed ] && mv %{_localstatedir}/lib/random-seed %{_localstatedir}/lib/systemd/ || : @@ -1000,8 +1008,8 @@ systemctl daemon-reexec || : # systemctl kill --kill-who=main --signal=SIGRTMIN+25 "user@*.service" || : if [ "$1" -eq 1 ]; then - # Persistent journal is the default - mkdir -p %{_localstatedir}/log/journal + # Persistent journal is the default + mkdir -p %{_localstatedir}/log/journal fi %journal_catalog_update @@ -1075,19 +1083,25 @@ fi # Avoid restarting logind until fixed upstream (issue #1163) %pre -n udev%{?mini} +%systemd_pre remote-cryptsetup.target +%systemd_pre systemd-pstore.service + # New installations uses the last compat symlink generation number # (currently at 2), which basically disables all compat symlinks. On # old systems, the file doesn't exist. This is equivalent to # generation #1, which enables the creation of all compat symlinks. if [ $1 -eq 1 ]; then - echo "COMPAT_SYMLINK_GENERATION=2" >/usr/lib/udev/compat-symlink-generation + echo "COMPAT_SYMLINK_GENERATION=2" >/usr/lib/udev/compat-symlink-generation fi %post -n udev%{?mini} %regenerate_initrd_post %udev_hwdb_update +%tmpfiles_create systemd-pstore.conf + %systemd_post remote-cryptsetup.target +%systemd_post systemd-pstore.service # add KERNEL name match to existing persistent net rules sed -ri '/KERNEL/ ! { s/NAME="(eth|wlan|ath)([0-9]+)"/KERNEL=="\1*", NAME="\1\2"/}' \ @@ -1097,6 +1111,10 @@ sed -ri '/KERNEL/ ! { s/NAME="(eth|wlan|ath)([0-9]+)"/KERNEL=="\1*", NAME="\1\2" rm -f /etc/sysconfig/udev rm -f /etc/udev/rules.d/{20,55,65}-cdrom.rules +%preun -n udev%{?mini} +%systemd_preun systemd-udevd.service systemd-udevd-{control,kernel}.socket +%systemd_preun systemd-pstore.service + %postun -n udev%{?mini} %regenerate_initrd_post @@ -1113,7 +1131,8 @@ rm -f /etc/udev/rules.d/{20,55,65}-cdrom.rules # Note that when systemd-udevd is restarted, there will always be a short time # frame where no socket will be listening to the events sent by the kernel, no # matter if the socket unit is restarted in first or not. -%service_del_postun_with_restart systemd-udevd.service systemd-udevd-{control,kernel}.socket +%systemd_postun_with_restart systemd-udevd.service systemd-udevd-{control,kernel}.socket +%systemd_postun systemd-pstore.service %posttrans -n udev%{?mini} %regenerate_initrd_posttrans @@ -1197,6 +1216,8 @@ fi %post network %if %{with networkd} +%sysusers_create systemd-network.conf +%tmpfiles_create systemd-network.conf %service_add_post systemd-networkd.service %service_add_post systemd-networkd-wait-online.service %endif @@ -1243,23 +1264,18 @@ fi %if %{with experimental} %pre experimental -%service_add_pre systemd-pstore.service %service_add_pre systemd-userdbd.service systemd-userdbd.socket %service_add_pre systemd-homed.service %post experimental -%tmpfiles_create systemd-pstore.conf -%service_add_post systemd-pstore.service %service_add_post systemd-userdbd.service systemd-userdbd.socket %service_add_post systemd-homed.service %preun experimental -%service_del_preun systemd-pstore.service %service_del_preun systemd-userdbd.service systemd-userdbd.socket %service_del_preun systemd-homed.service %postun experimental -%service_del_postun systemd-pstore.service %service_del_postun systemd-userdbd.service systemd-userdbd.socket %service_del_postun systemd-homed.service %endif @@ -1302,13 +1318,13 @@ fi %defattr(-,root,root) %license LICENSE.LGPL2.1 %{_libdir}/libsystemd.so.0 -%{_libdir}/libsystemd.so.0.33.0 +%{_libdir}/libsystemd.so.0.34.0 %files -n libudev%{?mini}1 %defattr(-,root,root) %license LICENSE.LGPL2.1 %{_libdir}/libudev.so.1 -%{_libdir}/libudev.so.1.7.3 +%{_libdir}/libudev.so.1.7.4 %if %{with coredump} %files coredump @@ -1393,11 +1409,6 @@ fi %if %{with experimental} %files experimental %defattr(-,root,root) -%config(noreplace) %{_sysconfdir}/systemd/pstore.conf -%{_prefix}/lib/systemd/systemd-pstore -%{_unitdir}/systemd-pstore.service -%{_tmpfilesdir}/systemd-pstore.conf -%{_mandir}/man*/*pstore* %{_bindir}/systemd-repart %{_unitdir}/systemd-repart.service %{_mandir}/man*/*repart*