Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package systemd for openSUSE:Factory checked in at 2021-07-01 07:05:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
and /work/SRC/openSUSE:Factory/.systemd.new.2625 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd"
Thu Jul 1 07:05:27 2021 rev:330 rq:902866 version:248.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes 2021-06-04 00:33:08.388871352 +0200
+++ /work/SRC/openSUSE:Factory/.systemd.new.2625/systemd-mini.changes 2021-07-01 07:05:31.787526132 +0200
@@ -1,0 +2,168 @@
+Mon Jun 28 16:45:04 UTC 2021 - Franck Bui
+
+- Import commit e9a23d9e064c2e7ac21a1b984d116bcf15327e63
+
+ 8dd19c6ee3 sd-device: allow to read sysattr which contains embedded NUL
+ d52409e5fe pid1: only add a Wants= type dependency on /tmp when PrivateTmp=yes (bsc#1181970
+
+-------------------------------------------------------------------
+Thu Jun 24 13:39:30 UTC 2021 - Franck Bui
+
+- Import commit fcdb8dce591db2f5fc3c1e3eeb7abe9a2090b401
+
+ aa2d840a3b compat-rules: fix warning: "label ���out��� defined but not used" in path_id_compat.c
+
+- Restore 61-persistent-storage-compat.rules that was mistakenly
+ dropped during the merge of v248.
+
+-------------------------------------------------------------------
+Fri Jun 18 12:53:34 UTC 2021 - Franck Bui
+
+- Create /run/lock/subsys again (bsc#1187292)
+
+ The creation of this directory was mistakenly dropped when
+ 'filesystem' package took the initialization of the generic paths
+ over.
+
+ Paths under /run/lock are still managed by systemd for lack of
+ better place.
+
+-------------------------------------------------------------------
+Fri Jun 4 13:10:30 UTC 2021 - Franck Bui
+
+- Drop systemd's dependency on udev (jsc#PM-2677)
+
+ In some environments (i.e. containers) udev is usually not necessary
+ but pulls in unnecessary packages.
+
+-------------------------------------------------------------------
+Fri Jun 4 07:32:16 UTC 2021 - Franck Bui
+
+- Now that chkconfig/insserv are history, let's implement the strict
+ minimum in systemd-sysv-install to enable/disable SysV init scripts
+ (bsc#1186595 bsc#1186359)
+
+ Indeed there's no much point in dropping SysV support completely
+ until upstream will do especially since 3rd party applications such
+ as vmware still rely on it, see bsc#1186359).
+
+-------------------------------------------------------------------
+Tue May 25 16:30:40 UTC 2021 - Franck Bui
+
+- Allow the sysusers config files shipped by systemd rpms to be
+ overriden during system installation (bsc#1171962)
+
+- While at it, add a comment to explain why we don't use
+ %sysusers_create in %pre and why it should be safe in %post.
+
+-------------------------------------------------------------------
+Thu May 20 20:19:27 UTC 2021 - Franck Bui
+
+- udev requires systemd in its %post (bsc#1185958)
+
+ udevadm, called in udev's %post, requires libsystemd-shared-248.so.
+
+-------------------------------------------------------------------
+Thu May 20 18:52:53 UTC 2021 - Franck Bui
+
+- Restore all "License:" tags
+
+ udev uses a different license (GPL-2.0-only) than the main package
+ and "osc service localrun format_spec_file" has the good taste to
+ restore the license tags for all other subpackages if one of the
+ subpackage tag differs.
+
+-------------------------------------------------------------------
+Thu May 20 15:47:38 UTC 2021 - Franck Bui
+
+- Expect 644 permissions for /usr/lib/udev/compat-symlink-generation (bsc#1185807)
+
+-------------------------------------------------------------------
+Wed May 19 06:54:57 UTC 2021 - Franck Bui
+
+- Spec file minor cleanups:
+
+ - Drop all "Group:" tags as they are deprecated.
+
+ - Drop "License:" tags from all subpackages and make it inherited
+ from the main package.
+
+ - Drop "%bcond_with parentpathid" as it's not used.
+
+-------------------------------------------------------------------
+Tue May 18 18:31:20 UTC 2021 - Franck Bui
+
+- Introduce subpackage systemd-tests
+
+ This subpackage is mainly used before submitting a new version of
+ the systemd packages. As such it's not intended for regular users
+ hence can be removed/renamed at any time. One might wonder why the
+ unit tests are not executed during package builds (%check)... the
+ reason is that the environment used to build package (chroot) is too
+ limited and therefore only a subset of the unit tests would be
+ executed in this environment.
+
+ To disable the build of the subpackage, use "--without=tests".
+
+-------------------------------------------------------------------
+Tue May 18 10:04:16 UTC 2021 - Franck Bui
+
+- Add 0001-Revert-core-prevent-excessive-proc-self-mountinfo-pa.patch
+
+ A temporary patch until
+ https://github.com/systemd/systemd/issues/19464 is solved.
+
+-------------------------------------------------------------------
+Tue May 18 08:19:57 UTC 2021 - Franck Bui
+
+- Import commit bc08011f04ac4f12569ec05965149f665a0b110b (merge of v248.3)
+
+ For a complete list of changes, visit:
+ https://github.com/openSUSE/systemd/compare/6f5c11b28f5739b901390f22c2bf4c00...
+
+-------------------------------------------------------------------
+Mon May 10 13:12:56 UTC 2021 - Franck Bui
+
+- Import commit 6f5c11b28f5739b901390f22c2bf4c003cadedaa (merge of v248.2)
+
+ For a complete list of changes, visit:
+ https://github.com/openSUSE/systemd/compare/e5f93c9d2e9e26dd0dff430c4c072a54...
+
+-------------------------------------------------------------------
+Mon Apr 26 16:25:38 UTC 2021 - Franck Bui
+
+- Upgrade to v248 (commit 5d3d934a5c2f4593207497db94e6f313348e89e7)
+
+ See https://github.com/openSUSE/systemd/blob/SUSE/v248/NEWS for
+ details.
+
+ - A couple runtime dependencies on libraries are now tracked
+ manually (with Recommends:) due to the fact that some symbols of
+ these libs are dynamically loaded with dlopen() (heck!)
+
+ - oomd is left disablde for now
+
+ - pam configuration file 'systemd-user' is now shipped in
+ /usr/etc/pam.d
+
+ - Rebased 0001-conf-parser-introduce-early-drop-ins.patch
+ 0003-strip-the-domain-part-from-etc-hostname-when-setting.patch
+ 0006-sysv-generator-add-back-support-for-SysV-scripts-for.patch
+
+ - Dropped 0004-tmpfiles-support-exclude-statements-based-on-file-ow.patch
+ as it is SLE specific.
+
+- Clean systemd-experimental up:
+
+ - Enclose "%package/%descriptoin experimental" within a "%if
+ %experimental/%endif" block condition
+
+ - List the build requirements in the sub-package instead of listing
+ them in the main package.
+
+ - Enable support for fido2, pwquality and qrencode in the home
+ stuff
+
+ - Improve the package description
+
+-------------------------------------------------------------------
systemd.changes: same change
Old:
----
0004-tmpfiles-support-exclude-statements-based-on-file-ow.patch
systemd-v246.13+suse.105.g14581e0120.tar.xz
New:
----
0001-Revert-core-prevent-excessive-proc-self-mountinfo-pa.patch
systemd-v248.3+suse.30.ge9a23d9e06.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ systemd-mini.spec ++++++
--- /var/tmp/diff_new_pack.ku8fIG/_old 2021-07-01 07:05:32.887517539 +0200
+++ /var/tmp/diff_new_pack.ku8fIG/_new 2021-07-01 07:05:32.891517508 +0200
@@ -26,7 +26,7 @@
##### WARNING: please do not edit this auto generated spec file. Use the systemd.spec! #####
%define mini -mini
%define min_kernel_version 4.5
-%define suse_version +suse.105.g14581e0120
+%define suse_version +suse.30.ge9a23d9e06
%bcond_with gnuefi
%if 0%{?bootstrap}
@@ -39,6 +39,7 @@
%bcond_with resolved
%bcond_with sysvcompat
%bcond_with experimental
+%bcond_with tests
%else
%bcond_without coredump
%ifarch %{ix86} x86_64
@@ -52,16 +53,15 @@
%bcond_without resolved
%bcond_without sysvcompat
%bcond_without experimental
+%bcond_without tests
%endif
-%bcond_with parentpathid
Name: systemd-mini
URL: http://www.freedesktop.org/wiki/Software/systemd
-Version: 246.13
+Version: 248.3
Release: 0
Summary: A System and Session Manager
License: LGPL-2.1-or-later
-Group: System/Base
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if ! 0%{?bootstrap}
BuildRequires: docbook-xsl-stylesheets
@@ -76,6 +76,7 @@
BuildRequires: pkgconfig(audit)
BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0
BuildRequires: pkgconfig(libdw)
+BuildRequires: pkgconfig(libfido2)
BuildRequires: pkgconfig(liblz4)
BuildRequires: pkgconfig(liblzma)
BuildRequires: pkgconfig(libpcre2-8)
@@ -113,10 +114,6 @@
%if %{with gnuefi}
BuildRequires: gnu-efi
%endif
-%if %{with experimental}
-BuildRequires: pkgconfig(fdisk)
-BuildRequires: pkgconfig(openssl)
-%endif
%if 0%{?bootstrap}
#!BuildIgnore: dbus-1
@@ -128,13 +125,15 @@
Requires: aaa_base >= 13.2
Requires: dbus-1 >= 1.4.0
Requires: kbd
-Requires: kmod >= 15
Requires: netcfg >= 11.5
Requires: systemd-default-settings-branding
Requires: systemd-presets-branding
-Requires: udev = %{version}-%{release}
Requires: util-linux >= 2.27.1
Requires: group(lock)
+# This Recommends because some symbols of libpcre2 are dlopen()ed by journalctl
+Recommends: libpcre2-8-0
+# ditto but dlopen()ed by systemd-cryptenroll
+Recommends: libfido2
Requires(post): coreutils
Requires(post): findutils
Requires(post): systemd-presets-branding
@@ -175,7 +174,6 @@
Patch1: 0001-restore-var-run-and-var-lock-bind-mount-if-they-aren.patch
Patch2: 0002-rc-local-fix-ordering-startup-for-etc-init.d-boot.lo.patch
Patch3: 0003-strip-the-domain-part-from-etc-hostname-when-setting.patch
-Patch4: 0004-tmpfiles-support-exclude-statements-based-on-file-ow.patch
Patch5: 0005-udev-create-default-symlinks-for-primary-cd_dvd-driv.patch
Patch6: 0006-sysv-generator-add-back-support-for-SysV-scripts-for.patch
Patch7: 0007-networkd-make-network.service-an-alias-of-systemd-ne.patch
@@ -191,6 +189,7 @@
# upstream and need an urgent fix. Even in this case, the patches are
# temporary and should be removed as soon as a fix is merged by
# upstream.
+Patch100: 0001-Revert-core-prevent-excessive-proc-self-mountinfo-pa.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@@ -206,7 +205,6 @@
%package doc
Summary: HTML documentation for systemd
License: LGPL-2.1-or-later
-Group: Documentation/Other
Supplements: (systemd and patterns-base-documentation)
%description doc
@@ -218,7 +216,6 @@
%package devel
Summary: Development headers for systemd
License: LGPL-2.1-or-later
-Group: Development/Libraries/C and C++
Requires: libsystemd0%{?mini} = %{version}-%{release}
Requires: systemd-rpm-macros
%if 0%{?bootstrap}
@@ -231,7 +228,6 @@
%package sysvinit
Summary: System V init tools
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
Provides: sbin_init
Conflicts: otherproviders(sbin_init)
@@ -244,7 +240,6 @@
%package -n libsystemd0%{?mini}
Summary: Component library for systemd
License: LGPL-2.1-or-later
-Group: System/Libraries
%if 0%{?bootstrap}
Conflicts: libsystemd0
Requires: this-is-only-for-build-envs
@@ -274,14 +269,14 @@
%package -n udev%{?mini}
Summary: A rule-based device node and kernel event manager
License: GPL-2.0-only
-Group: System/Kernel
URL: http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
+Requires: kmod
Requires: system-group-hardware
Requires: group(kvm)
Requires(post): sed
Requires(post): coreutils
Requires(postun): coreutils
-Requires(postun): /usr/bin/systemctl
+%systemd_requires
Conflicts: filesystem < 11.5
Conflicts: mkinitrd < 2.7.0
@@ -307,7 +302,6 @@
%package -n libudev%{?mini}1
Summary: Dynamic library to access udev device information
License: LGPL-2.1-or-later
-Group: System/Libraries
%if 0%{?bootstrap}
Conflicts: libudev1
Conflicts: kiwi
@@ -322,7 +316,6 @@
%package -n libudev%{?mini}-devel
Summary: Development files for libudev
License: LGPL-2.1-or-later
-Group: Development/Libraries/Other
Requires: libudev%{?mini}1 = %{version}-%{release}
%if 0%{?bootstrap}
Provides: libudev-devel = %{version}-%{version}
@@ -338,7 +331,6 @@
%package coredump
Summary: Systemd tools for coredump management
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
Provides: systemd:%{_bindir}/coredumpctl
@@ -352,7 +344,6 @@
%package container
Summary: Systemd tools for container management
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
Provides: systemd:%{_bindir}/systemd-nspawn
@@ -370,8 +361,9 @@
%package network
Summary: Systemd tools for networkd and resolved
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
+# This Recommends because some symbols of libidn2 are dlopen()ed by resolved
+Recommends: pkgconfig(libidn2)
BuildRequires: pkgconfig(libidn2)
Provides: systemd:/usr/lib/systemd/systemd-networkd
Provides: systemd:/usr/lib/systemd/systemd-resolved
@@ -387,7 +379,6 @@
%package portable
Summary: Systemd tools for portable services
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
@@ -407,7 +398,6 @@
%package logger
Summary: Journal only logging
License: LGPL-2.1-or-later
-Group: System/Base
Provides: syslog
Provides: sysvinit(syslog)
Requires(post): /usr/bin/systemctl
@@ -419,7 +409,6 @@
%package -n nss-systemd
Summary: Plugin for local virtual host name resolution
License: LGPL-2.1-or-later
-Group: System/Libraries
%description -n nss-systemd
This package contains a plugin for the Name Service Switch (NSS),
@@ -432,7 +421,6 @@
%package -n nss-myhostname
Summary: Plugin for local system host name resolution
License: LGPL-2.1-or-later
-Group: System/Libraries
%description -n nss-myhostname
This package contains a plug-in module for the Name Service Switch
@@ -449,7 +437,6 @@
%package -n nss-resolve
Summary: Plugin for local hostname resolution via systemd-resolved
License: LGPL-2.1-or-later
-Group: System/Libraries
Requires: %{name}-network = %{version}-%{release}
%description -n nss-resolve
@@ -466,7 +453,6 @@
%package -n nss-mymachines
Summary: Plugin for local virtual host name resolution
License: LGPL-2.1-or-later
-Group: System/Libraries
%description -n nss-mymachines
This package contains a plugin for the Name Service Switch (NSS),
@@ -483,11 +469,8 @@
%package journal-remote
Summary: Gateway for serving journal events over the network using HTTP
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
-Requires(post): systemd
-Requires(preun): systemd
-Requires(postun): systemd
+%systemd_requires
%description journal-remote
This extends the journal functionality to keep a copy of logs on a
@@ -499,23 +482,61 @@
systemd-journal-remote, and systemd-journal-upload.
%endif
+%if %{with tests}
+%package tests
+Summary: Unit tests for systemd
+License: LGPL-2.1-or-later
+Requires: %{name} = %{version}-%{release}
+Recommends: python3
+Recommends: python3-colorama
+# Optional dep for mkfs.vfat needed by test-loop-block (otherwise skipped)
+Recommends: dosfstools
+
+%description tests
+This package contains the unit tests used to check various internal
+functions used by systemd and all its components.
+
+The python script /usr/lib/systemd/tests/run-unit-tests.py can be used
+to run all unit tests at once.
+%endif
+
+%if %{with experimental}
%package experimental
Summary: Experimental systemd features
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
+# These Recommends because some symbols of these libs are dlopen()ed by home stuff
+Recommends: libfido2
+Recommends: libpwquality1
+Recommends: libqrencode4
+# libfido2, libpwquality1 and libqrencode4 are build requirements for home stuff
+BuildRequires: pkgconfig(libfido2)
+BuildRequires: pkgconfig(libqrencode)
+BuildRequires: pkgconfig(pwquality)
+# fdisk and openssl are build requirements for home stuff and repart
+BuildRequires: pkgconfig(fdisk)
+BuildRequires: pkgconfig(openssl)
%systemd_requires
%description experimental
-This package contains optional extra systemd services that are
-considered a preview feature. Behaviour details and option names are
-subject to change without the usual backwards-compatibility promises.
-
-Components that turn out to be stable may be merged into the main or a
-dedicated package later.
+This package contains optional extra services that are considered as
+previews and are provided so users can do early experiments with the
+new features or technologies without waiting for them to be fully
+supported by either upstream and openSUSE.
+
+Please note that all services should be considered in development
+phase and as such their behaviors details, unit files, option names,
+etc... are subject to change without the usual backwards-compatibility
+promises.
+
+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.
-Use at your own risk.
+The package contains: homed, pstore, repart, userdbd.
+Have fun with these services at your own risk.
+%endif
%if ! 0%{?bootstrap}
%lang_package
@@ -528,6 +549,7 @@
%build
# keep split-usr until all packages have moved their systemd rules to /usr
%meson \
+ -Dmode=release \
-Dversion-tag=%{version}%{suse_version} \
-Ddocdir=%{_docdir}/systemd \
-Drootprefix=/usr \
@@ -535,6 +557,7 @@
-Dsplit-bin=true \
-Dsystem-uid-max=499 \
-Dsystem-gid-max=499 \
+ -Dpamconfdir=%{_distconfdir}/pam.d \
-Dpamlibdir=%{_pamdir} \
-Dxinitrcdir=%{_distconfdir}/X11/xinit/xinitrc.d \
-Drpmmacrosdir=no \
@@ -550,6 +573,7 @@
-Dsmack=false \
-Dima=false \
-Delfutils=auto \
+ -Doomd=false \
%if %{with experimental}
-Dpstore=true \
-Drepart=true \
@@ -562,16 +586,11 @@
-Duserdb=false \
%endif
%if 0%{?bootstrap}
- -Dfdisk=false \
- -Dpwquality=false \
- -Dp11kit=false \
+ -Dnss-myhostname=false \
%else
-Dman=true \
-Dhtml=true \
%endif
-%if 0%{?bootstrap}
- -Dnss-myhostname=false \
-%endif
%if %{without coredump}
-Dcoredump=false \
%endif
@@ -600,6 +619,13 @@
-Dsysvinit-path= \
-Dsysvrcnd-path= \
%endif
+%if %{with tests}
+ -Dtests=unsafe \
+ -Dinstall-tests=true \
+%else
+ -Dtests=false \
+ -Dinstall-tests=false \
+%endif
-Dadm-group=false \
-Dwheel-group=false \
-Dgshadow=false \
@@ -660,8 +686,8 @@
rm -rf %{buildroot}/etc/systemd/system/*.target.{requires,wants}
rm -f %{buildroot}/etc/systemd/system/default.target
-# Replace /etc/pam.d/systemd-user shipped by upstream with the openSUSE one.
-install -m0644 %{S:2} %{buildroot}%{_sysconfdir}/pam.d/
+# Replace upstream systemd-user with the openSUSE one.
+install -m0644 %{S:2} %{buildroot}%{_distconfdir}/pam.d
# don't enable wall ask password service, it spams every console (bnc#747783)
rm %{buildroot}%{_unitdir}/multi-user.target.wants/systemd-ask-password-wall.path
@@ -838,10 +864,16 @@
pam-config --add --systemd || :
%endif
-%sysusers_create %{_sysusersdir}/systemd.conf
+# systemd-sysusers is not available in %pre so this needs to be done
+# in %post. However this shouldn't be an issue since all files the
+# main package ships are owned by root.
+%sysusers_create systemd.conf
+
[ -e %{_localstatedir}/lib/random-seed ] && mv %{_localstatedir}/lib/random-seed %{_localstatedir}/lib/systemd/ || :
/usr/lib/systemd/systemd-random-seed save || :
+
systemctl daemon-reexec || :
+
%journal_catalog_update
%tmpfiles_create
@@ -908,7 +940,7 @@
fi
%postun
-# daemon-reload is implied by %systemd_postun_with_restart
+# daemon-reload is implied by %%systemd_postun_with_restart
%systemd_postun_with_restart systemd-journald.service
%systemd_postun_with_restart systemd-timesyncd.service
# Avoid restarting logind until fixed upstream (issue #1163)
@@ -1012,7 +1044,8 @@
%service_add_pre systemd-journal-upload.service
%post journal-remote
-%sysusers_create %{_sysusersdir}/systemd-remote.conf
+# Assume that all files shipped by systemd-journal-remove are owned by root.
+%sysusers_create systemd-remote.conf
%service_add_post systemd-journal-gatewayd.socket systemd-journal-gatewayd.service
%service_add_post systemd-journal-remote.socket systemd-journal-remote.service
%service_add_post systemd-journal-upload.service
@@ -1116,7 +1149,11 @@
%{_bindir}/localectl
%{_bindir}/systemctl
%{_bindir}/systemd-analyze
+%if ! 0%{?bootstrap}
+%{_bindir}/systemd-cryptenroll
+%endif
%{_bindir}/systemd-delta
+%{_bindir}/systemd-dissect
%{_bindir}/systemd-escape
%{_bindir}/systemd-firstboot
%{_bindir}/systemd-id128
@@ -1126,6 +1163,7 @@
%{_bindir}/systemd-umount
%{_bindir}/systemd-notify
%{_bindir}/systemd-run
+%{_bindir}/systemd-sysext
%{_bindir}/journalctl
%{_bindir}/systemd-ask-password
%{_bindir}/loginctl
@@ -1166,6 +1204,7 @@
%exclude %{_unitdir}/systemd-udev*.*
%exclude %{_unitdir}/*.target.wants/systemd-udev*.*
%exclude %{_unitdir}/initrd-udevadm-cleanup-db.service
+%exclude %{_unitdir}/kmod-static-nodes.service
%exclude %{_unitdir}/systemd-nspawn@.service
%if %{with machined}
%exclude %{_prefix}/lib/systemd/systemd-machined
@@ -1262,6 +1301,7 @@
%{_modulesloaddir}
%dir %{_sysusersdir}
+%doc %{_sysusersdir}/README
%{_sysusersdir}/systemd.conf
%dir %{_sysconfdir}/tmpfiles.d
@@ -1275,6 +1315,7 @@
%dir %{_sysctldir}
%dir %{_sysconfdir}/sysctl.d
+%doc %{_sysctldir}/README
%{_sysctldir}/99-sysctl.conf
%dir %{_sysconfdir}/X11/xorg.conf.d
@@ -1289,7 +1330,7 @@
%dir %{_distconfdir}/X11/xinit/xinitrc.d
%{_distconfdir}/X11/xinit/xinitrc.d/50-systemd-user.sh
-%config(noreplace) %{_sysconfdir}/pam.d/systemd-user
+%{_distconfdir}/pam.d/systemd-user
%config(noreplace) %{_sysconfdir}/systemd/journald.conf
%config(noreplace) %{_sysconfdir}/systemd/logind.conf
@@ -1313,6 +1354,7 @@
# FIXME: why do we have to own this dir ?
%dir %{_modprobedir}
+%doc %{_modprobedir}/README
%{_modprobedir}/systemd.conf
# Some files created at runtime.
@@ -1353,6 +1395,7 @@
%{_mandir}/man7/[bdfks]*
%{_mandir}/man8/kern*
%{_mandir}/man8/pam_*
+%{_mandir}/man8//rc-local.*
%{_mandir}/man8/systemd-[a-gik-tvx]*
%{_mandir}/man8/systemd-h[aioy]*
%{_mandir}/man8/systemd-journald*
@@ -1477,13 +1520,18 @@
%dir %{_prefix}/lib/udev/
%{_prefix}/lib/udev/ata_id
%{_prefix}/lib/udev/cdrom_id
+# dmi_memory_id is only relevant on arches with DMI
+%ifarch %{arm} aarch64 %{ix86} x86_64 ia64 mips
+%{_prefix}/lib/udev/dmi_memory_id
+%endif
%{_prefix}/lib/udev/fido_id
%{_prefix}/lib/udev/mtd_probe
%{_prefix}/lib/udev/path_id_compat
%{_prefix}/lib/udev/scsi_id
%{_prefix}/lib/udev/v4l_id
-%ghost %{_prefix}/lib/udev/compat-symlink-generation
+%ghost %attr(644, root, root) %{_prefix}/lib/udev/compat-symlink-generation
%dir %{_udevrulesdir}/
+%doc %{_udevrulesdir}/README
%exclude %{_udevrulesdir}/70-uaccess.rules
%exclude %{_udevrulesdir}/71-seat.rules
%exclude %{_udevrulesdir}/73-seat-late.rules
@@ -1504,6 +1552,7 @@
%endif
%dir %{_unitdir}
%{_prefix}/lib/systemd/systemd-udevd
+%{_unitdir}/kmod-static-nodes.service
%{_unitdir}/systemd-udev*.service
%{_unitdir}/systemd-udevd*.socket
%{_unitdir}/initrd-udevadm-cleanup-db.service
@@ -1696,10 +1745,15 @@
%{_mandir}/man*/systemd-portabled*
%endif
+%if %{with tests}
+%files tests
+%{_prefix}/lib/systemd/tests
+%endif
+
%if %{with experimental}
%files experimental
%defattr(-,root,root)
-%config(noreplace) /etc/systemd/pstore.conf
+%config(noreplace) %{_sysconfdir}/systemd/pstore.conf
%{_prefix}/lib/systemd/systemd-pstore
%{_unitdir}/systemd-pstore.service
%{_tmpfilesdir}/systemd-pstore.conf
@@ -1707,18 +1761,19 @@
%{_bindir}/systemd-repart
%{_unitdir}/systemd-repart.service
%{_mandir}/man*/*repart*
-/usr/bin/userdbctl
+%{_bindir}/userdbctl
%{_prefix}/lib/systemd/systemd-userwork
%{_prefix}/lib/systemd/systemd-userdbd
%{_unitdir}/systemd-userdbd.service
%{_unitdir}/systemd-userdbd.socket
%{_mandir}/man*/userdbctl*
%{_mandir}/man*/systemd-userdbd*
-%config %{_sysconfdir}/homed.conf
+%config(noreplace) %{_sysconfdir}/systemd/homed.conf
%{_bindir}/homectl
%{_prefix}/lib/systemd/systemd-homed
%{_prefix}/lib/systemd/systemd-homework
%{_unitdir}/systemd-homed.service
+%{_unitdir}/systemd-homed-activate.service
%{_pamdir}/pam_systemd_home.so
%{_datadir}/dbus-1/system-services/org.freedesktop.home1.service
%{_datadir}/dbus-1/system.d/org.freedesktop.home1.conf
++++++ systemd.spec ++++++
--- /var/tmp/diff_new_pack.ku8fIG/_old 2021-07-01 07:05:32.923517258 +0200
+++ /var/tmp/diff_new_pack.ku8fIG/_new 2021-07-01 07:05:32.927517227 +0200
@@ -24,7 +24,7 @@
%define bootstrap 0
%define mini %nil
%define min_kernel_version 4.5
-%define suse_version +suse.105.g14581e0120
+%define suse_version +suse.30.ge9a23d9e06
%bcond_with gnuefi
%if 0%{?bootstrap}
@@ -37,6 +37,7 @@
%bcond_with resolved
%bcond_with sysvcompat
%bcond_with experimental
+%bcond_with tests
%else
%bcond_without coredump
%ifarch %{ix86} x86_64
@@ -50,16 +51,15 @@
%bcond_without resolved
%bcond_without sysvcompat
%bcond_without experimental
+%bcond_without tests
%endif
-%bcond_with parentpathid
Name: systemd
URL: http://www.freedesktop.org/wiki/Software/systemd
-Version: 246.13
+Version: 248.3
Release: 0
Summary: A System and Session Manager
License: LGPL-2.1-or-later
-Group: System/Base
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if ! 0%{?bootstrap}
BuildRequires: docbook-xsl-stylesheets
@@ -74,6 +74,7 @@
BuildRequires: pkgconfig(audit)
BuildRequires: pkgconfig(libcryptsetup) >= 1.6.0
BuildRequires: pkgconfig(libdw)
+BuildRequires: pkgconfig(libfido2)
BuildRequires: pkgconfig(liblz4)
BuildRequires: pkgconfig(liblzma)
BuildRequires: pkgconfig(libpcre2-8)
@@ -111,10 +112,6 @@
%if %{with gnuefi}
BuildRequires: gnu-efi
%endif
-%if %{with experimental}
-BuildRequires: pkgconfig(fdisk)
-BuildRequires: pkgconfig(openssl)
-%endif
%if 0%{?bootstrap}
#!BuildIgnore: dbus-1
@@ -126,13 +123,15 @@
Requires: aaa_base >= 13.2
Requires: dbus-1 >= 1.4.0
Requires: kbd
-Requires: kmod >= 15
Requires: netcfg >= 11.5
Requires: systemd-default-settings-branding
Requires: systemd-presets-branding
-Requires: udev = %{version}-%{release}
Requires: util-linux >= 2.27.1
Requires: group(lock)
+# This Recommends because some symbols of libpcre2 are dlopen()ed by journalctl
+Recommends: libpcre2-8-0
+# ditto but dlopen()ed by systemd-cryptenroll
+Recommends: libfido2
Requires(post): coreutils
Requires(post): findutils
Requires(post): systemd-presets-branding
@@ -173,7 +172,6 @@
Patch1: 0001-restore-var-run-and-var-lock-bind-mount-if-they-aren.patch
Patch2: 0002-rc-local-fix-ordering-startup-for-etc-init.d-boot.lo.patch
Patch3: 0003-strip-the-domain-part-from-etc-hostname-when-setting.patch
-Patch4: 0004-tmpfiles-support-exclude-statements-based-on-file-ow.patch
Patch5: 0005-udev-create-default-symlinks-for-primary-cd_dvd-driv.patch
Patch6: 0006-sysv-generator-add-back-support-for-SysV-scripts-for.patch
Patch7: 0007-networkd-make-network.service-an-alias-of-systemd-ne.patch
@@ -189,6 +187,7 @@
# upstream and need an urgent fix. Even in this case, the patches are
# temporary and should be removed as soon as a fix is merged by
# upstream.
+Patch100: 0001-Revert-core-prevent-excessive-proc-self-mountinfo-pa.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@@ -204,7 +203,6 @@
%package doc
Summary: HTML documentation for systemd
License: LGPL-2.1-or-later
-Group: Documentation/Other
Supplements: (systemd and patterns-base-documentation)
%description doc
@@ -216,7 +214,6 @@
%package devel
Summary: Development headers for systemd
License: LGPL-2.1-or-later
-Group: Development/Libraries/C and C++
Requires: libsystemd0%{?mini} = %{version}-%{release}
Requires: systemd-rpm-macros
%if 0%{?bootstrap}
@@ -229,7 +226,6 @@
%package sysvinit
Summary: System V init tools
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
Provides: sbin_init
Conflicts: otherproviders(sbin_init)
@@ -242,7 +238,6 @@
%package -n libsystemd0%{?mini}
Summary: Component library for systemd
License: LGPL-2.1-or-later
-Group: System/Libraries
%if 0%{?bootstrap}
Conflicts: libsystemd0
Requires: this-is-only-for-build-envs
@@ -272,14 +267,14 @@
%package -n udev%{?mini}
Summary: A rule-based device node and kernel event manager
License: GPL-2.0-only
-Group: System/Kernel
URL: http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
+Requires: kmod
Requires: system-group-hardware
Requires: group(kvm)
Requires(post): sed
Requires(post): coreutils
Requires(postun): coreutils
-Requires(postun): /usr/bin/systemctl
+%systemd_requires
Conflicts: filesystem < 11.5
Conflicts: mkinitrd < 2.7.0
@@ -305,7 +300,6 @@
%package -n libudev%{?mini}1
Summary: Dynamic library to access udev device information
License: LGPL-2.1-or-later
-Group: System/Libraries
%if 0%{?bootstrap}
Conflicts: libudev1
Conflicts: kiwi
@@ -320,7 +314,6 @@
%package -n libudev%{?mini}-devel
Summary: Development files for libudev
License: LGPL-2.1-or-later
-Group: Development/Libraries/Other
Requires: libudev%{?mini}1 = %{version}-%{release}
%if 0%{?bootstrap}
Provides: libudev-devel = %{version}-%{version}
@@ -336,7 +329,6 @@
%package coredump
Summary: Systemd tools for coredump management
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
Provides: systemd:%{_bindir}/coredumpctl
@@ -350,7 +342,6 @@
%package container
Summary: Systemd tools for container management
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
Provides: systemd:%{_bindir}/systemd-nspawn
@@ -368,8 +359,9 @@
%package network
Summary: Systemd tools for networkd and resolved
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
+# This Recommends because some symbols of libidn2 are dlopen()ed by resolved
+Recommends: pkgconfig(libidn2)
BuildRequires: pkgconfig(libidn2)
Provides: systemd:/usr/lib/systemd/systemd-networkd
Provides: systemd:/usr/lib/systemd/systemd-resolved
@@ -385,7 +377,6 @@
%package portable
Summary: Systemd tools for portable services
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
%systemd_requires
@@ -405,7 +396,6 @@
%package logger
Summary: Journal only logging
License: LGPL-2.1-or-later
-Group: System/Base
Provides: syslog
Provides: sysvinit(syslog)
Requires(post): /usr/bin/systemctl
@@ -417,7 +407,6 @@
%package -n nss-systemd
Summary: Plugin for local virtual host name resolution
License: LGPL-2.1-or-later
-Group: System/Libraries
%description -n nss-systemd
This package contains a plugin for the Name Service Switch (NSS),
@@ -430,7 +419,6 @@
%package -n nss-myhostname
Summary: Plugin for local system host name resolution
License: LGPL-2.1-or-later
-Group: System/Libraries
%description -n nss-myhostname
This package contains a plug-in module for the Name Service Switch
@@ -447,7 +435,6 @@
%package -n nss-resolve
Summary: Plugin for local hostname resolution via systemd-resolved
License: LGPL-2.1-or-later
-Group: System/Libraries
Requires: %{name}-network = %{version}-%{release}
%description -n nss-resolve
@@ -464,7 +451,6 @@
%package -n nss-mymachines
Summary: Plugin for local virtual host name resolution
License: LGPL-2.1-or-later
-Group: System/Libraries
%description -n nss-mymachines
This package contains a plugin for the Name Service Switch (NSS),
@@ -481,11 +467,8 @@
%package journal-remote
Summary: Gateway for serving journal events over the network using HTTP
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
-Requires(post): systemd
-Requires(preun): systemd
-Requires(postun): systemd
+%systemd_requires
%description journal-remote
This extends the journal functionality to keep a copy of logs on a
@@ -497,23 +480,61 @@
systemd-journal-remote, and systemd-journal-upload.
%endif
+%if %{with tests}
+%package tests
+Summary: Unit tests for systemd
+License: LGPL-2.1-or-later
+Requires: %{name} = %{version}-%{release}
+Recommends: python3
+Recommends: python3-colorama
+# Optional dep for mkfs.vfat needed by test-loop-block (otherwise skipped)
+Recommends: dosfstools
+
+%description tests
+This package contains the unit tests used to check various internal
+functions used by systemd and all its components.
+
+The python script /usr/lib/systemd/tests/run-unit-tests.py can be used
+to run all unit tests at once.
+%endif
+
+%if %{with experimental}
%package experimental
Summary: Experimental systemd features
License: LGPL-2.1-or-later
-Group: System/Base
Requires: %{name} = %{version}-%{release}
+# These Recommends because some symbols of these libs are dlopen()ed by home stuff
+Recommends: libfido2
+Recommends: libpwquality1
+Recommends: libqrencode4
+# libfido2, libpwquality1 and libqrencode4 are build requirements for home stuff
+BuildRequires: pkgconfig(libfido2)
+BuildRequires: pkgconfig(libqrencode)
+BuildRequires: pkgconfig(pwquality)
+# fdisk and openssl are build requirements for home stuff and repart
+BuildRequires: pkgconfig(fdisk)
+BuildRequires: pkgconfig(openssl)
%systemd_requires
%description experimental
-This package contains optional extra systemd services that are
-considered a preview feature. Behaviour details and option names are
-subject to change without the usual backwards-compatibility promises.
-
-Components that turn out to be stable may be merged into the main or a
-dedicated package later.
+This package contains optional extra services that are considered as
+previews and are provided so users can do early experiments with the
+new features or technologies without waiting for them to be fully
+supported by either upstream and openSUSE.
+
+Please note that all services should be considered in development
+phase and as such their behaviors details, unit files, option names,
+etc... are subject to change without the usual backwards-compatibility
+promises.
+
+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.
-Use at your own risk.
+The package contains: homed, pstore, repart, userdbd.
+Have fun with these services at your own risk.
+%endif
%if ! 0%{?bootstrap}
%lang_package
@@ -526,6 +547,7 @@
%build
# keep split-usr until all packages have moved their systemd rules to /usr
%meson \
+ -Dmode=release \
-Dversion-tag=%{version}%{suse_version} \
-Ddocdir=%{_docdir}/systemd \
-Drootprefix=/usr \
@@ -533,6 +555,7 @@
-Dsplit-bin=true \
-Dsystem-uid-max=499 \
-Dsystem-gid-max=499 \
+ -Dpamconfdir=%{_distconfdir}/pam.d \
-Dpamlibdir=%{_pamdir} \
-Dxinitrcdir=%{_distconfdir}/X11/xinit/xinitrc.d \
-Drpmmacrosdir=no \
@@ -548,6 +571,7 @@
-Dsmack=false \
-Dima=false \
-Delfutils=auto \
+ -Doomd=false \
%if %{with experimental}
-Dpstore=true \
-Drepart=true \
@@ -560,16 +584,11 @@
-Duserdb=false \
%endif
%if 0%{?bootstrap}
- -Dfdisk=false \
- -Dpwquality=false \
- -Dp11kit=false \
+ -Dnss-myhostname=false \
%else
-Dman=true \
-Dhtml=true \
%endif
-%if 0%{?bootstrap}
- -Dnss-myhostname=false \
-%endif
%if %{without coredump}
-Dcoredump=false \
%endif
@@ -598,6 +617,13 @@
-Dsysvinit-path= \
-Dsysvrcnd-path= \
%endif
+%if %{with tests}
+ -Dtests=unsafe \
+ -Dinstall-tests=true \
+%else
+ -Dtests=false \
+ -Dinstall-tests=false \
+%endif
-Dadm-group=false \
-Dwheel-group=false \
-Dgshadow=false \
@@ -658,8 +684,8 @@
rm -rf %{buildroot}/etc/systemd/system/*.target.{requires,wants}
rm -f %{buildroot}/etc/systemd/system/default.target
-# Replace /etc/pam.d/systemd-user shipped by upstream with the openSUSE one.
-install -m0644 %{S:2} %{buildroot}%{_sysconfdir}/pam.d/
+# Replace upstream systemd-user with the openSUSE one.
+install -m0644 %{S:2} %{buildroot}%{_distconfdir}/pam.d
# don't enable wall ask password service, it spams every console (bnc#747783)
rm %{buildroot}%{_unitdir}/multi-user.target.wants/systemd-ask-password-wall.path
@@ -836,10 +862,16 @@
pam-config --add --systemd || :
%endif
-%sysusers_create %{_sysusersdir}/systemd.conf
+# systemd-sysusers is not available in %pre so this needs to be done
+# in %post. However this shouldn't be an issue since all files the
+# main package ships are owned by root.
+%sysusers_create systemd.conf
+
[ -e %{_localstatedir}/lib/random-seed ] && mv %{_localstatedir}/lib/random-seed %{_localstatedir}/lib/systemd/ || :
/usr/lib/systemd/systemd-random-seed save || :
+
systemctl daemon-reexec || :
+
%journal_catalog_update
%tmpfiles_create
@@ -906,7 +938,7 @@
fi
%postun
-# daemon-reload is implied by %systemd_postun_with_restart
+# daemon-reload is implied by %%systemd_postun_with_restart
%systemd_postun_with_restart systemd-journald.service
%systemd_postun_with_restart systemd-timesyncd.service
# Avoid restarting logind until fixed upstream (issue #1163)
@@ -1010,7 +1042,8 @@
%service_add_pre systemd-journal-upload.service
%post journal-remote
-%sysusers_create %{_sysusersdir}/systemd-remote.conf
+# Assume that all files shipped by systemd-journal-remove are owned by root.
+%sysusers_create systemd-remote.conf
%service_add_post systemd-journal-gatewayd.socket systemd-journal-gatewayd.service
%service_add_post systemd-journal-remote.socket systemd-journal-remote.service
%service_add_post systemd-journal-upload.service
@@ -1114,7 +1147,11 @@
%{_bindir}/localectl
%{_bindir}/systemctl
%{_bindir}/systemd-analyze
+%if ! 0%{?bootstrap}
+%{_bindir}/systemd-cryptenroll
+%endif
%{_bindir}/systemd-delta
+%{_bindir}/systemd-dissect
%{_bindir}/systemd-escape
%{_bindir}/systemd-firstboot
%{_bindir}/systemd-id128
@@ -1124,6 +1161,7 @@
%{_bindir}/systemd-umount
%{_bindir}/systemd-notify
%{_bindir}/systemd-run
+%{_bindir}/systemd-sysext
%{_bindir}/journalctl
%{_bindir}/systemd-ask-password
%{_bindir}/loginctl
@@ -1164,6 +1202,7 @@
%exclude %{_unitdir}/systemd-udev*.*
%exclude %{_unitdir}/*.target.wants/systemd-udev*.*
%exclude %{_unitdir}/initrd-udevadm-cleanup-db.service
+%exclude %{_unitdir}/kmod-static-nodes.service
%exclude %{_unitdir}/systemd-nspawn@.service
%if %{with machined}
%exclude %{_prefix}/lib/systemd/systemd-machined
@@ -1260,6 +1299,7 @@
%{_modulesloaddir}
%dir %{_sysusersdir}
+%doc %{_sysusersdir}/README
%{_sysusersdir}/systemd.conf
%dir %{_sysconfdir}/tmpfiles.d
@@ -1273,6 +1313,7 @@
%dir %{_sysctldir}
%dir %{_sysconfdir}/sysctl.d
+%doc %{_sysctldir}/README
%{_sysctldir}/99-sysctl.conf
%dir %{_sysconfdir}/X11/xorg.conf.d
@@ -1287,7 +1328,7 @@
%dir %{_distconfdir}/X11/xinit/xinitrc.d
%{_distconfdir}/X11/xinit/xinitrc.d/50-systemd-user.sh
-%config(noreplace) %{_sysconfdir}/pam.d/systemd-user
+%{_distconfdir}/pam.d/systemd-user
%config(noreplace) %{_sysconfdir}/systemd/journald.conf
%config(noreplace) %{_sysconfdir}/systemd/logind.conf
@@ -1311,6 +1352,7 @@
# FIXME: why do we have to own this dir ?
%dir %{_modprobedir}
+%doc %{_modprobedir}/README
%{_modprobedir}/systemd.conf
# Some files created at runtime.
@@ -1351,6 +1393,7 @@
%{_mandir}/man7/[bdfks]*
%{_mandir}/man8/kern*
%{_mandir}/man8/pam_*
+%{_mandir}/man8//rc-local.*
%{_mandir}/man8/systemd-[a-gik-tvx]*
%{_mandir}/man8/systemd-h[aioy]*
%{_mandir}/man8/systemd-journald*
@@ -1475,13 +1518,18 @@
%dir %{_prefix}/lib/udev/
%{_prefix}/lib/udev/ata_id
%{_prefix}/lib/udev/cdrom_id
+# dmi_memory_id is only relevant on arches with DMI
+%ifarch %{arm} aarch64 %{ix86} x86_64 ia64 mips
+%{_prefix}/lib/udev/dmi_memory_id
+%endif
%{_prefix}/lib/udev/fido_id
%{_prefix}/lib/udev/mtd_probe
%{_prefix}/lib/udev/path_id_compat
%{_prefix}/lib/udev/scsi_id
%{_prefix}/lib/udev/v4l_id
-%ghost %{_prefix}/lib/udev/compat-symlink-generation
+%ghost %attr(644, root, root) %{_prefix}/lib/udev/compat-symlink-generation
%dir %{_udevrulesdir}/
+%doc %{_udevrulesdir}/README
%exclude %{_udevrulesdir}/70-uaccess.rules
%exclude %{_udevrulesdir}/71-seat.rules
%exclude %{_udevrulesdir}/73-seat-late.rules
@@ -1502,6 +1550,7 @@
%endif
%dir %{_unitdir}
%{_prefix}/lib/systemd/systemd-udevd
+%{_unitdir}/kmod-static-nodes.service
%{_unitdir}/systemd-udev*.service
%{_unitdir}/systemd-udevd*.socket
%{_unitdir}/initrd-udevadm-cleanup-db.service
@@ -1694,10 +1743,15 @@
%{_mandir}/man*/systemd-portabled*
%endif
+%if %{with tests}
+%files tests
+%{_prefix}/lib/systemd/tests
+%endif
+
%if %{with experimental}
%files experimental
%defattr(-,root,root)
-%config(noreplace) /etc/systemd/pstore.conf
+%config(noreplace) %{_sysconfdir}/systemd/pstore.conf
%{_prefix}/lib/systemd/systemd-pstore
%{_unitdir}/systemd-pstore.service
%{_tmpfilesdir}/systemd-pstore.conf
@@ -1705,18 +1759,19 @@
%{_bindir}/systemd-repart
%{_unitdir}/systemd-repart.service
%{_mandir}/man*/*repart*
-/usr/bin/userdbctl
+%{_bindir}/userdbctl
%{_prefix}/lib/systemd/systemd-userwork
%{_prefix}/lib/systemd/systemd-userdbd
%{_unitdir}/systemd-userdbd.service
%{_unitdir}/systemd-userdbd.socket
%{_mandir}/man*/userdbctl*
%{_mandir}/man*/systemd-userdbd*
-%config %{_sysconfdir}/homed.conf
+%config(noreplace) %{_sysconfdir}/systemd/homed.conf
%{_bindir}/homectl
%{_prefix}/lib/systemd/systemd-homed
%{_prefix}/lib/systemd/systemd-homework
%{_unitdir}/systemd-homed.service
+%{_unitdir}/systemd-homed-activate.service
%{_pamdir}/pam_systemd_home.so
%{_datadir}/dbus-1/system-services/org.freedesktop.home1.service
%{_datadir}/dbus-1/system.d/org.freedesktop.home1.conf
++++++ 0001-Revert-core-prevent-excessive-proc-self-mountinfo-pa.patch ++++++
From c9bce1f07276c591d8637dbfc3244ee11e8fa4e1 Mon Sep 17 00:00:00 2001
From: Franck Bui
Date: Tue, 18 May 2021 11:53:55 +0200
Subject: [PATCH 1/1] Revert "core: prevent excessive /proc/self/mountinfo
parsing"
This reverts commit d586f642fd90e3bb378f7b6d3e3a64a753e51756.
This reverts commit d586f642fd90e3bb378f7b6d3e3a64a753e51756 temporarly until
more investigation is done to find the root cause of
https://github.com/systemd/systemd/issues/19464.
---
src/core/mount.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/src/core/mount.c b/src/core/mount.c
index ca5d0939a1..2939062161 100644
--- a/src/core/mount.c
+++ b/src/core/mount.c
@@ -1859,12 +1859,6 @@ static void mount_enumerate(Manager *m) {
goto fail;
}
- r = sd_event_source_set_ratelimit(m->mount_event_source, 1 * USEC_PER_SEC, 5);
- if (r < 0) {
- log_error_errno(r, "Failed to enable rate limit for mount events: %m");
- goto fail;
- }
-
(void) sd_event_source_set_description(m->mount_event_source, "mount-monitor-dispatch");
}
--
2.26.2
++++++ 0001-conf-parser-introduce-early-drop-ins.patch ++++++
--- /var/tmp/diff_new_pack.ku8fIG/_old 2021-07-01 07:05:32.959516976 +0200
+++ /var/tmp/diff_new_pack.ku8fIG/_new 2021-07-01 07:05:32.959516976 +0200
@@ -1,4 +1,4 @@
-From 569f94a86a608fa7a47fef583f3f504ec8223967 Mon Sep 17 00:00:00 2001
+From 0eb84d049c77dceeb48724770f89f0fa01557c87 Mon Sep 17 00:00:00 2001
From: Franck Bui
Date: Fri, 22 Jan 2021 14:57:08 +0100
Subject: [PATCH 1/1] conf-parser: introduce 'early' drop-ins
@@ -61,23 +61,23 @@
Fixes: #2121
---
- src/shared/conf-parser.c | 47 ++++++++++-
- src/test/test-conf-parser.c | 151 ++++++++++++++++++++++++++++++++++++
- 2 files changed, 194 insertions(+), 4 deletions(-)
+ src/shared/conf-parser.c | 48 ++++++++++--
+ src/test/test-conf-parser.c | 152 ++++++++++++++++++++++++++++++++++++
+ 2 files changed, 195 insertions(+), 5 deletions(-)
diff --git a/src/shared/conf-parser.c b/src/shared/conf-parser.c
-index 7499b3b882..799026626c 100644
+index 9dfa190751..b5dee9cbb1 100644
--- a/src/shared/conf-parser.c
+++ b/src/shared/conf-parser.c
-@@ -426,6 +426,7 @@ int config_parse(const char *unit,
+@@ -428,6 +428,7 @@ int config_parse(
static int config_parse_many_files(
- const char *conf_file,
+ const char* const* conf_files,
+ char **early_files,
char **files,
const char *sections,
ConfigItemLookup lookup,
-@@ -438,6 +439,12 @@ static int config_parse_many_files(
+@@ -440,6 +441,12 @@ static int config_parse_many_files(
char **fn;
int r;
@@ -87,10 +87,10 @@
+ return r;
+ }
+
- if (conf_file) {
- r = config_parse(NULL, conf_file, NULL, sections, lookup, table, flags, userdata, &mtime);
- if (r < 0)
-@@ -456,6 +463,28 @@ static int config_parse_many_files(
+ /* First read the first found main config file. */
+ STRV_FOREACH(fn, (char**) conf_files) {
+ r = config_parse(NULL, *fn, NULL, sections, lookup, table, flags, userdata, &mtime);
+@@ -462,6 +469,28 @@ static int config_parse_many_files(
return 0;
}
@@ -119,7 +119,7 @@
/* Parse each config file in the directories specified as nulstr. */
int config_parse_many_nulstr(
const char *conf_file,
-@@ -467,14 +496,19 @@ int config_parse_many_nulstr(
+@@ -473,15 +502,19 @@ int config_parse_many_nulstr(
void *userdata,
usec_t *ret_mtime) {
@@ -131,17 +131,18 @@
if (r < 0)
return r;
-- return config_parse_many_files(conf_file, files, sections, lookup, table, flags, userdata, ret_mtime);
+- return config_parse_many_files(STRV_MAKE_CONST(conf_file),
+- files, sections, lookup, table, flags, userdata,
+ r = config_parse_split_conf_files(files, &early_files, &late_files);
+ if (r < 0)
+ return r;
+
-+ return config_parse_many_files(conf_file, early_files, late_files, sections,
-+ lookup, table, flags, userdata, ret_mtime);
++ return config_parse_many_files(STRV_MAKE_CONST(conf_file), early_files, late_files,
++ sections, lookup, table, flags, userdata,
+ ret_mtime);
}
- /* Parse each config file in the directories specified as strv. */
-@@ -489,8 +523,8 @@ int config_parse_many(
+@@ -497,8 +530,8 @@ int config_parse_many(
void *userdata,
usec_t *ret_mtime) {
@@ -151,22 +152,22 @@
const char *suffix;
int r;
-@@ -503,7 +537,12 @@ int config_parse_many(
+@@ -511,7 +544,12 @@ int config_parse_many(
if (r < 0)
return r;
-- return config_parse_many_files(conf_file, files, sections, lookup, table, flags, userdata, ret_mtime);
+- return config_parse_many_files(conf_files, files, sections, lookup, table, flags, userdata, ret_mtime);
+ r = config_parse_split_conf_files(files, &early_files, &late_files);
+ if (r < 0)
+ return r;
+
-+ return config_parse_many_files(conf_file, early_files, late_files, sections,
-+ lookup, table, flags, userdata, ret_mtime);
++ return config_parse_many_files(conf_files, early_files, late_files,
++ sections, lookup, table, flags, userdata, ret_mtime);
}
#define DEFINE_PARSER(type, vartype, conv_func) \
diff --git a/src/test/test-conf-parser.c b/src/test/test-conf-parser.c
-index 07edc17f92..2df4b073c5 100644
+index 5da864347e..77d9f28a79 100644
--- a/src/test/test-conf-parser.c
+++ b/src/test/test-conf-parser.c
@@ -5,6 +5,9 @@
@@ -179,7 +180,7 @@
#include "string-util.h"
#include "strv.h"
#include "tmpfile-util.h"
-@@ -385,6 +388,151 @@ static void test_config_parse(unsigned i, const char *s) {
+@@ -385,6 +388,152 @@ static void test_config_parse(unsigned i, const char *s) {
}
}
@@ -263,7 +264,8 @@
+ NULL,
+ NULL);
+ } else {
-+ r = config_parse_many(conf_file, (const char * const*) conf_dirs, "",
++ r = config_parse_many(STRV_MAKE_CONST(conf_file),
++ (const char * const*) conf_dirs, "",
+ "Section\0",
+ config_item_table_lookup, items,
+ CONFIG_PARSE_WARN,
@@ -331,7 +333,7 @@
int main(int argc, char **argv) {
unsigned i;
-@@ -407,5 +555,8 @@ int main(int argc, char **argv) {
+@@ -407,5 +556,8 @@ int main(int argc, char **argv) {
for (i = 0; i < ELEMENTSOF(config_file); i++)
test_config_parse(i, config_file[i]);
++++++ 0003-strip-the-domain-part-from-etc-hostname-when-setting.patch ++++++
--- /var/tmp/diff_new_pack.ku8fIG/_old 2021-07-01 07:05:32.971516883 +0200
+++ /var/tmp/diff_new_pack.ku8fIG/_new 2021-07-01 07:05:32.975516852 +0200
@@ -1,7 +1,7 @@
-From f299a8180f1db0680b454c0e37696891361e3067 Mon Sep 17 00:00:00 2001
+From 54366ae306ae19bdb2a5af7eb5158260cdc37e8f Mon Sep 17 00:00:00 2001
From: Frederic Crozat
Date: Tue, 28 May 2013 15:17:35 +0200
-Subject: [PATCH 03/12] strip the domain part from /etc/hostname when setting
+Subject: [PATCH 1/1] strip the domain part from /etc/hostname when setting
system host name
[fbui: fixes bnc#820213]
@@ -13,19 +13,17 @@
possibility was to fix the installer to create a correct
/etc/hostname file. Need to investigate...]
---
- src/core/hostname-setup.c | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
+ src/shared/hostname-setup.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
-diff --git a/src/core/hostname-setup.c b/src/core/hostname-setup.c
-index 6d047db838..1acc0c998b 100644
---- a/src/core/hostname-setup.c
-+++ b/src/core/hostname-setup.c
-@@ -39,8 +39,16 @@ int hostname_setup(void) {
- enoent = true;
+diff --git a/src/shared/hostname-setup.c b/src/shared/hostname-setup.c
+index 511aa7d031..351d0e761d 100644
+--- a/src/shared/hostname-setup.c
++++ b/src/shared/hostname-setup.c
+@@ -189,6 +189,13 @@ int hostname_setup(bool really) {
else
log_warning_errno(r, "Failed to read configured hostname: %m");
-- } else
-+ } else {
+ } else {
+ char *domain;
+
+ /* SUSE: strip the domain name */
@@ -34,10 +32,8 @@
+ *domain = '\0';
+
hn = b;
-+ }
- }
-
- if (isempty(hn)) {
+ source = HOSTNAME_STATIC;
+ }
--
2.26.2
++++++ 0006-sysv-generator-add-back-support-for-SysV-scripts-for.patch ++++++
--- /var/tmp/diff_new_pack.ku8fIG/_old 2021-07-01 07:05:32.987516758 +0200
+++ /var/tmp/diff_new_pack.ku8fIG/_new 2021-07-01 07:05:32.987516758 +0200
@@ -1,7 +1,7 @@
-From f9521480d5dc5af747fecc9adc4c617e473e5494 Mon Sep 17 00:00:00 2001
+From ac7bfed30245145ce68a037e7578da12ce2de009 Mon Sep 17 00:00:00 2001
From: Franck Bui
Date: Thu, 26 May 2016 08:59:41 +0200
-Subject: [PATCH 06/12] sysv-generator: add (back) support for SysV scripts for
+Subject: [PATCH 1/1] sysv-generator: add (back) support for SysV scripts for
the early boot
For the record, the upstream support was removed by commit
@@ -43,7 +43,7 @@
1 file changed, 23 insertions(+)
diff --git a/src/sysv-generator/sysv-generator.c b/src/sysv-generator/sysv-generator.c
-index a2c72d1009..1c01008967 100644
+index 8c7aef23c3..f88f9119fb 100644
--- a/src/sysv-generator/sysv-generator.c
+++ b/src/sysv-generator/sysv-generator.c
@@ -31,6 +31,9 @@ static const struct {
@@ -63,8 +63,8 @@
+ bool early;
} SysvStub;
- static void free_sysvstub(SysvStub *s) {
-@@ -147,6 +151,12 @@ static int generate_unit_file(SysvStub *s) {
+ static SysvStub* free_sysvstub(SysvStub *s) {
+@@ -146,6 +150,12 @@ static int generate_unit_file(SysvStub *s) {
fprintf(f, "Description=%s\n", t);
}
@@ -77,7 +77,7 @@
STRV_FOREACH(p, s->before)
fprintf(f, "Before=%s\n", *p);
STRV_FOREACH(p, s->after)
-@@ -213,6 +223,10 @@ static char *sysv_translate_name(const char *name) {
+@@ -212,6 +222,10 @@ static char *sysv_translate_name(const char *name) {
_cleanup_free_ char *c = NULL;
char *res;
@@ -88,7 +88,7 @@
c = strdup(name);
if (!c)
return NULL;
-@@ -289,6 +303,11 @@ static int sysv_translate_facility(SysvStub *s, unsigned line, const char *name,
+@@ -288,6 +302,11 @@ static int sysv_translate_facility(SysvStub *s, unsigned line, const char *name,
return 1;
}
@@ -100,7 +100,7 @@
/* Strip ".sh" suffix from file name for comparison */
filename_no_sh = strdupa(filename);
e = endswith(filename_no_sh, ".sh");
-@@ -676,6 +695,9 @@ static int fix_order(SysvStub *s, Hashmap *all_services) {
+@@ -674,6 +693,9 @@ static int fix_order(SysvStub *s, Hashmap *all_services) {
if (other->sysv_start_priority < 0)
continue;
@@ -110,7 +110,7 @@
/* If both units have modern headers we don't care
* about the priorities */
if (s->has_lsb && other->has_lsb)
-@@ -800,6 +822,7 @@ static int enumerate_sysv(const LookupPaths *lp, Hashmap *all_services) {
+@@ -798,6 +820,7 @@ static int enumerate_sysv(const LookupPaths *lp, Hashmap *all_services) {
.sysv_start_priority = -1,
.name = TAKE_PTR(name),
.path = TAKE_PTR(fpath),
++++++ systemd-sysv-install ++++++
--- /var/tmp/diff_new_pack.ku8fIG/_old 2021-07-01 07:05:33.115515758 +0200
+++ /var/tmp/diff_new_pack.ku8fIG/_new 2021-07-01 07:05:33.115515758 +0200
@@ -1,41 +1,148 @@
-#!/bin/sh
+#!/bin/bash
+
# This script is called by "systemctl enable/disable" when the given unit is a
# SysV init.d script. It needs to call the distribution's mechanism for
# enabling/disabling those, such as chkconfig, update-rc.d, or similar. This
# can optionally take a --root argument for enabling a SysV init script
# in a chroot or similar.
+#
+# chkconfig(8) and insserv(8) are no more available hence let's do the
+# bare minimum and create/remote the symlinks for the well known
+# runlevels and nothing more. Note that we don't take care of
+# enabling/disabling the service dependencies as the sysv-generator
+# will take care of them for us (openSUSE specific).
+#
+
set -e
usage() {
- echo "Usage: $0 [--root=path] enable|disable|is-enabled <sysv script name>" >&2
- exit 1
+ echo >&2 "Usage: $0 [--quiet] [--root=path] enable|disable|is-enabled <sysv script name>"
+ exit 1
+}
+
+info() {
+ $quiet || echo "$*"
+}
+
+die() {
+ echo >&2 "error: $*, aborting."
+ exit 1
+}
+
+declare -A lsb_header
+
+check_runlevels() {
+ for l in $*; do
+ # Sanity check
+ case $l in
+ 0|1|2|3|4|5|6) continue ;;
+ *) return 1
+ esac
+ done
}
+load_initscript() {
+ local found_lsb_start_marker=false
+ local found_lsb_end_marker=false
+
+ [ -r $1 ] || die "initscript /etc/init.d/$1 can't be read"
+
+ lsb_header=()
+
+ while read line; do
+ # skip anything that is not a comment
+ [[ "$line" =~ ^# ]] || continue
+
+ if ! $found_lsb_start_marker; then
+ [ "$line" == "### BEGIN INIT INFO" ] &&
+ found_lsb_start_marker=true
+ continue
+ fi
+
+ line=$(echo ${line:1})
+
+ case "$line" in
+ Default-Start:*)
+ levels=$(echo ${line:14})
+
+ check_runlevels $levels ||
+ die "Invalid runlevels specified in $line"
+
+ lsb_header[Default-Start]=$levels
+ ;;
+ "## END INIT INFO")
+ found_lsb_end_marker=true
+ break ;;
+ esac
+ done <$1
+
+ $found_lsb_end_marker ||
+ die "malformated LSB header in $1: missing LSB end marker"
+}
+
+enable_initscript() {
+ load_initscript $1
+
+ for l in ${lsb_header[Default-Start]}; do
+ symlink="$(pwd)/rc${l}.d/S50$1"
+
+ info "ln -sf ../$1 $symlink"
+ ln -sf ../$1 "$symlink"
+ done
+}
+
+disable_initscript() {
+ for symlink in rc*.d/[SK]*; do
+ [ -L $symlink ] && [ $(readlink $symlink) = "../$1" ] && {
+ info "rm $(pwd)/$symlink"
+ rm $symlink
+ }
+ done
+}
+
+is_initscript_enabled() {
+ for symlink in rc*.d/S*; do
+ [ -L $symlink ] && [ $(readlink $symlink) = "../$1" ] &&
+ return 0
+ done
+ return 1
+}
+
+root=
+quiet=false
+
# parse options
-eval set -- "$(getopt -o r: --long root: -- "$@")"
+eval set -- "$(getopt --name $(basename $0) -o hqr: --long help,quiet,root: -- "$@")"
while true; do
- case "$1" in
- -r|--root)
- ROOT="$2"
- shift 2 ;;
- --) shift ; break ;;
- *) usage ;;
- esac
+ case "$1" in
+ -h|--help)
+ usage ;;
+ -r|--root)
+ shift
+ root=$1 ;;
+ -q|--quiet)
+ quiet=true ;;
+ --)
+ shift
+ break ;;
+ *)
+ usage ;;
+ esac
+ shift
done
-NAME="$2"
-[ -n "$NAME" ] || usage
+[ $# -eq 2 ] || usage
+action=$1
+name=$2
+
+sysvinit_path=$(realpath -q -e $root/etc/init.d) ||
+ die "$root/etc/init.d: no such file or directory"
+
+cd $sysvinit_path
-case "$1" in
- enable)
- chkconfig $ROOT --no-systemctl -s "$NAME" on
- ;;
- disable)
- chkconfig $ROOT --no-systemctl -s "$NAME" off
- ;;
- is-enabled)
- chkconfig $ROOT --no-systemctl -c "$NAME"
- ;;
- *)
- usage ;;
+case "$action" in
+enable) enable_initscript $name ;;
+disable) disable_initscript $name ;;
+is-enabled) is_initscript_enabled $name ;;
+*) usage
esac
++++++ systemd-v246.13+suse.105.g14581e0120.tar.xz -> systemd-v248.3+suse.30.ge9a23d9e06.tar.xz ++++++
/work/SRC/openSUSE:Factory/systemd/systemd-v246.13+suse.105.g14581e0120.tar.xz /work/SRC/openSUSE:Factory/.systemd.new.2625/systemd-v248.3+suse.30.ge9a23d9e06.tar.xz differ: char 26, line 1
++++++ tmpfiles-suse.conf ++++++
--- /var/tmp/diff_new_pack.ku8fIG/_old 2021-07-01 07:05:33.171515320 +0200
+++ /var/tmp/diff_new_pack.ku8fIG/_new 2021-07-01 07:05:33.171515320 +0200
@@ -9,6 +9,10 @@
# FIXME: Might be moved to lockded.
d /run/lock 0775 root lock -
+# /run/lock/subsys is used for serializing SysV service execution, and
+# hence without use on SysV-less systems.
+d /run/lock/subsys 0755 root root -
+
# FIXME: Should these one be moved to shadow ?
f /var/log/wtmp 0664 root utmp -
f /var/log/btmp 0660 root utmp -