Pourquoi les distributions Linux basées sur Debian ont-elles apt aussi bien qu’apt-get ? Apt a-t-il remplacé apt-get ou ont-ils des objectifs différents ? Nous expliquons la relation entre ces deux commandes.

Le système de gestion des paquets de Debian

Un effort majeur dans la création d’une distribution Linux est de concevoir et de créer un système de gestion des paquets. Vos utilisateurs doivent avoir un moyen d’installer et de désinstaller des paquets logiciels. Cela nécessite un logiciel pour récupérer les fichiers de paquets depuis votre dépôt de logiciels et pour les installer correctement sur les ordinateurs des utilisateurs.

Ce n’est pas une mince affaire. Même en mettant de côté l’ingénierie logicielle, l’hébergement des référentiels de logiciels demande du temps, des efforts et des dépenses. C’est l’une des raisons pour lesquelles tant de « nouvelles » distributions Linux sont des dérivés d’une distribution Linux existante.

Cela conduit à des familles ou des généalogies de distributions Linux, comme les distributions basées sur Debian, les distributions basées sur Red Hat, les distributions basées sur Arch, etc.

La famille des distributions Debian – y compris Ubuntu et toutes les distributions dérivées d’Ubuntu – utilise le gestionnaire de paquets Debian. Celui-ci utilise des fichiers de paquets portant l’extension  » .deb « , appelés fichiers DEB. Les fichiers DEB sont des fichiers compressés contenant d’autres fichiers d’archive. Les fichiers d’archive contiennent les fichiers exécutables de l’application, les pages de manuel, les bibliothèques, etc.

L’installation du logiciel à partir d’un fichier DEB implique de décompresser tous ces fichiers composants et de les placer aux bons endroits sur votre ordinateur. Elle nécessite également une interaction avec le système d’exploitation et l’environnement de bureau afin que l’application apparaisse dans les recherches d’applications et que son icône puisse être ajoutée aux docks ou aux menus système.

Les commandes apt-get et apt font toutes deux cela. Mais pourquoi avons-nous deux commandes pour la même chose ?

5 SYSTÈMES D’EXPLOITATION LINUX POUR SMARTPHONES À INSTALLER SUR VOTRE APPAREIL

La chaîne de commande

Le paquet qui effectue réellement l’installation s’appelle dpkg. Il s’agit en fait d’une famille de commandes comprenant dpkg-split, dpkg-trigger, et dpkg-divert. Celles-ci sont appelées, si et comme nécessaire, par les outils de la suite Advanced Package Tool, ou APT. APT est une autre collection d’outils, comprenant apt-get, apt-cache et apt.

La commande dpkg est considérée comme une commande de bas niveau. Au-delà des interactions les plus simples, elle devient très compliquée avec un grand nombre d’options. La commande apt-get agit comme un frontal de la suite de commandes dpkg. Cela simplifie considérablement les choses. apt-get est conçue comme une commande destinée à l’utilisateur et non comme une commande de bas niveau. Malgré cela, malgré son rôle d’interface avec l’utilisateur, une autre commande appelée apt-cache est utilisée pour afficher des informations à l’utilisateur.

La commande apt fournit un autre moyen de « parler » à dpkg par le biais d’un outil en ligne de commande plus accessible et plus convivial. Elle fournit un sous-ensemble des fonctionnalités d’apt-get, mais c’est un grand sous-ensemble et elle fournit toutes les fonctionnalités couramment utilisées et elle inclut également les fonctionnalités d’apt-cache.

Linux Mint mérite une mention spéciale ici. Les mainteneurs de Linux Mint ont développé leur propre version d’apt, qui est une enveloppe Python pour apt-get. Ce n’est pas l’apt dont nous parlons ici. Nous faisons référence à l’apt Debian grand public, qui a été publié en 2014, et a attiré l’attention et la traction dans le user-verse lorsqu’il a été inclus dans Ubuntu 16.04 en 2016.

Les différences entre apt et apt-get

Ainsi, dpkg est l’application de bas niveau en arrière-plan. La commande apt-get est une interface complète mais simplifiée de dpkg, et apt est une version plus conviviale mais légèrement dépouillée d’apt-get.

Mais apt-get et apt fournissent plus qu’une simple interface simplifiée à dpkg. Ils font des choses que dpkg ne fait pas. Ils récupèrent les fichiers des dépôts et essaient d’aider à résoudre les dépendances manquantes et les conflits.

De son côté, la commande apt fait certaines choses qu’apt-get ne fait pas. Elle fournit plus d’informations du type de celles que l’utilisateur moyen souhaite voir lors d’une installation et supprime certaines des informations les plus obscures qu’apt-get affiche. apt offre un retour visuel supérieur et utilise des surbrillances de couleur et des barres de progression dans la fenêtre du terminal.

