From 53c0c58da9e2fea7633c7adfc3667624765eddefea7340de85941e117291ab12 Mon Sep 17 00:00:00 2001 From: Franck Bui Date: Mon, 14 Feb 2022 15:52:52 +0000 Subject: [PATCH] - spec: fix dependencies for mini variants Make sure that all mini variants won't be installed in real systems and won't be involved when building medias with kiwi. Note that sub-packages that requires systemd (such as udev) don't need any special treatment since the specific deps are inherited from the main (mini) package. - spec: simplify systemd-mini-doc dependencies by assuming that the doc sub-package can't be a build requirement for other packages. - spec: libsystemd-mini and libudev-mini need to provide libsystemd and libudev respectively OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=1251 --- systemd.changes | 16 ++++++++++++++++ systemd.spec | 35 +++++++++++++++++++++-------------- 2 files changed, 37 insertions(+), 14 deletions(-) diff --git a/systemd.changes b/systemd.changes index de632c3b..5a4bf44a 100644 --- a/systemd.changes +++ b/systemd.changes @@ -1,3 +1,19 @@ +------------------------------------------------------------------- +Mon Feb 14 15:11:04 UTC 2022 - Franck Bui + +- spec: fix dependencies for mini variants + + Make sure that all mini variants won't be installed in real systems and won't + be involved when building medias with kiwi. Note that sub-packages that + requires systemd (such as udev) don't need any special treatment since the + specific deps are inherited from the main (mini) package. + +- spec: simplify systemd-mini-doc dependencies by assuming that the doc + sub-package can't be a build requirement for other packages. + +- spec: libsystemd-mini and libudev-mini need to provide libsystemd and libudev + respectively + ------------------------------------------------------------------- Mon Feb 14 07:39:12 UTC 2022 - Franck Bui diff --git a/systemd.spec b/systemd.spec index 5fe9b17d..af74fda5 100644 --- a/systemd.spec +++ b/systemd.spec @@ -16,11 +16,6 @@ # -# -# The git repository used to track all SUSE specific changes can be -# found at: https://github.com/openSUSE/systemd. -# - %global flavor @BUILD_FLAVOR@%{nil} %if "%{flavor}" == "mini" @@ -138,10 +133,15 @@ BuildRequires: gnu-efi %if 0%{?bootstrap} #!BuildIgnore: dbus-1 -Requires: this-is-only-for-build-envs Provides: systemd = %{version}-%{release} -Conflicts: kiwi Conflicts: systemd +# Don't consider the mini flavors when building kiwi medias. This conflict is +# automatically inherited by sub-packages requiring systemd (such as udev). +Conflicts: kiwi +# This dependency is used to ensure that the mini flavors are selected only +# inside OBS builds (where this dependency is ignored) and don't get installed +# on real systems. +Requires: this-is-only-for-build-envs %else # the buildignore is important for bootstrapping #!BuildIgnore: udev @@ -202,10 +202,15 @@ Source203: files.network Source204: files.devel Source205: files.sysvcompat +# +# All changes backported from upstream are tracked by the git repository, which +# can be found at: https://github.com/openSUSE/systemd. +# # Patches listed below are openSUSE specific and should be kept at its # minimum. We try hard to push our changes to upstream but sometimes they are # only relevant for SUSE distros. Special rewards for those who will manage to # get rid of one of them ! +# 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 @@ -236,10 +241,11 @@ drop-in replacement for sysvinit. %package doc Summary: HTML documentation for systemd License: LGPL-2.1-or-later -Supplements: (systemd and patterns-base-documentation) %if 0%{?bootstrap} -Provides: systemd-doc = %{version}-%{release} Conflicts: systemd-doc +Requires: this-is-only-for-build-envs +%else +Supplements: (systemd and patterns-base-documentation) %endif %description doc @@ -287,7 +293,9 @@ Please note that the content of this package is considered as deprecated. Summary: Component library for systemd License: LGPL-2.1-or-later %if 0%{?bootstrap} +Conflicts: kiwi Conflicts: libsystemd0 +Provides: libsystemd0 = %{version}-%{release} Requires: this-is-only-for-build-envs %endif @@ -325,17 +333,14 @@ Requires: group(kvm) Requires(post): sed Requires(post): coreutils Requires(postun):coreutils - Conflicts: ConsoleKit < 0.4.1 Conflicts: dracut < 044.1 Conflicts: filesystem < 11.5 Conflicts: mkinitrd < 2.7.0 Conflicts: util-linux < 2.16 %if 0%{?bootstrap} -Provides: udev = %{version}-%{release} Conflicts: udev -# avoid kiwi picking it for bootstrap -Requires: this-is-only-for-build-envs +Provides: udev = %{version}-%{release} %endif %description -n udev%{?mini} @@ -351,7 +356,7 @@ License: LGPL-2.1-or-later %if 0%{?bootstrap} Conflicts: kiwi Conflicts: libudev1 -# avoid kiwi picking it for bootstrap +Provides: libudev1 = %{version}-%{release} Requires: this-is-only-for-build-envs %endif @@ -383,8 +388,10 @@ Provides: nss-mymachines = %{version}-%{release} Provides: systemd-container = %{version}-%{release} Provides: systemd:%{_bindir}/systemd-nspawn %if 0%{?bootstrap} +Conflicts: kiwi Conflicts: systemd-container Provides: systemd-container = %{version}-%{release} +Requires: this-is-only-for-build-envs %endif %description container