diff --git a/python-rtslib-fb.changes b/python-rtslib-fb.changes index 99895f0..25afc5e 100644 --- a/python-rtslib-fb.changes +++ b/python-rtslib-fb.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Tue Aug 24 07:35:46 UTC 2021 - Stefan Schubert + +- Use libalternatives instead of update-alternatives. + ------------------------------------------------------------------- Sat Nov 7 18:05:32 UTC 2020 - Lee Duncan diff --git a/python-rtslib-fb.spec b/python-rtslib-fb.spec index 50ecdce..bbd0539 100644 --- a/python-rtslib-fb.spec +++ b/python-rtslib-fb.spec @@ -1,7 +1,7 @@ # # spec file for package python-rtslib-fb # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,6 +16,12 @@ # +%if 0%{?suse_version} > 1500 +%bcond_without libalternatives +%else +%bcond_with libalternatives +%endif + %define dbdir %{_sysconfdir}/target %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-rtslib-fb @@ -38,8 +44,12 @@ Requires: python-pyudev %define oldpython python %define cpkg %{oldpython}-rtslib-fb-common Requires: %{cpkg} +%if %{with libalternatives} +Requires: alts +%else Requires(post): update-alternatives Requires(postun): update-alternatives +%endif Provides: python-rtslib = %{version}-%{release} Obsoletes: python-rtslib < %{version} %if 0%{?sle_version} >= 150000 @@ -79,7 +89,14 @@ python2-rtslib-fb and python3-rtslib-fb. %install %python_install -%python_clone -a %{buildroot}/%{_bindir}/targetctl +%if ! %{with libalternatives} + %python_clone -a %{buildroot}/%{_bindir}/targetctl +%else + %python_clone %{buildroot}%{_bindir}/targetctl + ln -sf %{_bindir}/alts %{buildroot}%{_bindir}/targetctl + mkdir -p %{buildroot}%{_datadir}/libalternatives/targetctl + %python_expand echo "binary=%{_bindir}/targetctl-%{$python_version}" > %{buildroot}%{_datadir}/libalternatives/targetctl/10%{$python_version_nodots}.conf +%endif %fdupes %{buildroot} install -d -m755 %{buildroot}%{_mandir}/man5 install -m644 doc/saveconfig.json.5 %{buildroot}%{_mandir}/man5 @@ -94,15 +111,25 @@ install -d -m755 %{buildroot}%{_sbindir} ln -s %{_sbindir}/service %{buildroot}/%{_sbindir}/rctarget %post +%if ! %{with libalternatives} %python_install_alternative targetctl +%endif %{service_add_post target.service} %postun +%if ! %{with libalternatives} %python_uninstall_alternative targetctl +%endif %{service_del_postun target.service} %pre %{service_add_pre target.service} +%if %{with libalternatives} +# removing old update-alternatives entries +if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] ; then + %python_uninstall_alternative targetctl +fi +%endif %preun %{stop_on_removal target} @@ -121,7 +148,15 @@ ln -s %{_sbindir}/service %{buildroot}/%{_sbindir}/rctarget %{service_del_preun target.service} %files %{python_files} +%if ! 0%{with libalternatives} %python_alternative %{_bindir}/targetctl +%else +%dir %{_datadir}/libalternatives +%dir %{_datadir}/libalternatives/targetctl +%{_datadir}/libalternatives/targetctl/10%python_version_nodots.conf +%{_bindir}/targetctl +%{_bindir}/targetctl-%python_version +%endif %{python_sitelib}/* %files -n %{cpkg}