oracle-java8-installer entraîne la suppression de «apt»? [fermé]

14

J'exécute fidèlement depuis la première version alpha, tirant des mises à jour quotidiennes. J'ai également installé l'installateur oracle-java7 à partir du WebUpd8 PPA. Aujourd'hui, j'ai remarqué lors d'une mise à niveau dist que le programme d'installation d'oracle-java7 était en cours de suppression. Sur mon système de périphérie, j'autorise simplement tous les paramètres par défaut, j'ai donc autorisé la suppression en espérant essayer la version java 8 de toute façon. Cependant, quand je suis allé installer le package oracle-java8-installer, il voulait supprimer "apt" !? Cela a évidemment suscité ma préoccupation, car cela ressemble même à un problème de sécurité. Une aide à la compréhension serait grandement appréciée.

$ sudo apt-get install oracle-java8-installer
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  visualvm ttf-baekmuk ttf-unfonts ttf-unfonts-core ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho ttf-sazanami-mincho
  ttf-arphic-uming
The following packages will be REMOVED:
  apt apturl nautilus-share python3-software-properties software-center software-properties-common software-properties-gtk
  ubuntu-extras-keyring ubuntu-minimal unattended-upgrades
The following NEW packages will be installed:
  oracle-java8-installer
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
  apt
0 upgraded, 1 newly installed, 10 to remove and 0 not upgraded.
Need to get 18.7 kB of archives.
After this operation, 7,838 kB disk space will be freed.
You are about to do something potentially harmful.
To continue type in the phrase 'Yes, do as I say!'
 ?] 
Lance Caraccioli
la source
1
@AvinashRaj: Je pense qu'il le sait. :) @Lance: Je soupçonne que c'est quelque chose dans le apt-get dist-upgradequi cause ce problème, car le package d'installation a très peu de dépendances et un conflit, et oracle-java7-installern'aurait pas dû être supprimé.
saiarcot895
1
Essayez de conserver tous les packages importants indiqués ci-dessus, puis essayez d'installer le oracle-java8-installerpackage.
Avinash Raj
1
@AvinashRaj:j2se-common
saiarcot895
1
Cela ne devrait pas se produire, veuillez signaler un bogue.
Braiam
1
Modérateur. Ce problème est sur le sujet et est directement lié à Ubuntu. De plus, un bug a été signalé presque immédiatement après que j'ai posé la question. Je participe activement aux communautés Ubuntu et StackExchange. J'ai posé cette question en souhaitant apprendre de mes pairs sur et l'aspect du développement Ubuntu. Je soutiens que la nature même de cette question est la raison pour laquelle ce site existe. J'ai étudié les règles du centre d'aide et cette question fait partie des directives. À mon avis, le fait de suspendre de telles questions décourage activement la participation de la communauté. Veuillez reconsidérer.
Lance Caraccioli

Réponses:

8

Cette récente modification référencée dans le package «apt» ChangeLog semble être le coupable probable:

apt (0.9.15.4ubuntu4) trusty; urgency=low

  Cherry pick fixes from the apt 1.0 branch:

  [ Michael Vogt ]
  * add sun-java{5,6}-jdk to breaks/replaces as that provided a "apt"
    binary as well

Le package oracle-java8-installer "fournit" le package "sun-java6-jdk", donc ce conflit se propage et nous empêche d'installer les packages WebUpd8 - même si ni oracle-java7-installer ni oracle-java8-installer en fait installe le binaire problématique "apt" mentionné dans le changelog apt.

Je suis allé de l'avant et j'ai soumis un rapport de bogue pour cela: https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1302736

Andy S
la source
7

Andy S a le problème sous-jacent ici et je m'attends à une solution bientôt. Veuillez utiliser le lien de rapport de bogue qu'il a fourni et indiquer qu'il vous affecte également afin qu'il gagne en priorité.

Si vous ne pouvez absolument pas attendre, voici une solution temporaire pour ignorer les problèmes de dépendance et forcer l'installation:

  • Téléchargez le package .deb depuis apt sudo apt-get download oracle-java7-installer

  • Faites l'installation du .deb que vous venez de télécharger, en ignorant toutes les dépendances sur lesquelles apt se plaint: sudo dpkg -i --ignore-depends=apt file-you-just-downloaded.deb

Deux éléments à noter:

  1. vous pouvez l'utiliser de la même manière pour Java 8 en modifiant les commandes ci-dessus en conséquence.
  2. Pendant au moins le moment, votre apt pensera qu'il a une dépendance cassée et demandera de supprimer oracle-java7-installer. Vous pouvez revenir en arrière en utilisant apt-get -f install.
AvatarKava
la source
1

Une autre solution de contournement jusqu'à ce que cela soit résolu consiste à modifier le fichier deb de webupd8 et à le supprimer sun-java6-jdkde la Providesligne du fichier de contrôle deb. Il y a un script pratique dans cette réponse sur superuser.com. Saisissez simplement le fichier d'origine , exécutez le script dessus, modifiez la Providesligne et installez le fichier modifié avec sudo dpkg -i.

J'ai téléchargé le package modifié , mais je suggère fortement d'utiliser le fichier d'origine et de faire la modification vous-même, car vous ne devez pas installer des trucs par des personnes aléatoires sur Internet;)

Benjamin Wohlwend
la source