Utilizando o update-alternatives para utilizar versões mais atualizadas de programas no Ubuntu
Você já percebeu que nem sempre as distribuições acompanham a evolução dos aplicativos?
Um exemplo é o Java JDK, que (até a data desse post) já se encontra em sua versão 1.7.0, porém nos repositórios o openjdk disponível é o 1.6.
Outro exemplo é o Firefox, que, dependendo da versão do Ubuntu, se encontra nas versões 3.x ou 5.x e já está disponível a versão 6.0.
O problema se tornou crítico, quando tive alguns problemas no JDownloader com o JDK mais “antigo”. Então, busquei formas de atualizar a versão do java no sistema, sem provocar grandes problemas, pois se eu utilizava o APT pra desinstalar o JDK antigo, para fazer uma instalação manual, aquele programa sugeria desinstalar vários outros programas que dependem do JAVA, inclusive o JDownloader.
Foi então que descobri o update-alternatives, onde é possível definir alternativas para os programas instalados. De acordo com o help do comando, esse espera os seguintes parâmetros:
update-alternatives [<opção> ...] <comando>
O parâmetro <comando>, espera:
--install <link> <name> <path> <priority>
[--slave <link> <name> <path>] ...
add a group of alternatives to the system.
--remove <name> <path> remove <path> from the <name> group alternative.
--remove-all <name> remove <name> group from the alternatives system.
--auto <name> switch the master link <name> to automatic mode.
--display <name> display information about the <name> group.
--query <name> machine parseable version of --display <name>.
--list <name> display all targets of the <name> group.
--get-selections list master alternative names and their status.
--set-selections read alternative status from standard input.
--config <name> show alternatives for the <name> group and ask the
user to select which one to use.
--set <name> <path> set <path> as alternative for <name>.
--all call --config on all alternatives.
Mais detalhes do comando, digite man update-alternatives.
Sobre a solução encontrada, segue como atualizar o firefox e o jdk do java:
Java:
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0/jre/bin/java 3
Firefox:
update-alternatives --install /usr/bin/firefox firefox /usr/lib/firefox-6.0/firefox 1
Como visto anteriormente, o comando –install, espera os seguintes parâmetros: <link> <name> <path> <priority>
Então, no caso do java:
link: binário java, /usr/bin/java
nome: java
path: /usr/lib/jvm/jdk1.7.0/jre/bin/java
prioridade: nesse caso, como já tinha outro java, coloquei prioridade 3. Para verificar as alternativas já instaladas digite update-alternatives --display java
Créditos: http://balajitheone.blogspot.com/2011/08/installing-oracle-sun-jdk-17-on-ubuntu.html