Lister les paquets installés par dépôts?

Bonjour,

Je me souviens que, sous X11, Synaptic que j’utilisais alors indiquait de quel dépôt provenaient les paquets.

Est-ce que apt permet
Soit d’afficher le dépôt d’origine en face des paquets installés ?
Soit inversement, de lister les paquets provenant d’un dépôt ?

Sur ma Testing je vais retirer le dépôt Sid dans lequel je piochais Firefox (que j’ai installé en Flatpak) et Tor browser (qui est maintenant disponible dans Testing et cts) et je voudrais m’assurer que je n’ai plus de paquets dépendants de Sid

Merci

J’ai trouvé ces fils proches :


 apt list --installed

donne ces informations relatives aux versions testing, stable, oldstable

Les paquets installer manuellement, localement, sont répérés par /now

apt list --installed | grep /now

4kslideshowmaker/now 1.8-1 amd64  [installé, local]
4kvideodownloader/now 4.11-1 amd64  [installé, local]
cnijfilter2/now 5.20-1 amd64  [installé, local]
master-pdf-editor/now 5.0.03 amd64  [installé, local]
scangearmp2/now 3.70-1 amd64  [installé, local]

pour avoir la source d’un paquet on peut utiliser apt-policy

apt policy spotify-client
spotify-client:
  Installé : 1:1.1.10.546.ge08ef575-19
  Candidat : 1:1.1.10.546.ge08ef575-19
 Table de version :
 *** 1:1.1.10.546.ge08ef575-19 500
        500 http://repository.spotify.com stable/non-free amd64 Packages
        100 /var/lib/dpkg/status
1 J'aime

Impec avec

apt list --installed

merci grandbabtou :slight_smile:

L’autre me donne un résultat bizarre : très peu de paquets et pas ceux que j’ai installé moi-même :

cpp-7/now 7.5.0-5 amd64  [installé, local]
gcc-6-base/now 6.5.0-1 amd64  [installé, local]
gcc-7-base/now 7.5.0-5 amd64  [installé, local]
gcc-7/now 7.5.0-5 amd64  [installé, local]
libapt-inst2.0/now 1.8.4 amd64  [installé, local]
libapt-pkg5.0/now 1.8.4 amd64  [installé, local]
libasan4/now 7.5.0-5 amd64  [installé, local]
libcdio18/now 1:2.0.0-dmo2 amd64  [installé, local]
libcilkrts5/now 7.5.0-5 amd64  [installé, local]
libdvdcss-dev/now 1.4.2-1~local amd64  [installé, local]
libdvdcss2-dbgsym/now 1.4.2-1~local amd64  [installé, local]
libdvdcss2/now 1.4.2-1~local amd64  [installé, local]
libexiv2-14/now 0.25-4 amd64  [installé, local]
libgcc-7-dev/now 7.5.0-5 amd64  [installé, local]
libhogweed4/now 3.4.1-1+b1 amd64  [installé, local]
libip4tc0/now 1.8.2-4 amd64  [installé, local]
libip6tc0/now 1.8.2-4 amd64  [installé, local]
libnettle6/now 3.4.1-1+b1 amd64  [installé, local]
libnss3/now 2:3.50-1 amd64  [installé, local]
libreadline7/now 7.0-5 amd64  [installé, local]
libsndio6.1/now 1.1.0-3 amd64  [installé, local]
libubsan0/now 7.5.0-5 amd64  [installé, local]
libx264-155/now 3:0.155.2901+git7d0ff22-dmo3 amd64  [installé, local]
linux-image-5.4.0-4-amd64/now 5.4.19-1 amd64  [installé, local]
multiarch-support/now 2.28-10 amd64  [installé, local]
perl-modules-5.26/now 5.26.2-7 all  [installé, local]
python-imobiledevice/now 1.2.1~git20181030.92c5462-1 amd64  [installé, local]
python-plist/now 2.0.1~git20190104.3f96731-1 amd64  [installé, local]
ufraw-batch/now 0.22-4 amd64  [installé, local]

c’est pas clair pour moi comment on connait la source du paquet avec ça :
en fait il donne les dépôts dans lesquels le paquet est dispo et leurs priorités, sans répondre directement à la question si je comprends bien ?

c’est caractéristiques d’une version qui a été dans une version, sid par exemple, et qui a été installée à un moment donné mais qui n’est plus dans les dépots Debian

C’est la vie des versions de paquets particulièrement dans sid/unstable :grinning:

http://repository.spotify.com stable/non-free amd64 Packages

ça me parait clair

c’est caractéristiques d’une version qui a été dans une version, sid par exemple, et qui a été installée à un moment donné mais qui n’est plus dans les dépots Debian

C’est la vie des versions de paquets particulièrement dans sid/unstable

je n’ai pas compris ?

