Um post prático e rápido
Monday, January 12th, 2009Eu estou no processo de escrever um post longo e chato em celebração aos meus 10 anos de Software Livre, mas enquanto ele não fica pronto, uma dica debiânica que pode ser útil!
Se você é como eu que mantém um sistema com Debian unstable e alguns pacotes da Debian experimental e está sempre chateado porque tem que ficar atualizando os pacotes na mão, e às vezes se esquece, aqui está a solução:
* instale o pacote apt-show-versions
* rode o script abaixo
* profit!
O script, versão fish:
for package in (apt-show-versions | grep /experimental | cut -d / -f 1); echo -e "Package: $package\nPin: release a=experimental\nPin-Priority: 500\n" >> /etc/apt/preferences; end
O script, versão bash:
for package in $(apt-show-versions | grep /experimental | cut -d / -f 1); do echo -e "Package: $package\nPin: release a=experimental\nPin-Priority: 500\n" >> /etc/apt/preferences; done
Nota: o script só adiciona a nova configuração ao final do arquivo de configuração; adapte para fazer o que você quer, e lembre de apagar as entradas antigas se for rodar de novo =)
O repositório experimental tem uma prioridade menor que um repositório normal, por padrão, e é por isso (e não por tratamento especial) que o APT prefere não atualizar para os pacotes que estão lá automaticamente. O que esse script faz é criar um arquivo de configuração de políticas do APT para que os pacotes que você tem instalados da experimental tenham uma prioridade igual a de um repositório comum, levando à atualização automática. Verifique com o comando apt-cache policy:
kov@abacate ~> apt-cache policy xserver-xorg-video-intel
xserver-xorg-video-intel:
Installed: 2:2.5.1-1
Candidate: 2:2.5.1-1
Package pin: 2:2.5.1-1
Version table:
*** 2:2.5.1-1 500
1 http://http.us.debian.org experimental/main Packages
1 http://ftp.br.debian.org experimental/main Packages
100 /var/lib/dpkg/status
2:2.3.2-2+lenny5 500
500 http://http.us.debian.org lenny/main Packages
500 http://http.us.debian.org sid/main Packages
500 http://ftp.br.debian.org lenny/main Packages
500 http://ftp.br.debian.org sid/main Packages