Resolves: rhbz2025054

(Fix use of sysuser.d/* for user/group management)
This commit is contained in:
Martin Cermak 2021-11-25 12:46:18 +01:00
parent 57cbcfc414
commit 635b4ac320
1 changed files with 39 additions and 7 deletions

View File

@ -88,9 +88,37 @@
# To avoid testsuite/*/*.stp has shebang which doesn't start with '/'
%define __brp_mangle_shebangs_exclude_from .stp$
%define _systemtap_runtime_preinstall \
# See systemd-sysusers(8) sysusers.d(5)\
\
g stapusr 156\
g stapsys 157\
g stapdev 158
%define _systemtap_server_preinstall \
# See systemd-sysusers(8) sysusers.d(5)\
\
g stap-server -\
u stap-server - "systemtap compiler server" /var/lib/stap-server /sbin/nologin\
m stap-server stap-server
%define _systemtap_testsuite_preinstall \
# See systemd-sysusers(8) sysusers.d(5)\
\
u stapusr - "systemtap testsuite user" / /sbin/nologin\
u stapsys - "systemtap testsuite user" / /sbin/nologin\
u stapdev - "systemtap testsuite user" / /sbin/nologin\
m stapusr stapusr\
m stapsys stapusr\
m stapsys stapsys\
m stapdev stapusr\
m stapdev stapdev
Name: systemtap
Version: 4.6
Release: 1%{?release_override}%{?dist}
Release: 2%{?release_override}%{?dist}
# for version, see also configure.ac
@ -660,9 +688,10 @@ for dir in $(ls -1d $RPM_BUILD_ROOT%{_mandir}/{??,??_??}) ; do
done
%if %{with_sysusers}
install -p -D -m 0644 systemtap-runtime.sysusers %{buildroot}%{_sysusersdir}/systemtap-runtime.conf
install -p -D -m 0644 systemtap-server.sysusers %{buildroot}%{_sysusersdir}/systemtap-server.conf
install -p -D -m 0644 systemtap-testsuite.sysusers %{buildroot}%{_sysusersdir}/systemtap-testsuite.conf
mkdir -p %{buildroot}%{_sysusersdir}
echo '%_systemtap_runtime_preinstall' > %{buildroot}%{_sysusersdir}/systemtap-runtime.conf
echo '%_systemtap_server_preinstall' > %{buildroot}%{_sysusersdir}/systemtap-server.conf
echo '%_systemtap_testsuite_preinstall' > %{buildroot}%{_sysusersdir}/systemtap-testsuite.conf
%endif
@ -790,7 +819,7 @@ pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{python3_sitearch
%pre runtime
%if %{with_sysusers}
%sysusers_create_compat $RPM_BUILD_ROOT/systemtap-runtime.sysusers
echo '%_systemtap_runtime_preinstall' | systemd-sysusers --replace=%{_sysusersdir}/systemtap-runtime.conf -
%else
getent group stapusr >/dev/null || groupadd -f -g 156 -r stapusr
getent group stapsys >/dev/null || groupadd -f -g 157 -r stapsys
@ -800,7 +829,7 @@ exit 0
%pre server
%if %{with_sysusers}
%sysusers_create_compat $RPM_BUILD_ROOT/systemtap-server.sysusers
echo '%_systemtap_server_preinstall' | systemd-sysusers --replace=%{_sysusersdir}/systemtap-server.conf -
%else
getent group stap-server >/dev/null || groupadd -f -g 155 -r stap-server
getent passwd stap-server >/dev/null || \
@ -811,7 +840,7 @@ exit 0
%pre testsuite
%if %{with_sysusers}
%sysusers_create_compat $RPM_BUILD_ROOT/systemtap-testsuite.sysusers
echo '%_systemtap_testsuite_preinstall' | systemd-sysusers --replace=%{_sysusersdir}/systemtap-testsuite.conf -
%else
getent passwd stapusr >/dev/null || \
useradd -c "Systemtap 'stapusr' User" -g stapusr -r -s /sbin/nologin stapusr
@ -1244,6 +1273,9 @@ exit 0
# PRERELEASE
%changelog
* Thu Nov 25 2021 Martin Cermak <mcermak@redhat.com> - 4.6.2
- rhbz2012907: Fix use of sysuser.d/* for user/group management
* Fri Nov 19 2021 Frank Ch. Eigler <fche@redhat.com> - 4.6-1
- Upstream release.