diff --git a/SPECS/python38.spec b/SPECS/python38.spec index 9375807..7c9dc69 100644 --- a/SPECS/python38.spec +++ b/SPECS/python38.spec @@ -17,7 +17,7 @@ URL: https://www.python.org/ #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} -Release: 3%{?dist} +Release: 4%{?dist} License: Python # Exclude i686 arch. Due to a modularity issue it's being added to the @@ -395,10 +395,10 @@ Provides: python%{pybasever} = %{version}-%{release} # the possible alternatives Provides: alternative-for(python) -# Runtime require alternatives -Requires: %{_sbindir}/alternatives -Requires(post): %{_sbindir}/alternatives -Requires(postun): %{_sbindir}/alternatives +# Require alternatives version that implements the --keep-foreign flag +Requires: alternatives >= 1.19.1-1 +Requires(post): alternatives >= 1.19.1-1 +Requires(postun): alternatives >= 1.19.1-1 %if %{without flatpackage} @@ -525,6 +525,9 @@ BuildRequires: python-rpm-macros # But we want them when packages BuildRequire python3-devel Requires: (python-rpm-macros if rpm-build) Requires: (python3-rpm-macros if rpm-build) + +# Require alternatives version that implements the --keep-foreign flag +Requires(postun): alternatives >= 1.19.1-1 # python38 installs the alternatives master symlink to which we attach a slave Requires(post): python38 Requires(postun): python38 @@ -563,6 +566,8 @@ Requires: %{name}-tkinter = %{version}-%{release} %{?python_provide:%python_provide python38-idle} +# Require alternatives version that implements the --keep-foreign flag +Requires(postun): alternatives >= 1.19.1-1 # python38 installs the alternatives master symlink to which we attach a slave Requires(post): python38 Requires(postun): python38 @@ -619,6 +624,9 @@ Requires: %{name}-devel%{?_isa} = %{version}-%{release} Requires: %{name}-test%{?_isa} = %{version}-%{release} Requires: %{name}-tkinter%{?_isa} = %{version}-%{release} Requires: %{name}-idle%{?_isa} = %{version}-%{release} + +# Require alternatives version that implements the --keep-foreign flag +Requires(postun): alternatives >= 1.19.1-1 # python38 installs the alternatives master symlink to which we attach a slave Requires(post): python38 Requires(postun): python38 @@ -1238,15 +1246,15 @@ fi %postun # Do this only during uninstall process (not during update) if [ $1 -eq 0 ]; then - alternatives --remove python \ + alternatives --keep-foreign --remove python \ %{_bindir}/python3.8 - alternatives --remove python3 \ + alternatives --keep-foreign --remove python3 \ %{_bindir}/python3.8 # Remove link python → python3 if no other python3.* exists if ! alternatives --display python3 > /dev/null; then - alternatives --remove python \ + alternatives --keep-foreign --remove python \ %{_bindir}/python3 fi fi @@ -1261,7 +1269,7 @@ alternatives --add-slave python3 %{_bindir}/python3.8 \ %postun devel # Do this only during uninstall process (not during update) if [ $1 -eq 0 ]; then - alternatives --remove-slave python3 %{_bindir}/python3.8 \ + alternatives --keep-foreign --remove-slave python3 %{_bindir}/python3.8 \ python3-config fi @@ -1279,9 +1287,9 @@ alternatives --add-slave python3 %{_bindir}/python3.8 \ %postun debug # Do this only during uninstall process (not during update) if [ $1 -eq 0 ]; then - alternatives --remove-slave python3 %{_bindir}/python3.8 \ + alternatives --keep-foreign --remove-slave python3 %{_bindir}/python3.8 \ python3-debug - alternatives --remove-slave python3 %{_bindir}/python3.8 \ + alternatives --keep-foreign --remove-slave python3 %{_bindir}/python3.8 \ python3-debug-config fi @@ -1295,7 +1303,7 @@ alternatives --add-slave python3 %{_bindir}/python3.8 \ %postun idle # Do this only during uninstall process (not during update) if [ $1 -eq 0 ]; then - alternatives --remove-slave python3 %{_bindir}/python3.8 \ + alternatives --keep-foreign --remove-slave python3 %{_bindir}/python3.8 \ idle3 fi @@ -1807,6 +1815,10 @@ fi # ====================================================== %changelog +* Mon Aug 02 2021 Tomas Orsava - 3.8.8-4 +- Adjusted the postun scriptlets to enable upgrading to RHEL 9 +- Resolves: rhbz#1933055 + * Tue Jul 27 2021 Charalampos Stratakis - 3.8.8-3 - Security fix for CVE-2021-29921: Leading zeros in IPv4 addresses are no longer tolerated Resolves: rhbz#1957458