Bug 2213765 - RPM transaction conflicts between nss-3.90.0-1.fc39.x86_64 and nspr-devel-4.35.0-6.fc39.x86_64
Summary: RPM transaction conflicts between nss-3.90.0-1.fc39.x86_64 and nspr-devel-4.3...
Keywords:
Status: CLOSED COMPLETED
Alias: None
Product: Fedora
Classification: Fedora
Component: nss
Version: 39
Hardware: Unspecified
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Bob Relyea
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-06-09 09:08 UTC by Miro Hrončok
Modified: 2023-08-16 08:33 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-08-16 08:33:28 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker FC-855 0 None None None 2023-06-09 09:08:48 UTC

Description Miro Hrončok 2023-06-09 09:08:27 UTC
There are some file conflicts when I try to install nss-devel and nspr-devel. This happens when building e.g. vinagre or qt-virt-manager in Rawhide.

Reproducible: Always

Steps to Reproduce:
1. mock -r fedora-rawhide-x86_64 init
2. mock -r fedora-rawhide-x86_64 --enablerepo=local install nss-devel nspr-devel
Actual Results:  
Error: Transaction test error:
  file /usr/share/man/man1/setup-nsssysinit.1.gz conflicts between attempted installs of nss-sysinit-3.90.0-1.fc39.x86_64 and nspr-devel-4.35.0-6.fc39.x86_64
  file /usr/share/man/man5/cert9.db.5.gz conflicts between attempted installs of nss-3.90.0-1.fc39.x86_64 and nspr-devel-4.35.0-6.fc39.x86_64
  file /usr/share/man/man5/key4.db.5.gz conflicts between attempted installs of nss-3.90.0-1.fc39.x86_64 and nspr-devel-4.35.0-6.fc39.x86_64
  file /usr/share/man/man5/pkcs11.txt.5.gz conflicts between attempted installs of nss-3.90.0-1.fc39.x86_64 and nspr-devel-4.35.0-6.fc39.x86_64
  file /usr/share/man/man1/nss-config.1.gz conflicts between attempted installs of nss-devel-3.90.0-1.fc39.x86_64 and nspr-devel-4.35.0-6.fc39.x86_64



Expected Results:  
Packages insatlled.

Comment 1 Miro Hrončok 2023-06-09 09:24:10 UTC
Note that actually disabling the mirrored repository works:

$ mock -r fedora-rawhide-x86_64 --disablerepo='*' --enablerepo=local install nss-devel nspr-devel
...
Installed:
 ...
 nspr-devel-4.35.0-1.fc39.x86_64
 nspr-4.35.0-1.fc39.x86_64
 nss-devel-3.90.0-1.fc39.x86_64
 nss-softokn-devel-3.90.0-1.fc39.x86_64
 nss-softokn-freebl-devel-3.90.0-1.fc39.x86_64
 nss-softokn-freebl-3.90.0-1.fc39.x86_64
 nss-softokn-3.90.0-1.fc39.x86_64
 nss-sysinit-3.90.0-1.fc39.x86_64
 nss-util-devel-3.90.0-1.fc39.x86_64
 nss-util-3.90.0-1.fc39.x86_64
 nss-3.90.0-1.fc39.x86_64
 ...

The problem seems to be that nspr-devel is downgraded and not upgraded in the recent build. So mock sees the "higher version-release" (but older) build from the mirrored repository.


There are 2 fixes needed here:

 - explicit Conflict and/or versioned Requires need to be added to avoid the implicit file conflict
 - the Release of the nspr subpackages should be maintained explicitly and only reset to 1%{?dist} when the version actually inclreases

Comment 2 Miro Hrončok 2023-06-09 09:26:19 UTC
As far as the actual conflicts go, I am not sure this is actually intended:

  %files -n nspr-devel
  ...
  %{_mandir}/man*/*

Why would nspr-devel contain all the mapages?

Comment 3 Frantisek Krenzelok 2023-06-09 11:36:11 UTC
Hi Miro,

Thanks for reporting this!
The mistake was caused by me, I am working on a fix

Comment 4 Frantisek Krenzelok 2023-06-12 08:19:38 UTC
The new build is complete, I have tested according to reproducibility steps and it successfully installed the packages.
@mhr Could you please also check to make sure.

Comment 5 Miro Hrončok 2023-06-12 08:45:02 UTC
nspr packages are now 4.35.0-8.fc39 which fixes the immediate problem.

However, why are all the manual pages duplicated in nspr-devel?

  %files -n nspr-devel
  ...
  %{_mandir}/man*/*

Comment 6 Frantisek Krenzelok 2023-06-12 09:20:02 UTC
@

Comment 7 Bob Relyea 2023-06-12 18:26:20 UTC
Sigh. looks like a mistake when NSS and NSPR packages were merged.

We'll need to explicitly name the  man pages for each package (unless there's a way to generate a list programmatically when we 'install' them). We install them by hand IIRC because the upstream makefiles don't really have 'make install'.

Comment 8 Bob Relyea 2023-06-12 18:38:15 UTC
OK, I looks like NSS is correctly explicitly grabbing it's man pages. NSPR only has one man page, so we should explicitly grab it. Look's like I only fixed it in RHEL-9, which is correct now:

%doc %{_mandir}/man1/nspr-config.*

Comment 9 Fedora Release Engineering 2023-08-16 08:10:26 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 39 development cycle.
Changing version to 39.

Comment 10 Frantisek Krenzelok 2023-08-16 08:33:28 UTC
The doc pages have been fixed in fedora supported versions.


Note You need to log in before you can comment on or make changes to this bug.