forked from pool/systemd
Accepting request 1084033 from Base:System
- Revert changes that dropped calls to %systemd_{pre,post} in the main package Until we switch to filetriggers these calls are needed when a new version of systemd introduced a new config file during an update. - We also introduce a new build conditional "%filetriggers" to identify easily which parts of the code will become obsolete when we'll switch to file triggers (WIP). This is important as this is unlikely to happen on SLE. OBS-URL: https://build.opensuse.org/request/show/1084033 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/systemd?expand=0&rev=389
This commit is contained in:
commit
36bd24f3be
@ -1,3 +1,15 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 2 10:34:43 UTC 2023 - Franck Bui <fbui@suse.com>
|
||||||
|
|
||||||
|
- Revert changes that dropped calls to %systemd_{pre,post} in the main package
|
||||||
|
|
||||||
|
Until we switch to filetriggers these calls are needed when a new version of
|
||||||
|
systemd introduced a new config file during an update.
|
||||||
|
|
||||||
|
- We also introduce a new build conditional "%filetriggers" to identify easily
|
||||||
|
which parts of the code will become obsolete when we'll switch to file
|
||||||
|
triggers (WIP). This is important as this is unlikely to happen on SLE.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Apr 28 10:43:02 UTC 2023 - Franck Bui <fbui@suse.com>
|
Fri Apr 28 10:43:02 UTC 2023 - Franck Bui <fbui@suse.com>
|
||||||
|
|
||||||
|
44
systemd.spec
44
systemd.spec
@ -68,6 +68,7 @@
|
|||||||
%bcond_without testsuite
|
%bcond_without testsuite
|
||||||
%endif
|
%endif
|
||||||
# Kept to ease migrations toward SLE
|
# Kept to ease migrations toward SLE
|
||||||
|
%bcond_with filetriggers
|
||||||
%bcond_with split_usr
|
%bcond_with split_usr
|
||||||
|
|
||||||
Name: systemd%{?mini}
|
Name: systemd%{?mini}
|
||||||
@ -964,13 +965,17 @@ tar -cO \
|
|||||||
# Don't drop %%pre section even if it becomes empty: the build process of
|
# Don't drop %%pre section even if it becomes empty: the build process of
|
||||||
# installation images uses a hardcoded list of packages with a %%pre that needs
|
# installation images uses a hardcoded list of packages with a %%pre that needs
|
||||||
# to be run during the build and complains if it can't find one.
|
# to be run during the build and complains if it can't find one.
|
||||||
#
|
|
||||||
# Note: presets for units shipped by the main package are applied by %%posttrans
|
|
||||||
# scripts of systemd-presets-common-SUSE. Hence we don't need to bother running
|
|
||||||
# %%systemd_{pre,post} on them, which is fortunate since the helper script the
|
|
||||||
# systemd rpm macros rely on is not yet installed.
|
|
||||||
%pre
|
%pre
|
||||||
:
|
if [ $1 -gt 1 ]; then
|
||||||
|
# We keep these just in case we're upgrading from an old version that
|
||||||
|
# was missing one of these units. During package installation, these
|
||||||
|
# macros are NOPs for the main package (the branding preset package
|
||||||
|
# takes care of applying the presets in its %%posttrans in this case).
|
||||||
|
%systemd_pre remote-fs.target
|
||||||
|
%systemd_pre getty@.service
|
||||||
|
%systemd_pre systemd-timesyncd.service
|
||||||
|
%systemd_pre systemd-journald-audit.socket
|
||||||
|
fi
|
||||||
|
|
||||||
%post
|
%post
|
||||||
# Make /etc/machine-id an empty file during package installation. On the first
|
# Make /etc/machine-id an empty file during package installation. On the first
|
||||||
@ -995,12 +1000,6 @@ pam-config --add --systemd || :
|
|||||||
%ldconfig
|
%ldconfig
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# 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-journal.conf
|
|
||||||
%sysusers_create systemd-timesync.conf
|
|
||||||
|
|
||||||
systemctl daemon-reexec || :
|
systemctl daemon-reexec || :
|
||||||
|
|
||||||
# Reexecute user manager instances (if any). It is asynchronous but it shouldn't
|
# Reexecute user manager instances (if any). It is asynchronous but it shouldn't
|
||||||
@ -1017,13 +1016,28 @@ systemctl daemon-reexec || :
|
|||||||
#
|
#
|
||||||
# systemctl kill --kill-who=main --signal=SIGRTMIN+25 "user@*.service" || :
|
# systemctl kill --kill-who=main --signal=SIGRTMIN+25 "user@*.service" || :
|
||||||
|
|
||||||
if [ "$1" -eq 1 ]; then
|
if [ $1 -eq 1 ]; then
|
||||||
# Persistent journal is the default
|
# Persistent journal is the default
|
||||||
mkdir -p %{_localstatedir}/log/journal
|
mkdir -p %{_localstatedir}/log/journal
|
||||||
fi
|
fi
|
||||||
|
|
||||||
%journal_catalog_update
|
%if %{without filetriggers}
|
||||||
%tmpfiles_create
|
# During package installation, the followings are for config files shipped by
|
||||||
|
# packages that got installed before systemd and by the systemd main package
|
||||||
|
# itself. During update they deal with files that could have been introduced by
|
||||||
|
# new versions of systemd.
|
||||||
|
systemd-sysusers || :
|
||||||
|
systemd-tmpfiles --create || :
|
||||||
|
journalctl --update-catalog || :
|
||||||
|
%endif
|
||||||
|
|
||||||
|
if [ $1 -gt 1 ]; then
|
||||||
|
# See comments for %%systemd_pre in %%pre.
|
||||||
|
%systemd_post remote-fs.target
|
||||||
|
%systemd_post getty@.service
|
||||||
|
%systemd_post systemd-timesyncd.service
|
||||||
|
%systemd_post systemd-journald-audit.socket
|
||||||
|
fi
|
||||||
|
|
||||||
# v228 wrongly set world writable suid root permissions on timestamp files used
|
# v228 wrongly set world writable suid root permissions on timestamp files used
|
||||||
# by permanent timers. Fix the timestamps that might have been created by the
|
# by permanent timers. Fix the timestamps that might have been created by the
|
||||||
|
Loading…
Reference in New Issue
Block a user