Resolving dependencies

Bruno Wolff III bruno at wolff.to
Thu Nov 15 17:28:46 UTC 2007


On Thu, Nov 15, 2007 at 07:26:31 -0600,
  Bryan Zimmer <zimmer.bryan at gmail.com> wrote:
> 
> When I click to get the updates, the program (pup?) does a dependency check. So far I've never gotten around this. It will say "libinchi.so.0 is needed by openbabel", or something similar, then the whole update process fails. I've tried to use "yum' to find some of the dependencies. but so far it hasn't worked very well.
> 
> Can anyone tell me how to say: "Go ahead, download the updates, and get any dependencies, too". Or tell me how to use yum or some program to get those dependencies.

yum does handle the depencencies when it can. If yuo have installed one off
rpms that aren't in any of the repos you have defined, then problems
can occur. It is also possible to have broken rpms where things were properly
obsoleted.

You probably want to check what repos you have enabled to make sure you have
all of the ones you want active. There is probably some GUI way to do this,
but I look in /etc/yum.repos.d/ and looked to see which repos have
enabled=1.

After that you can install yum-utils and run package-cleanup to clean up
some stuff. The --cleandupes option will get rid of packages that have
been updated but still have old versions around. For a few things this
breaks things and you should run rpm -Va to get a list of files that
aren't properly install (you can mostly ignore config files)

yum does handle the depencencies when it can. If yuo have installed one off
rpms that aren't in any of the repos you have defined, then problems
can occur. It is also possible to have broken rpms where things were properly
obsoleted.

You probably want to check what repos you have enabled to make sure you have
all of the ones you want active. There is probably some GUI way to do this,
but I look in /etc/yum.repos.d/ and looked to see which repos have
enabled=1.

After that you can install yum-utils and run package-cleanup to clean up
some stuff. The --cleandupes option will get rid of packages that have
been updated but still have old versions around. For a few things this
breaks things and you should run rpm -Va to get a list of files that
aren't properly install (you can mostly ignore config files). What I
do with the list of files provived by rpm -Va is run them through
rpm -q --whatprovides to get the package names and then reinstall those
packages with the --force option. There are a few packages that mess with
their files but don't have them marked as config files. In particular
some of the TeX and Docbook stuff. So don't be surprised if they still
show up in an rpm -Va report after you reinstall stuff.

Once you are at that point you can check for orphan packages. Use
package-cleanup --orphans to get a list of them. These are packages that
have been installed from rpm but aren't currently in any repository you
have defined. Some of these might be one off installs from a downloaded
rpm file and should be left if you still want them. Others may have been
obsoleted improperly and not removed and you should uninstall them.




More information about the fedora-list mailing list