Try to manage package channels (aka repositories, repos), but not standalone packages, when you installing something outside your main channel. This save you from dependencies hell and make your updates rather smooth.
For example let's update RHEL 5.2 to 5.3 and make all your media playable with standard gstreamer engine via Totem/Rhythmbox players.
- Disconnect all extra channels during update, you can update them later
- During update you can have dependencies problems, just remove problem packages
- After update you can plug in extra repos and restore removed packages
To have your media playable you need 2 additional packages (not distributing in main channel be course US still have software patents) with necessarily plugins:
gstreamer-plugins-bad
gstreamer-plugins-ugly - Connecting extra RPMforge channel (former DAG, more RHEL friendly then Livna)
This extra channels not support latest RHEL updates and using "Just works" method. So we need to make downgrades packages from main channel to work with them. You don't need mix several channels with packages duplicates - this can give you only extra headache.
So let's install packages, resolving conflicts with managing channels. - First, install gstreamer-plugins-bad:
yum install gstreamer-plugins-bad
it's conflicting with libdvdread.so.3 library, let's see wich package provides it:
yum provides libdvdread.so.3
we got libdvdread package, we need to downgrade it. - Let's remove it to replace with extra channel version.
yum remove libdvdread
this can give us some more dependacies. You are going just replace it with older version, so you can be free to ignore them:
rpm -e --nodeps libdvdread
Now you can continue installation:
yum install gstreamer-plugins-bad
This installs libdvdread from RPMforge channel by dependencies. First done. - Next, let's install gstreamer-plugins-ugly:
yum install gstreamer-plugins-ugly
we got conflict with latest gstreamer-plugins-good package from main channel.
Reason - main channel have 0.10.9 gstreamer version, extra channel using 0.10.3.
Solution - with help of RHN or RPM Search we can find close 0.10.4 version in RHEL 5.2.
Let's downgrade this package to RHEL 5.2 version. - To downgrade package gstreamer-plugins-good you need remove current version:
rpm -i --nodeps gstreamer-plugins-good
Then download package from RHN or here and install it with:
rpm -i --nodeps gstreamer-plugins-good-0.10.*.el5.i386.rpm
And restrict future RHEL updates of this package. Just add line to /etc/yum.conf:
exclude=gstreamer-plugins-good