Il existe quelques commandes communes à apt et apt-get. Toutes ces commandes peuvent être précédées par apt ou apt-get et se comporteront de la même manière :

install nom_du_paquet : Installer un paquet.
remove nom_du_paquet : Supprime (désinstalle) un paquet.
purge nom_du_paquet : Supprimer un paquet et ses fichiers de configuration.
update nom-de-paquet : Mettre à jour les informations du référentiel.
upgrade : Mettre à jour tous les paquets.
autoremove : Supprime les bibliothèques et les autres paquets qui ne sont plus nécessaires.

L’option apt full-upgrade remplace l’option apt-get dist-upgrade.

Ce sont de nouvelles commandes pour apt :

apt search : Recherche un nom de paquet dans les dépôts. C'est la même chose que apt-cache search
apt show : Affiche des informations sur un paquet. C'est la même chose qu'apt-cache show.
Option apt list : Affiche les listes des paquets installés ou pouvant être mis à niveau.
apt edit-sources : Modifie directement la liste des dépôts dans lesquels apt recherche des paquets.

Installation d’une application

Vous pouvez utiliser la recherche apt pour voir si un paquet existe dans les dépôts ou pour vérifier que vous avez le bon nom pour le paquet. Disons que vous voulez installer Scribus mais que vous ne connaissez pas le nom du paquet. Vous pouvez essayer de chercher scribus-desktop.

apt search scribus-desktop

Recherche dans les dépôts d’un paquet appelé scribus-desktop

Cette recherche n’a rien donné. Nous allons réessayer avec un indice de recherche plus court et plus générique.

apt search scribus

Recherche dans les dépôts d’un paquet appelé scribus

Cette recherche renvoie plusieurs résultats, et nous pouvons voir qu’il y en a un appelé « scribus », et qu’il semble bien être le paquet de base de l’application de publication assistée par ordinateur Scribus. La commande apt show nous donnera plus de détails.

apt show scribus

Utilisation d’apt show pour en savoir plus sur le paquetage scribus

Nous obtenons un tas d’informations sur le paquet, y compris ce qui sera installé et une description du logiciel.

Informations sur le paquet scribus

Il suggère également d’autres paquets qui pourraient être nécessaires, en fonction de nos besoins.

Pour installer le paquet, nous devons utiliser sudo.

sudo apt install scribus

Installation du paquet scribus

Les fichiers sont récupérés depuis les dépôts. Le fichier en cours de récupération est surligné en marron.

Récupération des fichiers dans le cadre de l’installation d’un paquetage

Lorsque les fichiers ont été récupérés, ils sont installés. La progression de l’installation est indiquée sous forme de pourcentage affiché en chiffres et sous forme de barre de progression.

L’installation du paquet avec un pourcentage et une barre de progression

Autres commandes

Les commandes apt list et apt edit-sources sont des options dans apt qui n’existent pas dans apt-get.

La commande apt list peut être utilisée avec les options –installed ou –upgradeable pour voir les paquets installés sur votre ordinateur et ceux qui pourraient être mis à jour.

Pour voir la liste des applications installées sur votre ordinateur, utilisez :

apt list –installed

Utiliser apt pour lister les applications installées

En faisant défiler la sortie, nous pouvons voir deux entrées pour notre application Scribus nouvellement installée.

Une liste des applications installées

Pour voir si l’une des applications installées peut être mise à niveau, utilisez l’option –upgradeable.

apt list –upgradeable

Une liste des applications qui peuvent être mises à niveau

La commande apt vous permet également de modifier les informations stockées sur les dépôts dans lesquels apt recherche des paquets. Ne le faites que si vous savez ce que vous faites.

sudo apt edit-sources

Modifier les informations sur les dépôts avec apt

Cette commande ouvre votre éditeur par défaut et charge le fichier contenant les informations du dépôt.

Fichier de données du dépôt ouvert dans l’éditeur nano

Dois-je utiliser apt ou apt-get ?

La commande apt-get n’est pas mise à jour souvent, et c’est une bonne chose. Elle doit maintenir la compatibilité ascendante. La compatibilité ascendante n’est pas un souci pour apt. Elle est considérée et traitée comme une commande destinée à l’utilisateur.

Pour une utilisation quotidienne, utilisez apt.

Si votre script a quelque chose à voir avec l’installation de paquets, utilisez apt-get. Cela vous donne la plus grande chance de portabilité et de compatibilité dans vos scripts.