web-dev-qa-db-fra.com

Trouver quels paquets sont installés à partir d'un référentiel

J'essaie de trouver les paquets que j'ai installés à partir d'un référentiel à l'aide de commandes de terminal.

J'ai trouvé un post quelque part disant que je pouvais utiliser aptitude search "?origin (<repository>) ?installed", mais que je ne pouvais pas le faire fonctionner. J'ai essayé de chercher un paquet qui venait de ppa: ubuntu-wine/ppa et je n'ai rien eu avec:

aptitude search "?origin (http://ppa.launchpad.net/ubuntu-wine/ppa/ubuntu/) ?installed"
aptitude search "?origin (http://ppa.launchpad.net/ubuntu-wine/ppa/ubuntu/) ?installed"
aptitude search "?origin (http://ppa.launchpad.net/ubuntu-wine/ppa/ubuntu/ raring/main) ?installed"

Ce serait bien si je pouvais obtenir quelque chose qui fonctionne avec les AAE.

10
Enkouyami

Entre parenthèses, vous ne devez utiliser que le nom du référentiel, pas l'URI ou autre chose. Par exemple dans votre cas:

aptitude search "?origin (ubuntu-wine) ?installed"

Exécutez apt-cache policy pour voir les référentiels et les noms (ou encore Origin, o) de ceux-ci:

$ apt-cache policy | grep wine
 500 http://ppa.launchpad.net/ubuntu-wine/ppa/ubuntu xenial/main i386 Packages
     release v=16.04,o=LP-PPA-ubuntu-wine,a=xenial,n=xenial,l=Wine Team PPA,c=main,b=i386
 500 http://ppa.launchpad.net/ubuntu-wine/ppa/ubuntu xenial/main AMD64 Packages
     release v=16.04,o=LP-PPA-ubuntu-wine,a=xenial,n=xenial,l=Wine Team PPA,c=main,b=AMD64

Étant donné que la chaîne de recherche est un motif regex correspondant n'importe où dans la chaîne, vous pouvez utiliser une sous-chaîne pratique telle que ubuntu-wine, ou même simplement wine.

Voir aussi: Comment puis-je obtenir une liste de tous les référentiels et PPA de la ligne de commande dans un script d'installation?

9
Radu Rădeanu

Voici un script Bash que j'ai écrit pour afficher les paquets installés d'origines différentes, à l'exception de Ubuntu. Il utilise le format de sortie commun dpkg -l. Cela fonctionne plus rapidement que aptitude solutions.

#!/bin/bash

# Print packages installed from different origins.
# Exclude standard Ubuntu repositories.

