Vous pouvez utiliser l’une ou l’autre de ces deux lignes. Tous deux produisent exactement le même résultat sur ma machine et sont plus précis que toutes les solutions proposées jusqu'à présent (6 juillet 2014) dans cette question.
Utilisation de apt-mark
:
comm -23 <(apt-mark showmanual | sort -u) <(gzip -dc /var/log/installer/initial-status.gz | sed -n 's/^Package: //p' | sort -u)
Utilisation de aptitude
:
comm -23 <(aptitude search '~i !~M' -F '%p' | sed "s/ *$//" | sort -u) <(gzip -dc /var/log/installer/initial-status.gz | sed -n 's/^Package: //p' | sort -u)
Très peu de paquets tombent encore dans les fissures, bien que je pense que ces sont réellement installés par l’utilisateur, soit immédiatement après l’installation via la configuration de la localisation du langage, soit par ex. via l'installateur du codec Totem. En outre, les versions de linux-header semblent également s'accumuler, même si je n'ai installé que le métapaquet non spécifique à la version. Exemples:
libreoffice-help-en-gb
openoffice.org-hyphenation
gstreamer0.10-fluendo-mp3
linux-headers-3.13.0-29
Comment ça marche?
- Obtenez la liste des packages installés manuellement. Pour aptitude, le
sed
supplémentaire supprime les espaces restants à la fin de la ligne.
- Obtenez la liste des paquets installés juste après une nouvelle installation.
- Comparer les fichiers, ne sortir que les lignes du fichier 1 qui ne sont pas présentes dans le fichier 2.
D'autres possibilités ne fonctionnent pas aussi bien:
- À la place, utilisez le fichier
ubuntu-14.04-desktop-amd64.manifest
( ici pour Ubuntu 14.04) de /var/log/installer/initial-status.gz
. Plus de paquets sont montrés comme installés manuellement même s'ils ne le sont pas.
- Utiliser
apt-mark showauto
au lieu de /var/log/installer/initial-status.gz
. apt-mark
par exemple n'inclut pas le paquet xserver-xorg, alors que l'autre fichier.
J'ai utilisé plusieurs autres publications de StackExchange comme références, mais aucune ne fonctionne aussi bien que la solution ci-dessus:
Les deux listes contiennent plus de paquets que la solution ci-dessus.
EDIT: Que faire si vous avez effectué une mise à niveau à partir d'une version précédente:
Si vous avez mis à jour Ubuntu d’une version à l’autre, vous devrez probablement ajuster ce processus. Dans ce cas, je vérifierais le fichier manifeste de la nouvelle version (voir ci-dessus) en plus du fichier initial-status.gz de la version actuelle. Vous pouvez facilement le faire en ajoutant simplement une autre comparaison. Utiliser uniquement le fichier manifeste ne fonctionnera pas, car le fichier manifeste ne contient malheureusement pas tout ce que fait le fichier initial_status.gz (j'ai coché).