Laisser un commentaire

apt-get vs aptitude : préférez le second !

Par méconnaissance, par habitude ou par confort, on utilise toujours apt-get pour gérer nos distributions. Et ce blog ne fait pas exception à la règle. Pourtant Aptitude est bien mieux à de nombreux égards.

La gestion des dépendances

On le sait, apt-get n’est pas toujours parfait avec les dépendances. Un apt-get remove par exemple ne supprime pas les dépendances. Il faudrait plutôt faire un apt-get purge, mais là encore, ce n’est pas parfait. On nettoiera donc plus tard la distribution avec un apt-get autoclean… On le voit, ce n’est donc pas la panacée. Laisser des dépendances non utilisées revient à prendre de l’espace sur le disque inutilement.

Quand j’ai commencé à utiliser Linux en ligne de commandes, j’installais pas mal de nouveaux paquets puisque je commençais tout juste à bidouiller et je faisais donc mes tests et mes découvertes. J’étais toujours surpris lors de l’install, qu’apt-get m’avertisse que plusieurs mégas, voir dizaines de mégas soient nécessaires, tandis qu’au remove, je ne libérais que quelques dizaine de kilo…

Aptitude vient donc répondre à ce problème. Par ailleurs, il gère mieux les conflits entre paquets et tente de réparer ces derniers lorsqu’ils sont corrompus. Que de bons points donc.

Enfin, il permet aussi d’avoir accès à d’anciennes version de paquets. Les mises à jour sont censés régler les problèmes, mais on le sait tous, l’informatique parfois…

Des outils unifiés et une interface interactive

Tout le monde connait bien évidemment les classiques apt-get install, apt-cache search etc… mais ceux-là :

apt-listbugs
Vérifier quels sont les bugs d'un programme avant de l'installer
apt-listchanges
Vérifier quels sont les changements apportés à un paquet
apt-rdepends
Vérifier la liste de dépendances d'un paquet
deborphan
Regarder sur le système les dépendances orphelines après désinstallation d'un paquet parent

Il y a donc en tout presque vingt différents outils pour gérer sa distrib… Pourquoi pas un seul ? J’imagine qu’ils n’ont pas tous été développé en même temps, donc que l’ont doit tout cela à des raisons historiques. Cependant, quand il s’agit d’apprendre à s’en servir, c’est du coup beaucoup plus complexe à retenir. Quand j’utilise FFMPEG par exemple, c’est toujours le même logiciel que j’appelle, que je veuille extraire le son, des images, ou simplement transcoder ma vidéo !

Aptitude, quant à lui, fournit beaucoup plus d’homogénéité dans son approche. La preuve :

aptitude
Appelé sans arguments, on lance une interface interactive qui nous permet de rechercher, naviguer, installer, mettre à jour etc
aptitude install
Installe le logiciel demandé ainsi que ses dépendances
aptitude remove
Enlève un paquet et ses dépendances orphelines
aptitude purge
Semblable à remove, mais supprime aussi les fichiers de configuration afférents
aptitude search
Recherche des paquets dans la liste de paquets locale
aptitude update
Met à jour la liste de paquets
aptitude upgrade
Upgrade tous les paquets qui ont été updatés (anglicisme quand tu nous tiens…)
aptitude clean
Supprime tous les fichiers téléchargés pour l'installation d'un soft et qui ne servent plus à rien
aptitude full-upgrade
Met à jour certains paquets, même si cela nécessite d'en désinstaller certains
aptitude show
Affiche les détails à propos d'un paquet
aptitude autoclean
Efface les paquets périmés mais conserve les paquets à jour
aptitude hold
Conserve un paquet à sa version actuelle et ne le met pas à jour

Alors, convaincus de laisser tomber apt-get ?

Commentaires

Rejoignez la discussion !

Vous pouvez utiliser Markdown pour les liens [ancre de lien](url), la mise en *italique* et en **gras**. Enfin pour le code, vous pouvez utiliser la syntaxe `inline` et la syntaxe bloc

```
ceci est un bloc
de code
```