Como instalar um ebuild antigo enquanto ele não estiver mais na árvore do portage? Por exemplo, subversão 1.4.4

4

Por motivos de compatibilidade, quero instalar o subversion-1.4.4-r4 em vez do mais recente.

    
por Cheng 25.05.2010 / 04:15

2 respostas

9

Como webdestroya disse, você precisará encontrar o ebuild antigo e colocá-lo em uma sobreposição. A primeira parte disso é fácil, já que a árvore do Portage é armazenada em um repositório CVS que é navegável on-line (você também pode verificar uma cópia se quiser, embora para obter apenas um ebuild desnecessário). Aqui está um link direto para a dev-util/subversion pasta que irá mostrar-lhe ebuilds para todas as versões do Subversion, voltando a ... bem, muito antes do que você precisa.

Depois de obter o ebuild, você deve colocá-lo em uma sobreposição local, que também é razoavelmente fácil. Se você já tem uma sobreposição local, você sabe como fazer isso ;-), mas se não: Crie o diretório /usr/local/portage/dev-util/subversion . Dentro dele, você precisará configurar a seguinte estrutura:

subversion/
 |- subversion-1.4.4-r4.ebuild
 |- files/
    |- subversion-1.4-db4.patch
    |- subversion-1.1.1-perl-vendor.patch
    |- subversion-hotbackup-config.patch
    |- subversion-1.3.1-neon-config.patch
    |- subversion-apr_cppflags.patch
    |- subversion-1.4.3-debug-config.patch
    |- subversion-1.4.3-neon-0.26.3.patch

onde todos os arquivos devem ser baixados da interface web do repositório CVS. Depois de ter os arquivos no lugar, execute

ebuild /usr/local/portage/dev-util/subversion/subversion-1.4.4-r4.ebuild manifest

que criará o arquivo de manifesto que lista somas de verificação e tamanhos de arquivo para o ebuild, os patches e o archive de origem. (Se este fosse um ebuild mais recente, você seria capaz de baixar o manifesto do repositório CVS, mas quando este ebuild estava atualizado, o Portage usou um sistema diferente para verificar a integridade do arquivo.)

Finalmente, quando os arquivos estiverem no lugar, adicione a linha

PORTDIR_OVERLAY="/usr/local/portage"

para o seu make.conf . Você deve então ser capaz de emerge =dev-util/subversion-1.4.4-r4 . Nenhuma garantia de que a compilação terá sucesso, embora ...

    
por 25.05.2010 / 07:53
0

Se você quiser instalar algo que não esteja na árvore do portage, você terá que encontrar / criar o ebuild você mesmo.

De lá, você pode adicioná-lo à árvore e instalá-lo.

    
por 25.05.2010 / 06:06