Portage com GIT no Gentoo

Publicado por Xerxes em 15/01/2021

[ Hits: 3.085 ]

 


Portage com GIT no Gentoo



GIT é melhor que o RSYNC. Mais veloz e não tem limite de vezes por dia.

Para usar o GIT no Portage do Gentoo faça o seguinte.

Instale o GIT:

# emerge --ask dev-vcs/git

Crie o arquivo:

# vim /etc/portage/repos.conf

Coloque o conteúdo:

[DEFAULT]
main-repo = gentoo

[gentoo]
location = /var/db/repos/gentoo

#sync-type = rsync
#sync-uri = rsync://rsync.de.gentoo.org/gentoo-portage/

sync-type = git
sync-uri = https://github.com/gentoo-mirror/gentoo.git
auto-sync = yes
sync-rsync-verify-jobs = 1
sync-rsync-verify-metamanifest = yes
sync-rsync-verify-max-age = 24
sync-openpgp-key-path = /usr/share/openpgp-keys/gentoo-release.asc
sync-openpgp-keyserver = hkps://keys.gentoo.org
sync-openpgp-key-refresh-retry-count = 40
sync-openpgp-key-refresh-retry-overall-timeout = 1200
sync-openpgp-key-refresh-retry-delay-exp-base = 2
sync-openpgp-key-refresh-retry-delay-max = 60
sync-openpgp-key-refresh-retry-delay-mult = 4
sync-webrsync-verify-signature = yes

Salve e feche.

Delete a árvore antiga do Portage:

# rm -r /var/db/repos/gentoo

Refaça-a com GIT:

# emerge --sync

ou:

# eix-sync

Execute novamente para testar.

Fontes:
Outras dicas deste autor

Como usar seu Iphone como controle sem fio para jogar no Linux

Baixe sua distribuição por torrent

Como desativar notificação de e-mail no Slackware e no Zenwalk

Lista de jogos grátis na Desura

LMDE elegante

Leitura recomendada

Multimídia no Debian 64 bits

Assistindo DVD's no Slackware

Como criar um xorg.conf no Ubuntu 9.10

7 comandos para conexão Wi-Fi em modo console

Configurando ZIP Drive IOMEGA Zip 100 porta paralela

  

Comentários
[1] Comentário enviado por maurixnovatrento em 15/01/2021 - 23:31h


Muito bom.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[2] Comentário enviado por M4iir1c10 em 16/01/2021 - 08:41h

Perdoe-me pela pergunta, não estou menosprezando sua dica, ao contrario foi muito boa dica. Então só quero entender a vantagem do git sobre o rsync.
Não uso Gentoo, uso Debian, mas já tinha o Sabayon e entendo um pouco como funciona o emerge.
Apt baixa a lista de aplicativos e compara o que está instalado na máquina e instala apenas os binários desse aplicativo ou o aplicativo que você indicar no comando. Pelo que me lembro, o Emerge não tem binários, apenas o código-fonte e as instruções de compilação de texto.

O Rsync baixa o que você pediu para baixar, até aí tudo bem. Mas a forma como o git faz o download leva todo o repositório através do git clone. Então o problema começa na minha cabeça, porque por exemplo, se eu não quero instalar o KDE, não vejo a necessidade de baixar sua ebuild ... Mas se for so isso tudo bem porque ebuilds são apenas texto... Mas git como uma plataforma de desenvolvimento de código tem um histórico completo de mudanças ... isto é, cópias e cópias e mais cópias de ebuilds, a cada modificação ... isso para o uso geral de quem não é desenvolvedor é desnecessário.

Fiz o clone na minha máquina para ter uma ideia, só nos ebuilds de todo o repositório ativo ou seja as ultimas versoes temos 170Mb de arquivos... e dos arquivos de histórico de desenvolvimento temos 5,6Gb de arquivos compactados.

Agora, depois de toda essa história, vem a minha pergunta. O emerge usando o git irá clonar todo o repositório, incluindo aplicativos desinstalados e histórico compactado? ou como o apt irá baixar apenas os arquivos ativos dos aplicativos indicados no comando ou já instalados?

[3] Comentário enviado por xerxeslins em 17/01/2021 - 02:28h


[2] Comentário enviado por M4iir1c10 em 16/01/2021 - 08:41h
...

Agora, depois de toda essa história, vem a minha pergunta. O emerge usando o git irá clonar todo o repositório, incluindo aplicativos desinstalados e histórico compactado? ou como o apt irá baixar apenas os arquivos ativos dos aplicativos indicados no comando ou já instalados?


Olha... eu não tenho conhecimento técnico para te responder com precisão. O que eu sei é o seguinte: rsync demora bem mais para terminar a sincronia do que o git. E o git baixa apenas o que foi alterado, não baixa tudo. Em outras palavras: ele só vai baixar um ebuild novo quando realmente for necessário; não vai baixar todos eles e nem vai baixar um que já existe e não sofreu modificação.









Contribuir com comentário