grep '^Origin:' /var/lib/apt/lists/*Release | grep -v ' Ubuntu$' | sort -u \
| while read -r line; do
    Origin=$(cut -d' ' -f2- <<<"$line")    
    echo $Origin:

    list=$(cut -d: -f1 <<<"$line")
    sed -rn 's/^Package: (.*)$/\1/p' ${list%_*Release}*Packages | sort -u \
    | xargs dpkg -l 2>/dev/null | grep '^.i '
    echo
 done

Notez qu'il peut également y avoir des packages installés pour lesquels aucune origine de ce type n'est disponible, voir this pour les trouver.

4
jarno

Ensuite, vous pouvez utiliser le gestionnaire Y-PPA. Ouvrez votre terminal et tapez:

Sudo add-apt-repository ppa:webupd8team/y-ppa-manager
Sudo apt-get update
Sudo apt-get install y-ppa-manager

Ouvrez ensuite votre tiret Unity et effectuez une recherche avec Y -PPA, puis ouvrez l’icône.

enter image description here

Cliquez sur gérer les PPA comme indiqué dans l'image, puis sélectionnez un PPA et il vous donnera les détails du PPA et de ses packages.

1
rɑːdʒɑ

À partir de la ligne de commande Si vous aimez faire signifie

awk '$1 == "Package:" { if (a[$2]++ == 0) print $2; }' /var/lib/apt/lists/*PPA-FIRST-PART*PPA-SECOND-PART*Packages

par exemple: Tous les paquets de noobslab

 jai@frank-Jai:~$ awk '$1 == "Package:" { if (a[$2]++ == 0) print $2; }' /var/lib/apt/lists/*noobslab*Packages

python-logilab-common
synapse
ubuntuone-client
python-ubuntuone-storageprotocol
ubuntuone-client-gnome
python-ubuntuone-client
lives
libweed0
libweed-dev
lives-data
converseen
minitube
libsyncdaemon-1.0-1
libsyncdaemon-1.0-dev
ubuntu-sso-client
python-ubuntuone-devtools
ubuntuone-dev-tools
ubuntuone-control-panel
python-ubuntuone-control-panel
synapse-dbg
gir1.2-syncdaemon-1.0
libweed-dbg
lives-dbg
umplayer
umplayer-translations
libgranite-dev
deepin-software-center
ubuntuone-control-panel-qt
python-dirspec
rhythmbox-ubuntuone
python-ubuntu-sso-client
ubuntu-sso-client-qt
python-ubuntu-sso-client.tests
granite-demo
ubuntuone-client-proxy
python-oauthlib
slidewall
python3-dirspec
python3-oauthlib
ubuntuone-client-data
libgranite1
libgranite1-dbg
gir1.2-granite-1.0
libgranite-common
curlew
fbmessenger
open-as-administrator
indicator-synapse
indicator-synapse-dbg
wallpaper-manager
awoken-icon-theme
malys-uniblack
malys-uniblue
malys-ex
acyl-icons
nitrux-icons
piratunbu-icons
azenis-green-icons
nouvegnome-color
nouvegnome-gray
hi-lights-icons
matrilineare
zoncolor-icons
royal-linux-icons
elementary-icons
myhumanity
myelementary
glass-icons
osx-nostalgie
sky-blue-cinnamon
sky-blue-gnome
sky-blue-unity
wine-blue-remix
lubuntubox
windows7-icons
appleart-icons
magical-lights-icons
colored-plastic-icons
numix-utouch-icon-theme
ubudao-style
artnet-icons
high-delight-icons
snow-sabre-icons
trevilla-icons
aery-icons
ambiance-blue
zukitwo
gnomishbeige-theme
salience-theme
zukiwi
gnomishgray
delorean-dark
smoothly-theme
ambiance-ds-blue
ambiance-Lime
gnomishdark
zukitwo-cupertino-gs
mediterranean-theme
elementaryish
borderline
boje
wow-2
zoncolor-themes
omg-suite
simplex
leopard-steel
dorian-theme
daylight
adwaita-elements
uncomplicated
trevilla-jmhzonedark
trevilla-dark
trevilla-white
trevilla-whiteblue
trevilla-whiteorange
trevilla-white2
ambiancep-set
ambiance-crunchy
trevilla-gray
siva-series-gtk
cobibird
elegant-brit
mac-ithemes-noobslab
mac-icons-noobslab
ubuntu-touch-themes
windows8-theme
bigfootblue-cinnamon
windows8-cinnamon
eliza1-cinnamon
bigfootred-cinnamon
plus1-theme
futura
blo-theme
darkair-theme
plane-gtk3
deepin-gtk-theme
nokto-theme
numix-theme
Neptune-theme
trevilla-themes
jai@frank-Jai:~$ 

Le crédit va ici

1
rɑːdʒɑ

L'origine n'est pas l'URL du référentiel. Pour trouver l'origine du référentiel, recherchez le fichier dans /var/lib/apt/lists/ se terminant par Release.

Par exemple

grep "Origin" /var/lib/apt/lists/linux.dropbox.com_debian_dists_wheezy_Release

Montrera:

Origin: Dropbox.com

Donc, aptitude search "?origin(dropbox.com) ?installed" me montrera le paquet installé depuis le dépôt Dropbox.

1
sorgel