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.
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
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?
Hi Miro, Thanks for reporting this! The mistake was caused by me, I am working on a fix
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.
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*/*
@
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'.
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.*
This bug appears to have been reported against 'rawhide' during the Fedora Linux 39 development cycle. Changing version to 39.
The doc pages have been fixed in fedora supported versions.