Add Conflicts for pam version before the split

I had an upgrade failure where pam itself was blocked:
 Problem: cannot install both libnsl2-2.0.0-3.fc36.x86_64 and libnsl2-1.3.0-4.fc35.x86_64
  - package pam-1.5.2-11.fc36.x86_64 requires libnsl.so.3()(64bit), but none of the providers can be installed
  - package pam-1.5.2-11.fc36.x86_64 requires libnsl.so.3(LIBNSL_2.0)(64bit), but none of the providers can be installed
  - package python26-2.6.9-21.fc31.x86_64 requires libnsl.so.2()(64bit), but none of the providers can be installed
  - package python26-2.6.9-21.fc31.x86_64 requires libnsl.so.2(LIBNSL_1.0)(64bit), but none of the providers can be installed
  - cannot install the best update candidate for package pam-1.5.2-7.fc35.x86_64
  - problem with installed package python26-2.6.9-21.fc31.x86_64

So dnf would try to just install pam-libs, and that failed in the transaction
test after downloading all the packages. Let's try to fail early in such a case.

With the Conflicts:
 Problem 1: cannot install both libnsl2-2.0.0-3.fc36.x86_64 and libnsl2-1.3.0-4.fc35.x86_64
  - package pam-1.5.2-12.fc36.x86_64 requires libnsl.so.3()(64bit), but none of the providers can be installed
  - package pam-1.5.2-12.fc36.x86_64 requires libnsl.so.3(LIBNSL_2.0)(64bit), but none of the providers can be installed
  - package python26-2.6.9-21.fc31.x86_64 requires libnsl.so.2()(64bit), but none of the providers can be installed
  - package python26-2.6.9-21.fc31.x86_64 requires libnsl.so.2(LIBNSL_1.0)(64bit), but none of the providers can be installed
  - cannot install the best update candidate for package pam-1.5.2-7.fc35.x86_64
  - problem with installed package python26-2.6.9-21.fc31.x86_64
 Problem 2: problem with installed package pam-devel-1.5.2-7.fc35.i686
  - pam-devel-1.5.2-7.fc35.i686 has inferior architecture
  - pam-devel-1.5.2-11.fc36.i686 has inferior architecture
  - cannot install both pam-devel-1.5.2-12.fc36.x86_64 and pam-devel-1.5.2-7.fc35.x86_64
  - cannot install both pam-devel-1.5.2-12.fc36.x86_64 and pam-devel-1.5.2-11.fc36.x86_64
  - cannot install the best update candidate for package pam-devel-1.5.2-7.fc35.x86_64
===========================================================================================
 Package             Architecture     Version                 Repository              Size
===========================================================================================
Skipping packages with conflicts:
(add '--best --allowerasing' to command line to force their upgrade):
 libnsl2             x86_64           2.0.0-3.fc36            fedora                  30 k
 pam-devel           x86_64           1.5.2-11.fc36           fedora                  97 k
 pam-devel           x86_64           1.5.2-12.fc36           @commandline            97 k
Skipping packages with broken dependencies:
 pam                 x86_64           1.5.2-12.fc36           @commandline           519 k
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2022-02-27 16:47:16 +01:00
parent f769973015
commit bb75480a15

View File

@ -4,7 +4,7 @@
Summary: An extensible library which provides authentication for applications Summary: An extensible library which provides authentication for applications
Name: pam Name: pam
Version: 1.5.2 Version: 1.5.2
Release: 11%{?dist} Release: 12%{?dist}
# The library is BSD licensed with option to relicense as GPLv2+ # The library is BSD licensed with option to relicense as GPLv2+
# - this option is redundant as the BSD license allows that anyway. # - this option is redundant as the BSD license allows that anyway.
# pam_timestamp, pam_loginuid, and pam_console modules are GPLv2+. # pam_timestamp, pam_loginuid, and pam_console modules are GPLv2+.
@ -95,6 +95,9 @@ documentation in txt and html format.
%package libs %package libs
Summary: Shared libraries of the PAM package Summary: Shared libraries of the PAM package
# Make sure that if we don't try to upgrade -libs but not the
# main pam package and get file conflicts:
Conflicts: pam < 1.5.2-11
%description libs %description libs
PAM (Pluggable Authentication Modules) is a system security tool that PAM (Pluggable Authentication Modules) is a system security tool that
@ -356,6 +359,9 @@ done
%{_pam_libdir}/libpam_misc.so.%{so_ver}* %{_pam_libdir}/libpam_misc.so.%{so_ver}*
%changelog %changelog
* Sun Feb 27 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.5.2-12
- Add Conflicts for pam version before the split
* Thu Feb 17 2022 Björn Esser <besser82@fedoraproject.org> - 1.5.2-11 * Thu Feb 17 2022 Björn Esser <besser82@fedoraproject.org> - 1.5.2-11
- Split shared libraries into pam-libs package (#2055572) - Split shared libraries into pam-libs package (#2055572)