Existe-t-il une situation dans laquelle un référentiel nouvellement ajouté devrait installer les paquets de "dépendance" avant d'être invité à installer quoi que ce soit de nouveau ?
Je viens de rencontrer la situation suivante :
Lorsque mon système a été mis à jour, j'ai ajouté la fonction Certbot ( http://ppa.launchpad.net/certbot/certbot/ubuntu ), et après avoir lancé une mise à jour, neuf paquets ont été signalés comme pouvant être mis à niveau. J'ai essayé de faire une mise à jour et j'ai obtenu le résultat suivant :
$ sudo aptitude safe-upgrade
Resolving dependencies...
The following NEW packages will be installed:
python3-certifi{a} python3-idna{a}
The following packages will be upgraded:
python-chardet python-pkg-resources python-six python3-chardet python3-configobj python3-pkg-resources python3-requests python3-six python3-urllib3
9 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 906 kB of archives. After unpacking 1,183 kB will be used.
Je peux comprendre que des paquets soient mis à niveau : le nouveau dépôt contient des versions plus récentes de paquets déjà installés sur mon système, ils sont donc marqués pour être mis à niveau. Mais pourquoi essaie-t-il d'installer nouveau paquets ? Les paquets en question semblent certainement pertinents pour la logiciel sur le référentiel Mais pourquoi seraient-ils installés automatiquement ?
S'il s'agit d'une dépendance d'un élément de mon système, comment fonctionnait-il auparavant ? Comment puis-je savoir exactement ce qui se passe ?
MISE À JOUR
J'ai vérifié les dépendances inversées avec apt-cache
; e.g.,
$ sudo apt-cache rdepends python3-certifi
python3-certifi
Reverse Depends:
python3-requests
Avec la Certbot désactivé, j'obtiens
$ apt-cache depends python3-requests
python3-requests
Depends: python3-urllib3
Depends: <python3:any>
python3:i386
python3
Depends: ca-certificates
Depends: python3-chardet
Depends: python3-urllib3
et lorsque je l'active, j'obtiens
$ apt-cache depends python3-requests
python3-requests
Depends: python3-certifi
Depends: python3-chardet
Depends: python3-idna
Depends: python3-urllib3
Depends: <python3:any>
python3:i386
python3
Depends: ca-certificates
Depends: python3-urllib3
Je pense donc que la vraie question est la suivante : Les dépendances des paquets sont-elles fonction des paquets/référentiels disponibles ? ? Je pensais que les dépendances devaient être fixes : un paquet nécessite un autre paquet pour fonctionner (qu'il soit disponible ou non) ou non (dans ce cas, il ne s'agit pas vraiment d'une dépendance).
Système :
- Kubuntu 16.04
- Kernel 4.13.0-45-generic #50~16.04.1-Ubuntu 64-bit