Do not use dynamic spec generation for non-upstream builds
This reverts commit ac9c438e27.
This commit is contained in:
parent
6201755b36
commit
6c7c4a510d
2 changed files with 105 additions and 0 deletions
18
systemd.spec
18
systemd.spec
|
|
@ -73,6 +73,9 @@ Source0: https://github.com/systemd/systemd/archive/%{commit}/%{name}-%{s
|
|||
%else
|
||||
Source0: https://github.com/systemd/systemd/archive/v%{version_no_tilde}/%{name}-%{version_no_tilde}.tar.gz
|
||||
%endif
|
||||
# This file must be available before %%prep.
|
||||
# It is generated during systemd build and can be found at build/src/rpm/triggers.systemd.sh.
|
||||
Source1: triggers.systemd
|
||||
Source2: split-files.py
|
||||
Source3: purge-nobody-user
|
||||
Source4: test_sysusers_defined.py
|
||||
|
|
@ -899,8 +902,19 @@ CONFIGURE_OPTS=(
|
|||
|
||||
%meson_build
|
||||
|
||||
# If dynamic spec generation is available, directly pick up the triggers
|
||||
# from the build directory for upstream builds.
|
||||
%if %{with upstream} && (0%{?fedora} >= 41 || 0%{?rhel} >= 11)
|
||||
# Include the triggers
|
||||
cp %{_vpath_builddir}/src/rpm/triggers.systemd.sh %{specpartsdir}/triggers.specpart
|
||||
%else
|
||||
new_triggers=%{_vpath_builddir}/src/rpm/triggers.systemd.sh
|
||||
if ! diff -u %{SOURCE1} ${new_triggers}; then
|
||||
echo -e "\n\n\nWARNING: triggers.systemd in Source1 is different!"
|
||||
echo -e " cp $PWD/${new_triggers} %{SOURCE1}\n\n\n"
|
||||
sleep 5
|
||||
fi
|
||||
%endif
|
||||
|
||||
sed -r 's|/system/|/user/|g' %{SOURCE16} >10-timeout-abort.conf.user
|
||||
|
||||
|
|
@ -1107,6 +1121,10 @@ meson test -C %{_vpath_builddir} -t 6 --print-errorlogs
|
|||
|
||||
#############################################################################################
|
||||
|
||||
%if %{without upstream} || (0%{?fedora} < 41 && 0%{?rhel} < 11)
|
||||
%include %{SOURCE1}
|
||||
%endif
|
||||
|
||||
# This macro is newly added upstream so we can't rely on it being always being available
|
||||
# in the systemd-rpm-macros yet so we define it ourselves.
|
||||
%global systemd_posttrans_with_restart() \
|
||||
|
|
|
|||
87
triggers.systemd
Normal file
87
triggers.systemd
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
# -*- Mode: rpm-spec; indent-tabs-mode: nil -*- */
|
||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
#
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Copyright 2018 Neal Gompa
|
||||
|
||||
# The contents of this are an example to be copied into systemd.spec.
|
||||
#
|
||||
# Minimum rpm version supported: 4.14.0
|
||||
|
||||
%transfiletriggerin -P 900900 -- /usr/lib/systemd/system /etc/systemd/system
|
||||
# This script will run after any package is initially installed or
|
||||
# upgraded. We care about the case where a package is initially
|
||||
# installed, because other cases are covered by the *un scriptlets,
|
||||
# so sometimes we will reload needlessly.
|
||||
/usr/lib/systemd/systemd-update-helper system-reload-restart || :
|
||||
|
||||
%transfiletriggerin -P 900899 -- /usr/lib/systemd/user /etc/systemd/user
|
||||
/usr/lib/systemd/systemd-update-helper user-reload-restart || :
|
||||
|
||||
%transfiletriggerpostun -P 1000100 -- /usr/lib/systemd/system /etc/systemd/system
|
||||
# On removal, we need to run daemon-reload after any units have been
|
||||
# removed.
|
||||
# On upgrade, we need to run daemon-reload after any new unit files
|
||||
# have been installed, but before %postun scripts in packages get
|
||||
# executed.
|
||||
/usr/lib/systemd/systemd-update-helper system-reload || :
|
||||
|
||||
%transfiletriggerpostun -P 1000099 -- /usr/lib/systemd/user /etc/systemd/user
|
||||
# Execute daemon-reload in user managers.
|
||||
/usr/lib/systemd/systemd-update-helper user-reload || :
|
||||
|
||||
%transfiletriggerpostun -P 10000 -- /usr/lib/systemd/system /etc/systemd/system
|
||||
# We restart remaining system services that should be restarted here.
|
||||
/usr/lib/systemd/systemd-update-helper system-restart || :
|
||||
|
||||
%transfiletriggerpostun -P 9999 -- /usr/lib/systemd/user /etc/systemd/user
|
||||
# We restart remaining user services that should be restarted here.
|
||||
/usr/lib/systemd/systemd-update-helper user-restart || :
|
||||
|
||||
%transfiletriggerin -P 1000700 -- /usr/lib/sysusers.d
|
||||
# This script will process files installed in /usr/lib/sysusers.d to create
|
||||
# specified users automatically. The priority is set such that it
|
||||
# will run before the tmpfiles file trigger.
|
||||
systemd-sysusers || :
|
||||
|
||||
%transfiletriggerin -P 1000700 udev -- /usr/lib/udev/hwdb.d
|
||||
# This script will automatically invoke hwdb update if files have been
|
||||
# installed or updated in /usr/lib/udev/hwdb.d.
|
||||
systemd-hwdb update || :
|
||||
|
||||
%transfiletriggerin -P 1000700 -- /usr/lib/systemd/catalog
|
||||
# This script will automatically invoke journal catalog update if files
|
||||
# have been installed or updated in /usr/lib/systemd/catalog.
|
||||
journalctl --update-catalog || :
|
||||
|
||||
%transfiletriggerin -P 1000700 -- /usr/lib/binfmt.d
|
||||
# This script will automatically apply binfmt rules if files have been
|
||||
# installed or updated in /usr/lib/binfmt.d.
|
||||
if test -d "/run/systemd/system"; then
|
||||
# systemd-binfmt might fail if binfmt_misc kernel module is not loaded
|
||||
# during install
|
||||
/usr/lib/systemd/systemd-binfmt || :
|
||||
fi
|
||||
|
||||
%transfiletriggerin -P 1000600 -- /usr/lib/tmpfiles.d
|
||||
# This script will process files installed in /usr/lib/tmpfiles.d to create
|
||||
# tmpfiles automatically. The priority is set such that it will run
|
||||
# after the sysusers file trigger, but before any other triggers.
|
||||
if test -d "/run/systemd/system"; then
|
||||
systemd-tmpfiles --create || :
|
||||
fi
|
||||
|
||||
%transfiletriggerin -P 1000600 udev -- /usr/lib/udev/rules.d
|
||||
# This script will automatically update udev with new rules if files
|
||||
# have been installed or updated in /usr/lib/udev/rules.d.
|
||||
if test -e /run/udev/control; then
|
||||
udevadm control --reload || :
|
||||
fi
|
||||
|
||||
%transfiletriggerin -P 1000500 -- /usr/lib/sysctl.d
|
||||
# This script will automatically apply sysctl rules if files have been
|
||||
# installed or updated in /usr/lib/sysctl.d.
|
||||
if test -d "/run/systemd/system"; then
|
||||
/usr/lib/systemd/systemd-sysctl || :
|
||||
fi
|
||||
Loading…
Reference in a new issue