# Qu'est ce que sont les paquets virtuels?

**URL:** <https://www.debian-fr.org/t/quest-ce-que-sont-les-paquets-virtuels/91644>\
**Category:** Support Debian\
**Tags:** apt\
**Created:** [Octobre 17, 2025, 5:41 UTC](https://www.debian-fr.org/t/quest-ce-que-sont-les-paquets-virtuels/91644 "2025-10-17T05:41:37Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pierre\_G](https://www.debian-fr.org/user_avatar/www.debian-fr.org/pierre_g/32/15045_2.png) [@Pierre\_G](https://www.debian-fr.org/u/Pierre_G)\
**Post date:** [Octobre 17, 2025, 5:41 UTC](https://www.debian-fr.org/t/quest-ce-que-sont-les-paquets-virtuels/91644/1 "2025-10-17T05:41:37Z")

</div>

Salut,

Voici un peu de contexte pour commencer :

Je souhaite installer le Docker Engine.

Il y a un script de commodité qui fait tout automatiquement mais j’ai choisi (à des fins d’apprentissage) d’utiliser la «&nbsp;version longue&nbsp;» qui est divisée en plusieurs étapes. La première étape consiste en la configuration du référentiel apt de Docker (_Set up Docker’s `apt` repository_) dont voici le script :

```auto
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

```

J’ai tout d’abord pensé que c’était bizarre que l’on ne puisse pas directement taper «&nbsp;`apt install docker-ce`&nbsp;» (c’est ce qui est demandé dans l’étape suivante).

Par curiosité, j’ai voulu voir ce qui se passerait si je tapais «&nbsp;`apt show docker-ce`&nbsp;» et voici ce qui m’a été renvoyé :

```auto
Package: docker-ce
State: not a real package (virtual)
N: Can't select candidate version from package docker-ce as it has no candidate
N: Can't select versions from package 'docker-ce' as it is purely virtual
N: No packages found

```

En cherchant, j’ai fini par tomber sur cette [explication donnée à propos des paquets virtuels dans le manuel utilisateur de Debian](https://www.debian.org/doc/manuals/debian-faq/pkg-basics.en.html#virtual) :

> A virtual package is a generic name that applies to any one of a group of packages, all of which provide similar basic functionality. For example, both the `konqueror` and `firefox-esr` programs are web browsers, and should therefore satisfy any dependency of a program that requires a web browser on a system, in order to work or to be useful. They are therefore both said to provide the «&nbsp;virtual package&nbsp;» called `www-browser` .

D’après ce que j’en comprends : les paquets virtuels seraient donc comme des sortes d’«&nbsp;espaces génériques réservés&nbsp;» destinés à pointer vers un paquet «&nbsp;concret&nbsp;».

**Cette définition est-elle valable ?**

**Cela veut donc t-il dire que les développeurs de Docker ont réservé ce nom «&nbsp;à l’avance&nbsp;» ?** Car le nom du paquet existe, la preuve : si je tape «&nbsp;`apt show paquet_inconnu`&nbsp;» la sortie en console n’est pas la même :

```auto
apt show paquet-inconnu
N: Unable to locate package paquet-inconnu
N: Unable to locate package paquet-inconnu
E: No packages found

```

Questions subsidiaires :

1. Pourquoi les développeurs de Docker s’appuient il sur ce mécanisme ?
2. Existe t’il un mécanisme de sécurité qui empêche n’importe quel paquet de prendre la place du «&nbsp;paquet officiel&nbsp;» ? Je vois qu’il est question d’une «&nbsp;clé GPG&nbsp;» est-ce cela ?

D’avance, merci.

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Octobre 17, 2025, 7:37 UTC](https://www.debian-fr.org/t/quest-ce-que-sont-les-paquets-virtuels/91644/2 "2025-10-17T07:37:07Z")

</div>

> [@Pierre\_G](#):
>
> Questions subsidiaires :

Le paquet Docker à existé un temps sous un autre nom empaqueter par les équipes Debian mais pas mis à jour aussi souvent que le désirais les utilisateurs, la communauté s’est donc tourné vers les paquets officiels.  
Donc nécessité d’ajouter le dépôts et les prérequis pour permettre à APT d’installer à la sauce Debian le paquet 😉

non gpg signe uniquement le dépôt pour l’authentifier … la mécanique derrière les paquet virtuel est bien complexe et à mon avis tu n’a pas besoin à mon avis de connaître cette mécanique pour l’instant 😉

> **[7.8. Qu'est-ce qu'un paquet virtuel ? - Chapitre 7. Les bases du système de...](https://www.debian.org/doc/manuals/debian-faq/pkg-basics.fr.html#virtual)**
>
> Un paquet virtuel est un nom générique qui s'applique à n'importe quel groupe de paquets fournissant une fonctionnalité de base semblable. Par exemple, les programmes konqueror et firefox-esr sont des navigateurs Internet, et ils devraient donc...

Procédure simple :

- s’assurer de ne pas avoir de podman ou de docker ancien (paquet debian surtout ^^ ).  
\*ajouter la clé du dépôts et le dépôts lui même
- recharger le cache apt et installer le paquet

Attention après l’installation il y a des opérations de sécurisation et d’optimisation (dont certaines fourni dans la doc officielle) à suivre, surtout si le socket de docker est ouvert vers l’extérieur !
