Is there a way to determine what is causing a new dependency to be brought in during a dnf upgrade?

After installing a new system and doing some configuration, I went to update the system. When I did this, I noticed several new dependencies were being installed. However, there ere nearly 600 packages in the update so it was not obvious what was causing those new dependencies to be installed.

In this case, I lucked into figuring it out and was able to avoid the installation of those dependencies. If this comes up again in the future, is there a way to see which package is causing the new dependencies?

1 Like

Hi dalto, check the --whatrequires, --whatrecommends, etc. dnf flags.

5 Likes

Thanks!

I was hoping there was an easy way to see what was causing the dependency to come in more directly. In this case, it would still be something of a fishing expedition because dependencies aren’t always direct. In this case, I would have had to trace it back 4-5 levels before I found it. At each level comparing the dependency list to the 600 packages on the list to find my way to the top.

To be fair, I suppose it is atypical to have an update with 600 packages in it so normally it would be a bit easier.

There’s the rpmdep tool, you can find it in the rpmorphan package. Use the -depending option to do reverse recursive lookups. If you let it output a graph, you can ride it up until you find the package you’re looking for.

4 Likes

Thanks! That is a nice tool. I will definitely add that to my toolbox.

It doesn’t help in this specific scenario though because the package in question wasn’t installed.

Ah, OK, I missed that, sorry.

1 Like