L’un des nombreux avantages de Archlinux, c’est que l’on dispose toujours de la dernière version des applications Linux. C’est aussi son gros inconvénient, comme par exemple avoir le privilège d’être parmi les premiers à subir l’immonde Gnome3.
Tout récemment, l’upgrade java7 m’a également causé des soucis, principalement avec le génial serveur DLNA serviio, qui n’est pas encore compatible java7.
Sur les distribs Debian et dérivés, j’avais l’habitude d’utiliser update-java-alternatives, qui permettait d’installer plusieurs versions de jvm, et de switcher simplement de l’une à l’autre en cas de besoin. Malheureusement aucun mécanisme similaire sur Arch. Il existe bien un package ‘fake-java’, censé apporter une réponse, mais je n’ai pas compris comment l’utiliser.
Heureusement, Arch permet de downgrader des packages.
Pour repasser à la version 6 de java, voici donc la manip :
ls /var/cache/pacman/pkg | grep jdk sudo pacman -U /var/cache/pacman/pkg/jdk-6u26-1-x86_64.pkg.tar.xz
A ce stade, pacman peut refuser le downgrade, prétextant que le fichier /usr/share/applications/java-policy-settings.desktop existe déjà. Si c’est le cas, supprimez-le, puis recommencez la manip.
Faites ensuite la même manip pour la jre :
sudo pacman -U /var/cache/pacman/pkg/jre-6u26-1-x86_64.pkg.tar.xz
Il faut ensuite dire à pacman de ne pas upgrader java. Pour celà, éditez le fichier /etc/pacman.conf et ajoutez la ligne suivante :
IgnorePkg = jdk jre