$ apt policy torbrowser-launcher
torbrowser-launcher:
  Installé : 0.3.2-8
  Candidat : 0.3.2-8
 Table de version :
 *** 0.3.2-8 990
        990 http://deb.debian.org/debian testing/contrib amd64 Packages
         99 http://deb.debian.org/debian unstable/contrib amd64 Packages
        100 /var/lib/dpkg/status

[quote=« antistress, post:8, topic:81820, full:true »]

[quote=« grandtoubab, post:6, topic:81820 »]
ça me parait clair

http://deb.debian.org/debian testing
testing est le depot source, en ce moment c’est la version Bullseye

apt policy gcc-6-base
gcc-6-base:
  Installé : (aucun)
  Candidat : 6.3.0-18+deb9u1
 Table de version :
     6.3.0-18+deb9u1 500
        500 https://cdn-aws.deb.debian.org/debian-security stretch/updates/main amd64 Packages
        500 https://cdn-aws.deb.debian.org/debian stretch/main amd64 Packages

la version a probablement été installée à un moment ou tu utilisais stretch, mais tu as du retirer le dépôt stretch donc , chez toi, apt ne sait plus indiquer la source de cette version de paquet

Il était en Sid, je viens de le réinstaller depuis Testing aujourd’hui-même

Avec

tous mes paquets sont donnés testing,unstable
donc ça ne m’avance pas, en fait…?

Lorsque l’on regarde le numéro de version :
-> Installé: je pense que le terme est clair
-> Candidat: ce qui est disponible par rapports à tes dépôts

Après coup on peux voir que la version 0.3.2-8 du paquet est partagé par les dépôts unstable et testing, donc pour moi rien de bien compliqué jusque là pour savoir si un paquet viens de unstable ou non.

Maintenant un truc comme ça devrait fonctionner :wink:

 dpkg -l | grep ^ii| awk {'print $2'} | xargs apt-cache policy | grep -B 5 unstable | grep ^[a-z]

ben tu restes implicite sur ce point et c’est justement là que je sèche puisque le résultat donne les deux dépôts que je souhaite départager :wink:

$ dpkg -l | grep ^ii| awk {'print $2'} | xargs apt-cache policy | grep -B 5 unstable | grep ^[a-z]
bind9-host:
binutils:
binutils-common:
binutils-x86-64-linux-gnu:
cpp-8:
debhelper:
dnsmasq-base:
evince:
evolution-data-server:
evolution-data-server-common:
firefox:
firefox-l10n-fr:
fontconfig:
fontconfig-config:
gcc-10-base:
gcc-8:
gcc-8-base:
gir1.2-evince-3.0:
gir1.2-gnomedesktop-3.0:
gir1.2-javascriptcoregtk-4.0:
gir1.2-webkit2-4.0:
gnome-desktop3-data:
gnome-session-bin:
guile-2.2-libs:
iproute2:
isc-dhcp-client:
isc-dhcp-common:
libamd2:
libappstream-glib8:
libatomic1:
libbind9-161:
libbinutils:
libboost-filesystem1.67.0:
libboost-system1.67.0:
libboost-thread1.67.0:
libcamd2:
libcamel-1.2-62:
libcc1-0:
libccolamd2:
libcholmod3:
libcolamd2:
libctf-nobfd0:
libctf0:
libdebhelper-perl:
libdrm-amdgpu1:
libdrm-common:
libdrm-intel1:
libdrm-nouveau2:
libdrm-radeon1:
libdrm2:
libebackend-1.2-10:
libebook-1.2-20:
libebook-contacts-1.2-3:
libecal-2.0-1:
libedata-book-1.2-26:
libedata-cal-2.0-1:
libedataserver-1.2-24:
libedataserverui-1.2-2:
libegl-mesa0:
libegl1-mesa:
libevdocument3-4:
libevview3-3:
libffi6:
libfontconfig1:
libgbm1:
libgcc-8-dev:
libgcc-s1:
libgcc1:
libgfortran5:
libgl1-mesa-dri:
libgl1-mesa-glx:
libglapi-mesa:
libglib2.0-0:
libglib2.0-bin:
libglib2.0-data:
libglx-mesa0:
libgnome-desktop-3-19:
libgomp1:
libgpgme11:
libgupnp-1.2-0:
libhogweed4:
libinput-bin:
libinput10:
libinstpatch-1.0-2:
libisc-export1105:
libisc1105:
libisccc161:
libisccfg163:
libitm1:
libjavascriptcoregtk-4.0-18:
libkpathsea6:
libldap-2.4-2:
libldap-common:
libllvm9:
liblsan0:
liblwres161:
libmm-glib0:
libmnl0:
libmpx2:
libnettle6:
libnss-myhostname:
libnss3:
libpam-systemd:
libqt5core5a:
libqt5dbus5:
libqt5gui5:
libqt5network5:
libqt5printsupport5:
libqt5sql5:
libqt5sql5-sqlite:
libqt5test5:
libqt5widgets5:
libqt5xml5:
libquadmath0:
libsdl2-2.0-0:
libselinux1:
libsemanage1:
libsoxr0:
libsqlite3-0:
libstdc++6:
libsuitesparseconfig5:
libsynctex2:
libsystemd0:
libtsan0:
libubsan1:
libudev1:
libumfpack5:
libva-drm2:
libva-wayland2:
libva-x11-2:
libva2:
libvulkan1:
libwebkit2gtk-4.0-37:
libwww-perl:
libxatracker2:
libxcomposite1:
libxdamage1:
libxfixes3:
libxml2:
libxres1:
mesa-va-drivers:
mesa-vdpau-drivers:
mesa-vulkan-drivers:
modemmanager:
mythes-fr:
osinfo-db:
python-apt-common:
python-gi:
python3-apt:
python3-cairo:
python3-dbus:
python3-gi:
python3-gi-cairo:
python3-gpg:
python3-pexpect:
python3-pil:
python3-ptyprocess:
python3-six:
python3-xdg:
qt5-gtk-platformtheme:
rtkit:
shim-helpers-amd64-signed:
shim-unsigned:
sqlite3:
systemd:
systemd-sysv:
systemd-timesyncd:
task-desktop:
task-french:
task-french-desktop:
tasksel:
tasksel-data:
udev:
va-driver-all:
vim-common:
vim-tiny:
wireless-regdb:
xserver-xorg-video-intel:
xserver-xorg-video-vmware:
xxd:

Merci pour la commande, je pense que c’est ce que je recherchais :))
Mais… wow j’ai beaucoup plus que Firefox qui provienne de unstable o_O
Si je débranche le dépôt unstable après avoir retiré Firefox, les autres paquets finiront par être mis à jour à partir de Testing quand Testing aura rattrapé les version proposées aujourd’hui par Unstable ?

Oui à un moment les numéro de version finiront par être à minima égaux ou supérieur, mais pourquoi ne pas jouer avec l’étiquetage ?

Pour reprendre ton exemple plus haut le paquet de la version de testing dispose d’un étiquetage de 990 par rapport au ‹ pinning › de 99 de la branche de unstable.
Tu peux très bien laissé tel quel voir exporter la liste de paquets actuellement en unstable, la désinstaller, puis la réinstaller si ton ‹ pining › est en place les versions de la branche testing seront réinstallé en lieu et place (mais le downgrade de version peut-être périlleux avec les métapaquets disposant de dépendances fortes avec des librairies critiques tel que la libC.

Maintenant tu as une liste des paquets en question donc mise à part un peux de bricolage rien ne t’empêche si la machine n’est pas critique de tester :wink:

Oui, c’est ce que j’ai fait pour tor-browser qui a peu de dépendances.
Les méta-paquets c’est ce qui me freine mais je peux le faire néanmoins pour ceux qui ne tombent pas dans ce cas.
Je l’avais fait pour le dépôt multimédia précédemment, et ça c’était mal passé, surtout quand j’ai fini par ne plus avoir de gestion du réseau ça rendait la réparation tout de suite plus compliquée :wink:

Merci à tous deux pour vos conseils :slight_smile:

pour connaitre les paquets provenant strictement de Sid ( pas ceux commun a testing et unstable)

apt list --installed | grep /unstable


kernel-package/unstable,unstable,now 13.018+nmu2 all  [installé]
libfluidsynth1/unstable,now 1.1.11-4 amd64  [installé]
linux-headers-5.5.0-2-amd64/unstable,now 5.5.17-1 amd64  [installé, automatique]
linux-headers-5.5.0-2-common/unstable,unstable,now 5.5.17-1 all  [installé, automatique]
linux-headers-amd64/unstable,now 5.5.17-1 amd64  [installé]
linux-image-5.5.0-2-amd64/unstable,now 5.5.17-1 amd64  [installé, automatique]
linux-image-amd64/unstable,now 5.5.17-1 amd64  [installé]
linux-kbuild-5.5/unstable,now 5.5.17-1 amd64  [installé, automatique]



ce qui compte c’est le nom de la version qui vient derrière le /

pour ceux étant dans testing

apt list --installed | grep /testing

$ apt list --installed | grep /unstable

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

firefox-l10n-fr/unstable,now 74.0.1-1 all  [installé]
firefox/unstable,now 74.0.1-1 amd64  [installé]
libffi6/unstable,now 3.2.1-9 amd64  [installé]

ouf c’est plus conforme à mes attentes !

C’est surtout que comme expliqué auparavant il doit y avoir pléthore de paquet partagé actuellement entre la branche testing et unstable :wink: