Today I was woking on updating one of the packages we maintain on our internal repos, and I was not sure exacly which packages required the one I was rebuilding. I had to check that, otherwise something could break if I did a mistake, and the best thing is to pre-check as much as possible.
So reading them Yum man page, I found the option “deplist”, which shows me all the packages which are required by a given package.
# yum deplist libsndfile
(…)
Finding dependencies:
package: libsndfile.i386 1.0.17-6.fc10
dependency: libm.so.6
provider: glibc.i386 2.9-2
provider: glibc.i686 2.9-2
provider: glibc.i686 2.9-3
provider: glibc.i386 2.9-3
dependency: libogg.so.0
provider: libogg.i386 2:1.1.3-9.fc9
(…)
Ok, that’s one part of the problem. But what would really impact this update would be any broken dependencies up, i.e. who depends on this given package.
The nice guys on #yum@freenode pointed me to pkg-provs-tree-view.py, which does exactly what I need.
# python pkg-provs-tree-view.py libsndfile
libsndfile-1.0.17-6.fc10.i386 [cmd line]
\_ Io-language-graphics-and-sound-20071010-6.fc10.i386 [2: libsndfile.so.1, libsndfile.so.1(libsndfile.so.1.0)]
\_ armstrong-0.2.6-6.fc10.i386 [2: libsndfile.so.1, libsndfile.so.1(libsndfile.so.1.0)]
| \_ armstrong-devel-0.2.6-6.fc10.i386 [3: armstrong = 0.2.6-6.fc10, liblunarstd.so.0, libzzub.so.0]
| \_ pyzzub-0.2.6-6.fc10.i386 [1: armstrong = 0.2.6-6.fc10]
| | \_ aldrin-0.13-1.fc10.noarch [1: pyzzub = 0.2.6-6.fc10]
And the best part is that it searches for any dependencies installed or not installed. This is way better than “rpm -q –whatrequires”.

junho 19, 2009 às 21:16 |
Gosto muito do Red Hat/Cent OS, mas acho o yum bem fraquinho. Ele é lento, gordo e com alguns bugs chatos.
Alguns gerenciadores de pacotes conseguem mostrar esta parte de dependencias (up||down) de forma bem mais simples e sem a necessidade de scripts adicionais.
Exemplo:
$ pacman -Qi python
Name : python
Version : 2.6.2-2
URL : http://www.python.org
(…)
Depends On : db bzip2 gdbm openssl>=0.9.8d zlib expat sqlite3
Optional Deps : tk: for IDLE, pynche and modulator
Required By : aurtools boost compizconfig-python dbus-python eog gnome-doc-utils go-openoffice hplip ipython lirc-utils mutagen namcap-git pacupdate pidgin pycairo pygobject pygtksourceview2 pyorbit pyrex python-dateutil python-feedparser python-geoip python-pybluez python-pysqlite pyxdg setuptools sip ufw
(…)
De qualquer forma sua dica foi ótima e até vai me ajudar em algumas situações.