Tag Archive for 'remove'

Yum gets autoremove dependency feature

Coming from a Gentoo/Debian background, one thing that has constantly bugged me on RPM based platforms like Fedora is the lack of decent, reliable dependency removal.

It seems so simple (and Debian has done it since the dawn of time) – if I install package x which pulls in dependencies y and z, then when I remove package x, I want to remove dependencies y and z, if they are not required by any other package.

Yes, there is the remove-leaves plugin for Yum and various RPM orphan checking tools, but in my experience, they are just not reliable.

So, I’m very happy to have discovered that Seth Vidal has merged orphaned dependency cleanup on removal into Yum. Hallelujah!

It’s in rawhide yum-3.2.28-13, and I’ll do some testing soon…

Fedora – removing unwanted deps?

OK, so I have Fedora running on my main machine (the default GNOME install), more on that later. First I need to understand some basic principles of Yum.

I have Firefox and everything is dandy. I wanted to watch a YouTube clip so I installed gnash-plugin.

Then I wanted to remove it because it wasn’t performing particularly well, but I want to also remove dependencies it has pulled in, leaving my system in the same pristine state it was in before I installed it.

So how do you do this?

I installed the package gnash-plugin with the command:
sudo yum install gnash-plugin

This pulled down three dependencies: agg, boost and gnash itself.

What’s the correct way to remove gnash-plugin and all the dependencies?

If I run:
sudo yum remove gnash-plugin
Then it wants to only remove the gnash-plugin package itself, leaving all the dependencies. Fair enough.

If I run:
sudo yum remove gnash
Then it only wants to remove the gnash-plugin dependency and leaves the rest. Also probably fair enough.

If I run:
sudo yum remove --remove-leaves gnash-plugin
Then it wants to remove all the dependencies plus some others which were not brought in by gnash-plugin like Firefox.

I don’t want to remove Firefox!

Help?

-c