Bonjour,
Recherche fichier "liste des paquets installés par défaut" sur les différentes versions d'Ubuntu !
Je n'ai pas l'astuce... mais on doit pouvoir la trouver... et ça pourrait servir à pas mal de monde 😉
Je viens de découvrir un tuto intéressant dans la documentation Ubuntu francophone.
Il se nomme "
Sauvegarde et restauration de la liste des paquets installés pour restauration, duplication ou migration"
J'avais autrefois cherché quelque chose comme cela, sans avoir encore trouvé un truc simple. Dans mon script de sauvegarde, j'ai une ligne pour conserver l'historique des paquets installés, désinstallés ou mis à jour... C'est ceci (la ligne importante étant la dernière) :
# pour donner un nom "raccourci" (incluant le chemin) au fichier donnant l'historique des installations,
# mises à jour et désinstallations de paquets, fichier nommé "historique_inst_maj_desinst.log" :
histor=/home/votre_identité/Documents/Sauvegardes/historique_inst_maj_desinst.log
# pour mettre à jour le fichier actualisé de l'historique des installations, mises à jour et désinstallations de paquets :
zgrep -h " installed \| upgrade \| remove " /var/log/dpkg.log* | sort | uniq > $histor
Mais c'est en pratique bien peu utilisable... S'il faut consulter tout l'historique pour dénicher les paquets ajoutés et non désinstallés, il y en a pour un moment.
Le tuto "Sauvegarde et restauration de la liste des paquets installés" ouvre une autre piste plus intéressante, avec la commande :
dpkg --get-selections > liste-des-paquets
Mais il manque à mon avis une méthode simple dans
cette partie pour expliquer comment obtenir un fichier ne contenant que les paquets ajoutés à ceux de l'installation standard d'Ubuntu.
Exemple :
Je suis sous Jaunty. Je veux passer à Karmic non par une mise à niveau, mais en faisant une installation neuve. J'obtiens par la commande "dpkg --get-selections" la liste des paquets installés sur mon système. J'obtiens un fichier texte de 2265 lignes (de son côté, Synaptic indique 2264 paquets installés, je ne sais d'où viens la différence, mais elle est infime).
Il me faudrait un autre fichier texte contenant la liste des paquets d'une installation Jaunty standard (et non pas Karmic : j'ai besoin de la liste des paquets que j'ai ajoutés à Jaunty). Comment trouver cette liste sous la même forme que la liste obtenue par "dpkg --get-selections" ?
On pourrait alors utiliser la commande "diff" permettant d'obtenir un fichier "liste-des-paquets-complement-perso" ne contenant que la différence entre :
- le fichier listant les paquets Jaunty par défaut
- le fichier listant les paquets installés sur le système aujourd'hui.
diff liste-des-paquets liste-des-paquets-jaunty-par-defaut > liste-des-paquets-complement-perso
Ce dernier fichier liste-des-paquets-complement-perso aura besoin d'un petit toilettage : suppression des lignes non précédées de "<", puis suppression des "< " :
grep "^[<]" liste-des-paquets-complement-perso > liste-des-paquets-complement-perso-pluspropre
sed 's/^< //' liste-des-paquets-complement-perso-pluspropre > liste-des-paquets-complement-perso-tres-propre
Le fichier obtenu permettrait une réinstallation facile, sous Karmic, des paquets ajoutés, pour retrouver son système complet, comme indiqué dans le tuto :
sudo apt-get update
sudo dpkg --set-selections < liste-des-paquets-complement-perso-tres-propre
sudo apt-get -u dselect-upgrade
Si quelqu'un a l'astuce pour trouver la liste des paquets d'une installation standard de chaque version d'Ubuntu (de Jaunty, mais aussi de Hardy, Edgy, Karmic... pour que ça serve à tous !). Il ne manque que ça pour que l'astuce soit au point 🙂
Edit 1 : pour Jaunty, la réponse semble être
ici, grâce à fove2 qui - si j'ai bien compris - a lancé un "dpkg --get-selections" sur une install fraiche de Jaunty, et a copié la liste dans un message du forum. Mais lorsqu'on n'a pas fait cela sur une install fraiche, la question demeure (notamment pour Hardy, Edgy, Karmic).
Edit 2 : j'ai eu une réponse de Jonathan sur la liste de discussion du Wiki de la documentation Ubuntu. Il propose des commandes utilisant "aptitude" je cite :
> Pour disposer de la liste complète des paquets actuellement installés...
aptitude search '~i' -F %p
> Pour obtenir simplement la liste des seuls paquets installés par l'utilisateur en plus des paquets d'une installation Ubuntu par défaut. (Elle contiendrait les logiciels préférés de l'utilisateur et les bibliothèques qui sont nécessaires à leur fonctionnement. La liste serait plus courte et plus facile à analyser si besoin.)
aptitude search '~i !~M' -F %p
Le problème avec cette commande c'est qu'elle ne marchera probablement pas si on n'a pas utilisé aptitude de bout en bout pour installer les paquets... à tester !
Je n'ai jamais rien installé avec aptitude, car j'utilise exclusivement apt-get ou synaptic.
Cependant, la seconde commande proposée par Jonathan me donne une liste de 1085 paquets.
P.S. : les paquets installés par défaut ne sont pas les mêmes s'il s'agit d'Ubuntu ou d'Ubuntu-serveur, ou de Kubuntu ou de Xubuntu, etc. D'où l'intérêt d'une commande, si elle existe, permettant d'identifier les paquets installés à l'origine sur le poste de travail de l'utilisateur, avant tout ajout. Ou donnant la liste des paquets ajoutés, ce qui a l'air d'être le cas avec cette commande "aptitude". Existe-t-il une commande dpkg ou apt-get donnant directement les mêmes infos ?