Connaitre les paquets d' une autre version

Salut,

J’ ai pas mal bidouillé mes paquets, certains en stable et d’ autres en sid voir experimental (je suis sous squeeze).

Pour les paquets stable j’ ai fais un upgrade donc pas de soucis de ce coté mais pour connaitre ceux que j’ ai en unstable ou experimental, comment les trouver ?

Un “dpkg -l” donne tout les paquet mais si faut vérifier les paquets un par un…

Comment lister les paquets qui ne sont pas de testing de façon simple ?

De façon un peu barbare, je dirais :
-1/ si tu as un fichier préférences, updater puis upgrader
1/ supprimer (momentanément) le 'preferences’
2/ updater SANS upgrader
3/ aller voir (avec synaptic, éventuellement) quels sont les paquets "pouvant être mis à jour"
Ce seront ceux qui ne sont pas dans tes dépôts les plus ‘hauts’ sid ou expêrimental

Merci mais…

[quote=“ricardo”]De façon un peu barbare, je dirais :
-1/ si tu as un fichier préférences, updater puis upgrader[/quote]
Déja fais pour que les paquets que j’ avais mis de stable repassent en testing

[quote=“ricardo”]1/ supprimer (momentanément) le 'preferences’
2/ updater SANS upgrader
3/ aller voir (avec synaptic, éventuellement) quels sont les paquets "pouvant être mis à jour"
Ce seront ceux qui ne sont pas dans tes dépôts les plus ‘hauts’ sid ou expêrimental[/quote]

Oui mais cela me fais regarder les paquets un par un, pas vraiment pratique sauf si on sait pas quoi faire un week-end :laughing:

Y’ a pas plus simple ?

(mon gros soucis c’ est les disques montés qui n’ apparaissent plus sur le bureau mais je compte tenir un petit fichier texte par la suite pour noter toute mes modifs, sur windaube j’ aurais réinstallé après formatage mais sous debian vu que tout est configuré ça me tente pas trop :confused: )

… ou alors une méthode plus propre c’est de jetter un coup d’oeil a cet article:
sitedethib.com/blog/posts/5

$ aptitude search '~S ~i ~Aexperimental' 

la méthode du lien de msfk57 ne marche pas chez moi.
J’ai une méthode qui ne demande qu’à être améliorée:
1) créér le fichier selection.txt, listant les noms (et seulement les noms ) des paquets installés:

2) créer le script scan_paquet:

[quote=“scan_paquet”]#! /bin/sh
for i in cat ./selection.txt; do
apt-cache policy $i | grep -A1 “***” | grep sid > test.txt
if [ grep -c [color=#BF0000]sid[/color] test.txt -ge 1 ]; then
echo $i
fi
done[/quote]
le rendre exécutable:

3) lancer scan_paquet dans le répertoire où se trouve le selection.txt créé en 1)
si on veut filtrer les testing, on remplace sid par testing dans le script ( ou par experimental svt ce qu’on cherche…)
Il renverra ces lignes d’erreur au début, c’est à cause des premières lignes de selection.txt :

W: Impossible de trouver le paquet ait=inconnU/Installé/suppRimé W: Impossible de trouver le paquet tat=Non/Installé/fichier-Confi W: Impossible de trouver le paquet rr?=(aucune)/H=à W: Impossible de trouver le paquet garder/besoin W: Impossible de trouver le paquet Nom W: Impossible de trouver le paquet ===============================

Chez moi:

$ dpkg -l | cut -c '5-35' > selection.txt $ ./scan_paquet W: Impossible de trouver le paquet ait=inconnU/Installé/suppRimé W: Impossible de trouver le paquet tat=Non/Installé/fichier-Confi W: Impossible de trouver le paquet rr?=(aucune)/H=à W: Impossible de trouver le paquet garder/besoin W: Impossible de trouver le paquet Nom W: Impossible de trouver le paquet =============================== deluge deluge-common deluge-core

Je n’ai que deluge en sid, tout le reste est stable.

une amélioration: ne plus créer de fichier selection.txt, mais juste l’éxécutable scan_paquet, puis le rendre exécutable:

[quote=“scan_paquet”]#! /bin/sh
dpkg -l | cut -c ‘5-35’ > selection.txt
for i in cat ./selection.txt; do
apt-cache policy $i | grep -A1 “***” | grep $1 > test.txt
if [ grep -c $1 test.txt -ge 1 ]; then
echo $i
fi
done
rm selection.txt
rm test.txt[/quote]

puis l’éxécuter avec en argument la version des paquets qu’on cherche: lenny, testing ou sid:

$ ./scan_paquet sid W: Impossible de trouver le paquet ait=inconnU/Installé/suppRimé W: Impossible de trouver le paquet tat=Non/Installé/fichier-Confi W: Impossible de trouver le paquet rr?=(aucune)/H=à W: Impossible de trouver le paquet garder/besoin W: Impossible de trouver le paquet Nom W: Impossible de trouver le paquet =============================== deluge deluge-common deluge-core

Version de scan_paquet sans les messages d’erreurs:

#! /bin/sh dpkg -l | cut -c '5-35' > selection.txt grep -v = selection.txt > selection1.txt grep -v Nom selection1.txt > selection2.txt echo Les paquets $1 sont: for i in `cat ./selection2.txt`; do apt-cache policy $i | grep -A1 "\*\*\*" | grep $1 > test.txt if [ `grep -c $1 test.txt` -ge 1 ]; then echo $i fi done rm selection.txt selection1.txt selection2.txt test.txt

Chez moi:

$ ./scan_paquet sid Les paquets sid sont: deluge deluge-common deluge-core

$ ./scan_paquet lenny Les paquets lenny sont: abraca acpi-support-base acpid adduser alsa-base alsa-utils amule amule-common amule-utils apt apt-file apt-utils aptitude aspell aspell-fr ......

apt-cache policy “marche” en simple utilisateur… du coup, pas besoin de lancer ton script en “root”… (le pauvre, ça se fait pas, lancer quelqu’un en route… :smt005 )

dpkg -l marche aussi en simple user… :wink: … histoire de ne pas avoir de problème de droit avec le fichier selections… :wink:

:smt006

merci, je corrige de suite (je ne sais pas pourquoi je lançais tjs sous root apt-cache policy :blush: ).

Ho mais de nada… :wink:
Merci à toi pour ce zoli script… :wink:

:smt006

[quote=“yanlolot”]la méthode du lien de msfk57 ne marche pas chez moi.
[/quote]

J’ai du mal à voir pourquoi ça ne te va pas; peut-être était-ce plutot
aptitude search '~S ~i ~S ~Aunstable !~Atesting’
dont tu as besoin.

Je dit ça simplement car c’est un peu bête de refaire ce qui a déjà été fait; après si c’est pour le plaisir de coder … je ne dis pas :slightly_smiling:

Merci à vous :smiley:

Les deux astuces doivent fonctionner mais le faire en une ligne est quand même plus rapide, joli script néanmoins ça doit être sympa à réaliser :smiley:

Non non, c’est de ma faute: j’avais d’abord testé mon script avt que tu ne postes, et lorsque j’ai essayé ton truc, il trouvait bien plus de paquet que mon script en sid (en fait, les paquets supplémentaires trouvés par ton astuce sont des paquets communs aux 3 branches).
Donc tout baigne, et même si ça m’a amusé de faire ce script, ton astuce est meilleure. :smiley: