Lista de paquetes instalados de nivel superior en Fedora

9

Solía ​​usar yum para enumerar todos los paquetes instalados:

yum list installed

Ahora solo necesito enumerar los paquetes de nivel superior, es decir, si un paquete es una dependencia de otro, no debería mostrarse. El software Agregar / Eliminar de GNOME puede hacer esto, pero necesito la salida en un terminal.

Revisé el manual de ñam pero no pude encontrar un interruptor para eso.

mmonem
fuente

Respuestas:

11

Puede usar la herramienta package-cleanup que es parte de yum-utils. Además de encontrar paquetes que no están disponibles en los repositorios yum actuales, encontrar paquetes con dependencias rotas, podar núcleos antiguos y encontrar paquetes duplicados, también puede encontrar paquetes de los que no dependen otros paquetes. Esas se llaman hojas. Hacer

yum install yum-utils

para obtener la limpieza del paquete y

package-cleanup --leaves --all

para obtener una lista de todas las hojas.

fschmitt
fuente
La terminología de Debian / Ubuntu para esto es huérfanos .
tshepang
2
@Tshepang, esto no es correcto: no todas las hojas no se usan. Y no todos los paquetes huérfanos son necesariamente hojas. Los paquetes huérfanos en la terminología de Debian significan: previamente como paquetes instalados de dependencia (incluidas las dependencias transitivas) que ahora no son necesarios porque los paquetes instalados nombrados explícitamente ahora se eliminan.
maxschlepzig
2

Puede usar el comando repoquery(parte del paquete yum-utils) para obtener esta información:

$ repoquery --installed --qf '%{n} - %{yumdb_info.reason}' --all \
    | grep 'user$' | cut -f1 -d' '

Solo enumera los paquetes que ha instalado por su cuenta, no los que forman parte de la instalación base. Dependiendo de su caso de uso, esto es lo que quiere o no.

maxschlepzig
fuente
Este se ve muy útil. ¡Gracias! Es importante destacar que los paquetes se enumeran sin versiones y .i686 o .noarch o lo que sea, por lo que no se necesita sedimentación ni modificación antes de yum install -y.
Gaoithe