{{tag>apt paquet gestionnaire_de_paquets installation_logiciel Focal Bionic}}
====== apt ======
**apt** (en minuscule) est un outil en [[:tutoriel:console_ligne_de_commande|ligne de commande]] qui permet de gérer des [[:paquet|paquets]] en provenance de [[:dépôts]] **[[:APT]]** (en majuscule).
Il permet donc principalement d'installer et de désinstaller des logiciels en ligne de commande sur Ubuntu.
Il rassemble des fonctionnalités qu'implémentent les outils [[:apt-get]] et [[:apt-cache]], mais rend leur usage plus convivial pour l'utilisateur final.
apt est installé par défaut sur Ubuntu.
Le retour d'apt est susceptible d'évoluer selon les choix des développeurs, et leur vision d'une bonne ergonomie. Si vous comptez utiliser ces fonctionnalités dans un script, préférez l'usage de [[:apt-get]] et [[:apt-cache]]. Leur retour sera plus facilement analysable par votre script et leur rétro-compatibilité est mieux garantie.
===== Utilisation =====
La syntaxe d%%'%%''[[man>apt]]'' est la suivante :
apt [méthode] [paramètres]
Certaines méthodes requièrent l'utilisation de la commande ''[[:sudo]]'', d'autres pas, selon qu'elles influent ou non sur les fichiers du système.
==== Méthodes ====
=== Méthodes courantes ===
^ méthode ^ paramètre ^ description ^
| **list** | nom(s) du ou des paquet(s) | Liste les paquets selon leur nom. |
| **search** | texte à rechercher | Liste les paquets dans les descriptions desquels on trouve le texte correspondant. |
| **show** | nom(s) du ou des paquet(s) | Affiche les détails du paquet. |
| **install** | nom(s) du ou des paquet(s) | Installe les paquets. |
| **remove** | nom(s) du ou des paquet(s) | Supprime les paquets. |
| **autoremove** | pas de paramètre | Supprime automatiquement les dépendances inutilisées. |
| **update** | pas de paramètre | Met à jour //la liste// des paquets disponibles (mais pas les paquets eux-mêmes). |
| **upgrade** | pas de paramètre | Met à jour le système en installant/mettant à jour les paquets. |
| **full-upgrade** | pas de paramètre | Met à jour le système en supprimant/installant/mettant à jour les paquets. |
| **edit-sources** | pas de paramètre ou nom du fichier .list | Permet d'éditer les [[:tutoriel:comment_modifier_sources_maj|sources de logiciels]]. |
=== Autres Méthodes ===
^ méthode ^ paramètre ^ description ^
| **purge** | nom(s) du ou des paquet(s) | Supprime un paquet ainsi que ses fichiers de configuration. |
| **depends** | nom du ou des paquet | Liste les dépendances d'un paquet. |
| **rdepends** | nom du ou des paquet | Liste les paquets qui ont pour dépendance ce paquet. |
| **autoclean** | pas de paramètre | Supprime le cache APT des paquets périmés. |
| **autopurge** | pas de paramètre | Supprimme automatiquement les dépendances inutilisées ainsi que leurs fichiers de configuration |
| **clean** | pas de paramètre | Supprime tout le cache APT. |
| **changelog** | pas de paramètre | Affiche le journal des modifications du paquet |
| **policy** | pas de paramètre | Affiche les versions des paquets indiqués et leur statut |
| **help** | pas de paramètre | Fournit une aide rapide concernant cet outil. |
==== Patterns ====
=== Avant Ubuntu Focal 20.04 ===
Avec les version précédant la version 2.0 d'apt, introduite avec [[:focal|Ubuntu Focal 20.04]], il est possible d'indiquer en paramètre une expression régulière à la place des noms de paquets.
Par exemple la commande
''apt list \*-desktop''
listera tous les paquets dont le nom se termine par ''-desktop''.
=== À partir d'Ubuntu Focal 20.04 ===
Depuis la version 2.0, c'est la fonctionnalité des //patterns// (jusque là propre à [[:aptitude#motifs_de_recherche_utilisation_avancee|aptitude]]) qui a été implémentée.
Cette fonctionnalité est décrite en anglais sur [[https://manpages.ubuntu.com/manpages/focal/man7/apt-patterns.7.html|cette page]]. Entre autre :
* ''~n'' pour utiliser une [[wpfr>expression régulière]] sur le nom.
* ''~i'' permet de sélectionner les paquets installés.
* ''~U'' indique les paquets à mettre à jour.
* ''~M'' pour les paquets installés automatiquement.
* ''!'' avant le //pattern// permet d'inverser la sélection.
Dans le cas où on utilise plus d'un //pattern// ou une combinaison de //patterns// (''|'' signifie par ex. l'opérateur logique //ou//), il faut entourer l'ensemble des paramètres de guillemets ''%%'%%''.
Pour lister tous les paquets dont le nom se termine par ''-desktop'' on utilisera donc la commande suivante :
apt list ~n-desktop$
Dans cette commande le pattern ''~n'' (ou ''~name'') précède un nom de paquet (en [[wpfr>expression régulière]]), et l'expression ''$'' termine la chaîne de caractère (et donc la fin du nom du paquet).
Pour le début d'un nom, c'est l'expression ''^'' qu'on place en début de chaîne. Par exemple :
apt list ~n^ubuntu-
==== Options ====
Certaines options passées en paramètres permettent de modifier le comportement d'**apt**, ou les retours de certaines commandes.
* ''%%--%%installed'' ou ''-i'' permet de ne sélectionner que les paquets //installés//.
* ''%%--%%all-versions'' ou ''-a'' permet de sélectionner toutes les versions d'un paquet.
==== Exemples ====
=== Recherche d'un paquet ===
Pour rechercher un paquet avec apt on utilise cette commande :
apt search [mots clés]
apt retournera une liste de tous les paquets dont tous les mots clés spécifiés apparaissent dans le nom ou la description du paquet.
=== Installation d'un paquet ===
Pour installer un paquet on lance la commande suivante :
sudo apt install [nom du paquet]
apt installera les dépendances éventuellement nécessaires.
=== Désinstallation d'un paquet ===
Pour désinstaller un paquet on utilise cette commande :
sudo apt remove [nom du paquet]
apt ne supprimera pas automatiquement les éventuelles dépendances. Par contre si le paquet est lui-même une dépendance indispensable à un autre paquet installé, ce dernier sera également désinstallé (heureusement le script demandera d'abord une confirmation).
On peut supprimer toutes les dépendances orphelines avec la commande :
sudo apt autoremove
Il est également possible de supprimer un paquet, ainsi que ses dépendances et ses fichiers de configuration en une seule commande :
sudo apt autoremove --purge [nom du paquet]
ou
sudo apt autopurge [nom du paquet]
=== Mise à jour des logiciels ===
Les mises à jour ordinaires du système peuvent se faire avec les commandes suivantes :
sudo apt update
sudo apt full-upgrade
=== Lister les paquets installés manuellement ===
apt list '~i !~M'
=== Lister les paquets ayant des résidus de configuration (rc) ===
apt list ?config-files
ou apt list ~c
Pour supprimer ces paquets remplacer //list// par //remove// ou purge.
=== Lister les paquets qui n'existent pas (ou plus) dans les dépôts ===
apt list ?obsolete
ou apt list ~o
=== Lister les paquets qui ont des dépendances cassées ===
apt list ?broken
ou apt list ~b
===== Problèmes courants =====
Vous pouvez consulter la liste des problèmes courants liés plus généralement à APT sur [[:probleme_apt|cette page de la documentation]].
===== Voir aussi =====
* [[:APT]]
* [[:apt-get]]
* [[:apt-cache]]
----
//Contributeurs : [[:utilisateurs:krodelabestiole]]//