57 votes

Comment puis-je lister tous les paquets que j'ai installés à partir d'un dépôt particulier ?

Comment puis-je lister tous les paquets que j'ai installés à partir d'un dépôt particulier ?

Comment puis-je lister tous les paquets installés qui ne sont pas disponibles dans les archives principales d'Ubuntu, et aussi voir de quels dépôts ils proviennent ? (Si je connaissais la réponse à cette question, je pourrais parcourir cette liste à la recherche d'un nom de PPA particulier pour trouver la réponse à ma première question).

30voto

Neall Points 251

Il semble qu'il n'y ait aucune trace de l'origine d'une installé paquet.

Si vous êtes d'accord pour obtenir l'emplacement d'où provient un paquet de la classe du même nom, il est possible de l'obtenir par l'intermédiaire de apt-cache policy . Le script suivant (plutôt laid) fait l'affaire pour moi :

LC_ALL=C dpkg-query --showformat='${Package}:${Status}\n' -W '*' \
  | fgrep ':install ok installed' \
  | cut -d: -f1 \
  | (while read pkg; do 
       inst_version=$(apt-cache policy $pkg \
                                | fgrep Installed: \
                                | awk '{ print $2 }'); 
       origin=$(apt-cache policy "$pkg" \
                          | fgrep " *** ${inst_version}" -C1 \
                          | tail -n 1 \
                          | cut -c12-); 
       echo $pkg $origin; 
     done)

Notez qu'il est assez fragile, car il fait des hypothèses sur la sortie. de apt-cache policy qui peut changer d'une version à l'autre...

23voto

jhornnes Points 137

Ouvrez le gestionnaire de paquets Synaptic et cliquez sur le bouton "Origin" en bas de la barre latérale gauche. La liste de vos sources s'affiche. Sélectionnez une source pour voir les paquets disponibles/installés.

23voto

Ghirai Points 11

Développez l'élément "Logiciels installés" dans le Centre logiciel Ubuntu. Vous verrez une liste de tous les différents dépôts que vous avez activés. En cliquant sur le dépôt, vous verrez les paquets que vous avez installés à partir de chacun d'eux.

alt text

4voto

Mnementh Points 19831

Ce script liste les paquets qui sont installés et disponibles dans le PPA :

#!/bin/sh
# Give PPA name as an argument, e.g. ppa:oibaf/graphics-drivers

name1="$(echo "$1"|cut -d: -f2|cut -d/ -f1)"
name2="$(echo "$1"|cut -d/ -f2)"

awk '$1 == "Package:" { if (a[$2]++ == 0) print $2; }' \
/var/lib/apt/lists/*"$name1"*"$name2"*Packages |
xargs dpkg-query -W -f='${Status} ${Package}\n' 2>/dev/null  | awk '/^[^ ]+ ok installed/{print $4}'

J'ai appliqué ce .

BTW, pour ce qui est de la suppression d'un PPA, utilisez le programme ppa-purge ; j'ai créé une version améliorée de celui-ci aquí .

3voto

Graham Dunn Points 31

Sous Quantal (12.10), l'espace dans la ligne d'origine doit être supprimé.

LC_ALL=C dpkg-query --showformat='${Package}:${Status}\n' -W '*' \
 | fgrep ':install ok installed' \
 | cut -d: -f1 \
 | (while read pkg; do 
   inst_version=$(apt-cache policy $pkg \
                            | fgrep Installed: \
                            | cut -d: -f2-); 
   origin=$(apt-cache policy "$pkg" \
                      | fgrep " ***${inst_version}" -C1 \
                      | tail -n 1 \
                      | cut -c12-); 
   echo $pkg $origin; 
 done)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X