Portage com GIT no Gentoo

Publicado por Xerxes em 15/01/2021

[ Hits: 3.086 ]

 


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

Driver de vídeo SiS no Lubuntu

Slackpkg plus (instalação e configuração multilib)

Acesso remoto a seu GNU/Linux via linha de comando

Lançado live-cd baseado em Funtoo e em SystemRescue

Como mudar o nome do computador no Slackware

Leitura recomendada

Administrar o CUPS pelo browser

Instalando o IONCube Loader no Debian

Fazendo a inicialização do seu Fedora Core 2 mais rápida

Gnome 3 com barra inferior, menu de aplicativos e outros (Fedora 15)

Instalando fontes da Microsoft no Debian

  

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