Description of problem: When trying the latest updates, there's a conflict between the two versions of libcdio: file /usr/share/man/man1/cd-drive.1.gz from install of libcdio-0.80-2.fc10.i386 conflicts with file from package libcdio-0.80-2.fc10.x86_64 file /usr/share/man/man1/cd-info.1.gz from install of libcdio-0.80-2.fc10.i386 conflicts with file from package libcdio-0.80-2.fc10.x86_64 file /usr/share/man/man1/iso-info.1.gz from install of libcdio-0.80-2.fc10.i386 conflicts with file from package libcdio-0.80-2.fc10.x86_64 file /usr/share/man/man1/iso-read.1.gz from install of libcdio-0.80-2.fc10.i386 conflicts with file from package libcdio-0.80-2.fc10.x86_64 Version-Release number of selected component (if applicable): libcdio-0.80.2 How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
Thanks for the bug report. Fixed in 0.80-3 which has just been built.
Looks like the file conflict still exists: Transaction Check Error: file /usr/share/man/man1/cd-drive.1.gz conflicts between attempted installs of libcdio-0.80-3.fc10.x86_64 and libcdio-0.80-3.fc10.i386 file /usr/share/man/man1/cd-info.1.gz conflicts between attempted installs of libcdio-0.80-3.fc10.x86_64 and libcdio-0.80-3.fc10.i386 file /usr/share/man/man1/iso-info.1.gz conflicts between attempted installs of libcdio-0.80-3.fc10.x86_64 and libcdio-0.80-3.fc10.i386 file /usr/share/man/man1/iso-read.1.gz conflicts between attempted installs of libcdio-0.80-3.fc10.x86_64 and libcdio-0.80-3.fc10.i386
Thanks for the information. Although I touched all man pages using another file as reference, the file times in the RPM where still wrong because make install changed all the timestamps again. In this release I am touching the files after make install and this time I have also verified that the files inside of the RPM have the correct timestamp. I hope it is really fixed this time. I have just requested a build for 0_80-4_fc10. Let me know if it still is broken.
It's still broken with -4...
I finally got access to x86_64 system and can install it without any problems. Both the i386 and x86_64 versions. I tried it with rpm and yum and both installation succeeded. What is the exact command you are using to update/install it?
[erik@localhost ~]$ sudo yum clean all Loaded plugins: refresh-packagekit Cleaning up Everything [erik@localhost ~]$ sudo yum update Loaded plugins: refresh-packagekit <..retrieving repodata cut..> Finished Setting up Update Process Resolving Dependencies --> Running transaction check ---> Package libcdio.i386 0:0.80-4.fc10 set to be updated ---> Package libcdio.x86_64 0:0.80-4.fc10 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Updating: libcdio i386 0.80-4.fc10 rawhide 275 k libcdio x86_64 0.80-4.fc10 rawhide 279 k Transaction Summary ================================================================================ Install 0 Package(s) Update 2 Package(s) Remove 0 Package(s) Total download size: 554 k Downloading Packages: (1/2): libcdio-0.80-4.fc10.i386.rpm | 275 kB 00:00 (2/2): libcdio-0.80-4.fc10.x86_64.rpm | 279 kB 00:00 -------------------------------------------------------------------------------- Total 260 kB/s | 554 kB 00:02 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Check Error: file /usr/share/man/man1/cd-drive.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 file /usr/share/man/man1/cd-info.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 file /usr/share/man/man1/iso-info.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 file /usr/share/man/man1/iso-read.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 Error Summary ------------- [erik@localhost ~]$
Hmm... What happens if you remove both libcdio's before installing it again?
Still the same [erik@localhost ~]$ sudo rpm -e libcdio fout: "libcdio" specifies multiple packages: libcdio-0.80-2.fc10.x86_64 libcdio-0.80-2.fc10.i386 [erik@localhost ~]$ sudo rpm -e libcdio.i386 libcdio.x86_64 fout: Failed dependencies: libcdio.so.7 is needed by (geïnstalleerd) libcddb-1.3.0-4.fc9.i386 libcdio.so.7 is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.i386 libcdio.so.7(CDIO_7) is needed by (geïnstalleerd) libcddb-1.3.0-4.fc9.i386 libcdio.so.7(CDIO_7) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.i386 libcdio_cdda.so.0 is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.i386 libcdio_cdda.so.0(CDIO_CDDA_0) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.i386 libcdio_paranoia.so.0 is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.i386 libcdio_paranoia.so.0(CDIO_PARANOIA_0) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.i386 libcdio.so.7()(64bit) is needed by (geïnstalleerd) libcddb-1.3.0-4.fc9.x86_64 libcdio.so.7()(64bit) is needed by (geïnstalleerd) gstreamer-plugins-ugly-0.10.9-1.fc10.x86_64 libcdio.so.7()(64bit) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.x86_64 libcdio.so.7()(64bit) is needed by (geïnstalleerd) gvfs-1.0.1-4.fc10.x86_64 libcdio.so.7(CDIO_7)(64bit) is needed by (geïnstalleerd) libcddb-1.3.0-4.fc9.x86_64 libcdio.so.7(CDIO_7)(64bit) is needed by (geïnstalleerd) gstreamer-plugins-ugly-0.10.9-1.fc10.x86_64 libcdio.so.7(CDIO_7)(64bit) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.x86_64 libcdio_cdda.so.0()(64bit) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.x86_64 libcdio_cdda.so.0()(64bit) is needed by (geïnstalleerd) gvfs-1.0.1-4.fc10.x86_64 libcdio_cdda.so.0(CDIO_CDDA_0)(64bit) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.x86_64 libcdio_cdda.so.0(CDIO_CDDA_0)(64bit) is needed by (geïnstalleerd) gvfs-1.0.1-4.fc10.x86_64 libcdio_paranoia.so.0()(64bit) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.x86_64 libcdio_paranoia.so.0()(64bit) is needed by (geïnstalleerd) gvfs-1.0.1-4.fc10.x86_64 libcdio_paranoia.so.0(CDIO_PARANOIA_0)(64bit) is needed by (geïnstalleerd) vlc-core-0.9.3-3.fc10.x86_64 libcdio_paranoia.so.0(CDIO_PARANOIA_0)(64bit) is needed by (geïnstalleerd) gvfs-1.0.1-4.fc10.x86_64 [erik@localhost ~]$ sudo rpm -e libcdio.i386 libcdio.x86_64 --nodeps [erik@localhost ~]$ sudo yum install libcdio.i386 libcdio.x86_64 Loaded plugins: refresh-packagekit Reducing RPM Fusion for Fedora 9.92 - Free - Rawhide to included packages only Finished Setting up Install Process Parsing package install arguments Resolving Dependencies --> Running transaction check ---> Package libcdio.i386 0:0.80-4.fc10 set to be updated ---> Package libcdio.x86_64 0:0.80-4.fc10 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: libcdio i386 0.80-4.fc10 rawhide 275 k libcdio x86_64 0.80-4.fc10 rawhide 279 k Transaction Summary ================================================================================ Install 2 Package(s) Update 0 Package(s) Remove 0 Package(s) Total size: 554 k Downloading Packages: Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Check Error: file /usr/share/man/man1/cd-drive.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 file /usr/share/man/man1/cd-info.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 file /usr/share/man/man1/iso-info.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 file /usr/share/man/man1/iso-read.1.gz conflicts between attempted installs of libcdio-0.80-4.fc10.i386 and libcdio-0.80-4.fc10.x86_64 Error Summary -------------
Very strange. This is the output of my F8 system enabling rawhide: # yum --enablerepo=development install libcdio.i386 libcdio.x86_64 Setting up Install Process Parsing package install arguments Resolving Dependencies --> Running transaction check ---> Package libcdio.i386 0:0.80-4.fc10 set to be updated ---> Package libcdio.x86_64 0:0.80-4.fc10 set to be updated --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: libcdio x86_64 0.80-4.fc10 development 279 k libcdio i386 0.80-4.fc10 development 275 k Transaction Summary ================================================================================ Install 2 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 554 k Is this ok [y/N]: y Downloading Packages: (1/2): libcdio-0.80-4.fc10.i386.rpm | 275 kB 00:00 (2/2): libcdio-0.80-4.fc10.x86_64.rpm | 279 kB 00:00 -------------------------------------------------------------------------------- Total 20 MB/s | 554 kB 00:00 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : libcdio [1/2] Installing : libcdio [2/2] Installed: libcdio.x86_64 0:0.80-4.fc10 libcdio.i386 0:0.80-4.fc10 Complete! So I really have no idea what should be done to get this fixed for you.
Which version of yum and rpm do you have installed?
This is a behavior difference between rawhide and F9 (and older) rpm: the old rpm silently ignores file conflicts like this on multilib systems when you install the packages in a single transaction, but if you installed the packages on separate transactions you'd get conflicts there too. Rawhide rpm is stricter (well, more consistent) here and doesn't quietly swallow file conflicts. Here's the problem: --- 1.man 2008-10-06 08:40:02.000000000 +0300 +++ 2.man 2008-10-06 08:40:09.000000000 +0300 @@ -1,7 +1,7 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36. -.TH LT-CD-DRIVE "1" "October 2008" "lt-cd-drive version 0.80 i386-redhat-linux-gnu" "User Commands" +.TH LT-CD-DRIVE "1" "October 2008" "lt-cd-drive version 0.80 x86_64-redhat-linux-gnu" "User Commands" .SH NAME -lt-cd-drive \- manual page for lt-cd-drive version 0.80 i386-redhat-linux-gnu +lt-cd-drive \- manual page for lt-cd-drive version 0.80 x86_64-redhat-linux-gnu .SH SYNOPSIS .B cd-drive \fIOPTION\fR... You'll need to coax help2man to not stick the platform string into the man pages to fix the conflicts. BTW there's another (unrelated) problem in the manuals: notice how it refers to "lt-cd-drive" as the program name instead of "cd-drive", another help2man quirk I guess.
Created attachment 319519 [details] Diff showing the differences between the man pages on i386 vs x86_64 For the cause, see attachment. The best solution is probably to split libcdio in libcdio and libcdio-progs, with the utilities and the man-pages in -progs, then on x86_64 there will only be both an x86_64 and i386 version of libcdio and libcdio-devel but not of libcdio-progs. Added advantages of this approach are some saved diskspace for the 99% of users who only want the lib (mostly relevant for livecd's) and the rpm people want to get rid of the filecolor hack, where elf binaries may differ and this is not a file conflict but instead the 64 bits version gets used, in the future, so all packages will need a split between libs and progs in the future anyways.
Why not just kick the arch out of the version number, at least for the man page (a simple sed hack should do the trick there)?
Thanks for all the help. For now I will remove the arch from the version number in the man pages with sed. Maybe for the next Fedora version I will move the helper binaries from libcdio to libcdio-utils (including the man pages). The "lt-cd-drive" issue is a libtool problem. The binaries which are used by help2man are just libtool scripts which call the actual binaries with a changed argv[0] from "cd-drive" to "lt-cd-drive". No idea why they do it. But I will also clean up the man pages from the "lt-".
Erik, could you please test release -5. I think I finally fixed it. I was able (thanks Panu) to see the error on F8 by installing one package at a time instead at the same time. The new version (-5) can now be installed on my test system even if install one package at a time as well as if I install both packages at the same time. In addition to the now identical timestamps the man-pages do not contain the architecture information anymore. Thanks everyone.