ARM, utilização de snapshot de pacotes no Arch Linux
Nesse pequeno artigo demonstrarei como utilizar snapshots de pacotes no Arch Linux utilizando o serviço ARM (Arch RollBack Machine).
Introdução e utilização
O ARM, também conhecido como Arch RollBack Machine, é um serviço disponível
para o Arch Linux que oferece snapshots da árvore de pacotes do Arch.
Já citei o ARM em meu pacman.conf, publicado aqui e em meu blog, fora isso já havia publicado um artigo a esse respeito em meu antigo blog no wordpress, mas ao removê-lo infelizmente não lembro onde salvei o texto.
Problemas a parte, utilizar este repositório é muito simples, digamos que não queremos que nosso Arch receba atualizações com essa frequência louca, basta adicionarmos as linhas abaixo acima dos repos (core, extra e community).
No exemplo acima o snapshot utilizado foi o de 16 Out 2011, porque ao resolver atualizar a distro em 13 Nov 2011 notei que quase 1GB de dados teriam que ser baixados para um upgrade completo, ou seja, muita coisa para tão pouco tempo, com isso resolvi continuar com o de 16 Out 2011, porém, apto a atualizar os pacotes dos outros repos, como pode ser visto nas imagens abaixo:
pacman.conf com o snapshot de 13 Nov 2011 habilitado em substituição ao anterior: O tradicional:
sudo pacman -Syu O susto que levei: Resolvo editar novamente meu pacman.conf, comentando as linhas do snapshot (13 Nov) e habilitando o anterior (16 Out) e novamente se faz necessário:
sudo pacman -Syu Com isso os pacotes do meu Arch permanecem no mesmo estado que os pacotes do ARM em 16 Out, porém nota-se atualizações para os pacotes dos outros repositórios, apenas 67MB: Com isso chegamos a conclusão que a desculpa pífia dada por alguns de que não dá para usar Arch Linux com internet lenta é papo-furado! Escolha um snapshot, atualize seu sistema por completo e repita o passo quando quiser.
Lógico que isso foge à regra da distro, por ela ser rolling-release, bleeding-edge, blah, blah, blah.
Mas chamo a atenção para outros fatos, porque além da economia no download de pacotes, devemos pensar também na questão da estabilidade, digamos que um pacote tal apresente uns fricotes na versão mais atual, a solução: escolha um snapshot anterior instale-o, depois adicione-o na opção IgnorePkg do pacman.conf até que o problema seja solucionado, isso se adicionado o snapshot e comentado em seguida.
Lembrando que os snapshots devem ser colocados acima dos tradicionais (core, extra e community) porque o pacman trata os repositórios de forma sequencial, ou seja, de cima para baixo. Se o pacote que você quer instalar estiver no primeiro repo listado ele o instalará (caso não haja problemas de dependências é claro), da mesma forma se o pacote deste primeiro repo for anterior ao do último repo, o pacote do primeiro repo será instalado, maisiores detalhes sobre este parágrafo podem ser visto aqui:
Já citei o ARM em meu pacman.conf, publicado aqui e em meu blog, fora isso já havia publicado um artigo a esse respeito em meu antigo blog no wordpress, mas ao removê-lo infelizmente não lembro onde salvei o texto.
Problemas a parte, utilizar este repositório é muito simples, digamos que não queremos que nosso Arch receba atualizações com essa frequência louca, basta adicionarmos as linhas abaixo acima dos repos (core, extra e community).
# Arch RollBack Machine.
#[core]
#Server=http://arm.konnichi.com/2011/11/13/core/os/i686
#[extra]
#Server=http://arm.konnichi.com/2011/11/13/extra/os/i686
#[community]
#Server=http://arm.konnichi.com/2011/11/13/community/os/i686
[core]
Server=http://arm.konnichi.com/2011/10/16/core/os/i686
[extra]
Server=http://arm.konnichi.com/2011/10/16/extra/os/i686
[community]
Server=http://arm.konnichi.com/2011/10/16/community/os/i686
#[core]
#Server=http://arm.konnichi.com/2011/11/13/core/os/i686
#[extra]
#Server=http://arm.konnichi.com/2011/11/13/extra/os/i686
#[community]
#Server=http://arm.konnichi.com/2011/11/13/community/os/i686
[core]
Server=http://arm.konnichi.com/2011/10/16/core/os/i686
[extra]
Server=http://arm.konnichi.com/2011/10/16/extra/os/i686
[community]
Server=http://arm.konnichi.com/2011/10/16/community/os/i686
No exemplo acima o snapshot utilizado foi o de 16 Out 2011, porque ao resolver atualizar a distro em 13 Nov 2011 notei que quase 1GB de dados teriam que ser baixados para um upgrade completo, ou seja, muita coisa para tão pouco tempo, com isso resolvi continuar com o de 16 Out 2011, porém, apto a atualizar os pacotes dos outros repos, como pode ser visto nas imagens abaixo:
pacman.conf com o snapshot de 13 Nov 2011 habilitado em substituição ao anterior: O tradicional:
sudo pacman -Syu O susto que levei: Resolvo editar novamente meu pacman.conf, comentando as linhas do snapshot (13 Nov) e habilitando o anterior (16 Out) e novamente se faz necessário:
sudo pacman -Syu Com isso os pacotes do meu Arch permanecem no mesmo estado que os pacotes do ARM em 16 Out, porém nota-se atualizações para os pacotes dos outros repositórios, apenas 67MB: Com isso chegamos a conclusão que a desculpa pífia dada por alguns de que não dá para usar Arch Linux com internet lenta é papo-furado! Escolha um snapshot, atualize seu sistema por completo e repita o passo quando quiser.
Lógico que isso foge à regra da distro, por ela ser rolling-release, bleeding-edge, blah, blah, blah.
Mas chamo a atenção para outros fatos, porque além da economia no download de pacotes, devemos pensar também na questão da estabilidade, digamos que um pacote tal apresente uns fricotes na versão mais atual, a solução: escolha um snapshot anterior instale-o, depois adicione-o na opção IgnorePkg do pacman.conf até que o problema seja solucionado, isso se adicionado o snapshot e comentado em seguida.
Lembrando que os snapshots devem ser colocados acima dos tradicionais (core, extra e community) porque o pacman trata os repositórios de forma sequencial, ou seja, de cima para baixo. Se o pacote que você quer instalar estiver no primeiro repo listado ele o instalará (caso não haja problemas de dependências é claro), da mesma forma se o pacote deste primeiro repo for anterior ao do último repo, o pacote do primeiro repo será instalado, maisiores detalhes sobre este parágrafo podem ser visto aqui:
Vlw pelo post ai..