J'ai un paquet deb pour l'installation.
Dois-je installer par dpkg -i my.deb
, ou par apt ?
Les deux géreront-ils bien le problème de dépendance logicielle ?
Si par apt, comment puis-je installer depuis le deb par apt ?
Réponse acceptée :
Lorsque vous utilisez apt
pour installer un paquet, sous le capot il utilise dpkg
. Lorsque vous installez un package à l'aide d'apt, il crée d'abord une liste de toutes les dépendances et la télécharge depuis le référentiel.
Une fois le téléchargement terminé, il appelle dpkg
pour installer tous ces fichiers, en satisfaisant toutes les dépendances.
Donc, si vous avez un .deb
fichier, vous pouvez l'installer en :
-
Utilisation :
sudo dpkg -i /path/to/deb/file sudo apt-get install -f
-
Utilisation :
sudo apt install ./name.deb
Ou
sudo apt install /path/to/package/name.deb
Avec l'ancien
apt-get
versions, vous devez d'abord déplacer votre fichier deb vers/var/cache/apt/archives/
annuaire. Pour les deux, après avoir exécuté cette commande, il téléchargera automatiquement ses dépendances. -
Première installation de
gdebi
puis ouvrez votre fichier .deb en l'utilisant (clic droit -> Ouvrir avec ). Il installera votre package .deb avec toutes ses dépendances.Remarque :APT maintient l'index des packages qui est une base de données des packages disponibles disponibles dans le référentiel défini dans
/etc/apt/sources.list
fichier et dans le/etc/apt/sources.list.d
annuaire. Toutes ces méthodes ne parviendront pas à satisfaire la dépendance logicielle si les dépendances requises par le deb ne sont pas présentes dans l'index du package.
Pourquoi utiliser sudo apt-get install -f
après sudo dpkg -i /path/to/deb/file
(comme mentionné dans la méthode 1) ?
De man apt-get
:
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place.
Quand dpkg
installe un package et une dépendance de package n'est pas satisfaite, il laisse le package dans un état "non configuré" et ce package est considéré comme cassé.
Le sudo apt-get install -f
La commande essaie de réparer ce paquet cassé en installant la dépendance manquante.