Confira nessa matéria como tornar o seu Debian Debian Bullseye (Testing) híbrido com testing/unstable/experimental, tendo assim acesso aos pacotes mais atuais da comunidade Debian e sem comprometer a estabilidade do seu Debian testing.
OBS: Isso não deve ser feito no Debian Stable ( Buster ), pelo fato de ter grande chance de quebrar o sistema e por não fazer sentido instalar o Stable e tornar ele instável aos padrões Debian.
##Debian Testing
deb http://deb.debian.org/debian/ testing main
deb-src http://deb.debian.org/debian/ testing main
deb http://deb.debian.org/debian/ testing-updates main
deb-src http://deb.debian.org/debian/ testing-updates main
##Debian Unstable
deb http://deb.debian.org/debian/ unstable main
##Debian Experimental
deb http://deb.debian.org/debian/ experimental main
Devemos criar dois arquivos para dizer ao apt as prioridades de cada repositório, assim evitamos que em um apt upgrade o sistema seja poluído com pacotes dos repositórios unstable e experimental.
De o comando abaixo no terminal.
De o comando abaixo no terminal.
O Repositório híbrido
Um repositório híbrido é o também conhecido por pinar o repositório, você adiciona repositórios de versões diferentes a sua sources.list e pina um deles como o principal, usando os demais quando quiser para a instalação de programas específicos, isso garante não poluir o sistema inteiro com repositórios diferentes.
Tornando o repositório híbrido
Em primenro lugar log como root no terminal ( Caso tenha problemas com o PATH confira essa matéria )
su
Agora abra a sua sources.list e apague todo o conteúdo dela.
nano /etc/apt/sources.list
Cole na sources.list as linhas abaixo em vermelho.
deb http://deb.debian.org/debian/ testing main
deb-src http://deb.debian.org/debian/ testing main
deb http://deb.debian.org/debian/ testing-updates main
deb-src http://deb.debian.org/debian/ testing-updates main
##Debian Unstable
deb http://deb.debian.org/debian/ unstable main
##Debian Experimental
deb http://deb.debian.org/debian/ experimental main
Ficando como na imagem abaixo.
Salve teclando Ctrl + x tecle s e tecle Enter para fechar o nano.
Non-Free
OBS: Caso queira liberar o contrib non-free adicione ao final de cada linha contrib non-free como na imagem abaixo.
Pinar o apt
Devemos criar dois arquivos para dizer ao apt as prioridades de cada repositório, assim evitamos que em um apt upgrade o sistema seja poluído com pacotes dos repositórios unstable e experimental.
Apt.conf
De o comando abaixo no terminal.
nano /etc/apt/apt.conf
Copie e cole a linha azul abaixo no nano aberto no terminal.
Salve com Ctrl + o tecle enter e feche com Ctrl + x
APT::Default-Release "testing";
Salve com Ctrl + o tecle enter e feche com Ctrl + x
APT::Default-Release "testing";
Preferences
De o comando abaixo no terminal.
nano /etc/apt/preferences
Copie e cole as linhas verde abaixo no nano aberto no terminal.
Salve com Ctrl + o tecle enter e feche com Ctrl + x
OBS: A ultima linha deve ser Pin-Priority: 50 e nunca uma linha vazia.
Package: *
Pin: release a=testing
Pin-Priority:500
Package: *
Pin: release a=unstable
Pin-Priority: 50
Package: *
Pin: release a=experimental
Pin-Priority: 50
firefox : Depende: libsqlite3-0 (>= 3.28.0) mas 3.27.2-3 está para ser instalado
Salve com Ctrl + o tecle enter e feche com Ctrl + x
OBS: A ultima linha deve ser Pin-Priority: 50 e nunca uma linha vazia.
Package: *
Pin: release a=testing
Pin-Priority:500
Package: *
Pin: release a=unstable
Pin-Priority: 50
Package: *
Pin: release a=experimental
Pin-Priority: 50
Atualize a lista de pacotes.
apt update
Instalando programas do Unstable e Experimental
Para instalar um programa de um repositório especifico você deve definir esse repositório com -t repositório.
Exemplo de um pacote do repositório unstable.
sudo apt install -t unstable firefox
Vaja na imagem que não temos problemas de dependências e podemos seguir normalmente nesse caso.
Mas o mesmo não ocorre se formos instalar uma versão mais atual do pacote via repositório experimental.
Note que o pacote depende de uma dependência mais atual mas o apt quer manter a dependencia antiga.
Note que a dependência libsqlite3-0 da versão exigida não se encontra no repositório experimental e nem no testing, mas sim no unstable, portanto devemos instalar a dependência antes do programa que pretendemos ter em uma versão mais atual.
Problema de dependência resolvido e o programa agora está sendo instalado.
Ai está o Firefox na versão mais atual disponível nos repositórios Debian.
O que houve com os repos testing-security?
ResponderExcluirFoi desativado
Excluir