Estão ocorrendo, no momento (setembro de 2009), problemas no
Portage (instalador de pacotes do Gentoo e distros derivadas) com as versões de Python superiores ao 2.6.
Sabedores do problema, a
Fundação Gentoo e
Daniel Robbins (Funtoo), mascararam as versões de Python 3 ou superiores, não recomendando sua utilização.
Mas e se você atualizou e agora seu Portage não funciona mais, não consegue instalar nada e os comandos do "emerge" reportam erros de Python?
Ora, Gentoo sem Portage é inutilizável...
Existem métodos para solucionar sem precisar reformatar seu Gentoo, Funtoo ou Sabayon.
1) Existe um site com binários de Gentoo pré-compilados para reparos ou forçar instalação. Baixe a última versão de
Python 2.6 do site abaixo. Use o navegador, Wget ou outro downloader (usuários de Gentoo costumam gostar de Prozilla, Curl ou Ária2).
Acesse:
http://tinderbox.dev.gentoo.org/default-linux/
Clique na pasta correspondente a sua arquitetura, em seguida em "dev-lang" e por fim, clique no link correspondente ao pacote do Python 2.6.
Salve e expanda o arquivo no diretório raiz, / (importante que seja nesse diretório):
cd /
# su
# tar xfpj python-2.6...nome-completo.tbz2
Troque a versão de Python do seu Gentoo:
# eselect python list
# eselect python set [número da versão 2.6]
# python-updater
# env-update
# source /etc/profile
Então experimente simular, instalar algo com Portage, ou sincronizar:
# emerge -p [nome do pacote]
# emerge -p --sync
Se ainda não funcionar, faça também as operações do item 2.
2) Baixe a última versão do Portage (Snapshot) do espelho Gentoo, salve-a e expanda em uma pasta criada na área de trabalho:
cd /
$ cd /home/usuário/Desktop
$ su
# mkdir port-reparo
# cd port-reparo
# wget http://www.las.ic.unicamp.br/pub/gentoo/snapshots/ultimo portage.tar.bz2
# tar xf ultimo.portage.tar.bz2
Será criado um diretório Portage e sub-diretórios com todos os "Ebuilds".
Copie as bibliotecas de Python e binárias sobre as danificadas com os comandos:
cd /
$ cd /home/usuário/Desktop/port-reparo/portage
$ su
# cp -R pym bin /usr/lib/portage/
Mais detalhes, veja:
Experimente de novo usar o Portage (item 1). Se o comando emerge continuar dando erros, siga o item 3.
3) Com um gerenciador de arquivos em modo root, procure pela pasta
/usr/portage/profiles/updates e renomeie a pasta "updates" para "updates.old".
Experimente usar o comando emerge. Se ainda não funcionar, volte o nome ao original, "updates", copie como "updates.copia" e a seguir, delete todos os arquivos internos da pasta "updates".
Há ainda outros métodos que podem ser testados, se os procedimentos anteriores falharem, mas eles são mais arriscados (itens 4 e 5).
4) Renomeie o Portage antigo danificado e depois copie o Portage novo, inteiro (que baixou no item 2), para /usr. Teste novamente o uso do emerge, e se necessário, refaça o último comando do item 2.
cd /
$ cd /usr
$ su
# mv portage portage.old
# cp /home/usuário/Desktop/port-reparo/portage /usr
# cp -R pym bin /usr/lib/portage/ (faça-o só se necessário)
5) Para Portage muito danificado ou muito antigo, siga o método reportado no blog:
Em meus testes com Sabayon e Gentoo sempre consegui recuperar o Portage.
Nenhum comentário foi encontrado.