Here's an illustration of my problem: [root@devel ~]# rpm --test -ih /home/buildmaster/yum/fedora/3/i386/ RPMS.bleed/gi flib-4.1.3-0.0.yjl.1.i386.rpm ########################################### [100%] file /usr/lib/libgif.so.4.1.3 from install of giflib-4.1.3-0.0.yjl.1 con flicts with file from package libungif-4.1.3-1 file /usr/lib/libungif.so.4.1.3 from install of giflib-4.1.3-0.0.yjl.1 c onflicts with file from package libungif-4.1.3-1 [root@devel ~]# yum localinstall /home/buildmaster/yum/fedora/3/i386/ RPMS.bleed/giflib-4.1.3-0.0.yjl.1.i386.rpm Setting up Local Package Process Examining /home/buildmaster/yum/fedora/3/i386/RPMS.bleed/ giflib-4.1.3-0.0.yjl.1.i386.rpm: giflib - 4.1.3-0.0.yjl.1.i386 Marking /home/buildmaster/yum/fedora/3/i386/RPMS.bleed/ giflib-4.1.3-0.0.yjl.1.i386.rpm to be installed Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Package giflib.i386 0:4.1.3-0.0.yjl.1 set to be installed --> Running transaction check Dependencies Resolved Transaction Listing: Install: giflib.i386 0:4.1.3-0.0.yjl.1 Is this ok [y/N]: y Downloading Packages: Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing: giflib 100 % done 1/1 Installed: giflib.i386 0:4.1.3-0.0.yjl.1 Complete! [root@devel ~]# rpm -q libungif libungif-4.1.3-1 [root@devel ~]# rpm -qf /usr/lib/libgif.so.4.1.3 libungif-4.1.3-1 giflib-4.1.3-0.0.yjl.1 [root@devel ~]# -=- If as you can see they conflict with rpm --test -ih - then why does the rpm database retain libungif when yum installs giflib? -=- When I use just rpm and not yum, ih reports conflict, Uh installs giflib and removes libungif. yum won't update though if you just specify update giflib, since giflib isn't installed. The only way yum does it right is if "yum update" is run with no arguements, and yum discovers on its own (from the headers) that giflib obsoletes libungif.