Pacman do Arch Linux especificando a versão do pacote

12

Eu sei que posso definir a versão desejada do pacote pacmancomo mostrado em seu manual pacman -S "bash>=3.2". Mas como sei quais versões estão disponíveis?

Eu também sei que pacmanestá criando cópia de espelhos ao sincronizar em arquivos .db /var/lib/pacman/sync/, mas esses arquivos não são legíveis por humanos.

E se eu quiser instalar alguma versão, virtualboxpor exemplo, que espero que esteja espelhada em algum lugar, que não exija uma versão mais nova de linux(definida como IgnorePkgem pacman.conf) do que a instalada (por causa dos nvidiadrivers)? Como sei qual é a versão e se está disponível?

meridius
fonte
"Mas como sei quais versões estão disponíveis?" não é pacman -Si package_namesuficiente?
Braiam
@Braiam Não, isso oferece apenas os mais novos disponíveis.
Meridius
Enquanto isso, baixei manualmente os pacotes desejados da Arch Rollback Machine em seblu.net/a/arm. Mas essa abordagem exige o download manual e a instalação de pacotes desejados, o que consome muito tempo.
Meridius

Respostas:

10

Você não pode especificar uma versão que facilmente, como uma versão contínua, pacmanforneça apenas a versão mais recente. Quando você instala algo, esse pacote é armazenado no seu computador no /var/cache/pacman/pkg/diretório, portanto, se você deseja fazer o downgrade de uma versão ou especificar outra, é necessário usar pacman -Ue o nome do pacote no cache. Existem repositórios de "máquinas do tempo" por aí, onde as pessoas apenas armazenam pacotes antigos, você pode baixar a versão desejada e usar pacman -Upara instalá-lo.

Esteja ciente de que você deve "bloquear" as atualizações desse pacote se não quiser que ele atualize, para ver como, consulte o wiki na página pacman ou neste https://wiki.archlinux.org/index.php /Downgrading_Packages#Q:_I_cannot_downgrade_a_package.2C_because_of_dependencies .

Alquimista estóico
fonte
Conheço o pacman -U e os pacotes instalados anteriormente e também o Arch Rollback Machines. Minha pergunta era realmente sobre como facilitar o processo de pesquisa da versão correta do pacote.
Meridius
@meridius Você está fazendo a pergunta errada: o Arch é uma versão contínua, a única versão de um pacote - para todos os efeitos - é a versão atual. Atualizações parciais não são suportadas .
precisa saber é o seguinte
2
"como um lançamento contínuo, o pacman fornecerá apenas as últimas." Errado! Rollease realease não implica isso. Você pode ter uma liberação contínua que suporte pacotes mais antigos.
Ano Kralj
@meridius Eu usei a pacman -Uopção com o URL completo do pacote que eu precisava, em archive.archlinux.org/packages . Além disso, convém adicionar esse pacote especial à lista de ignorados, caso contrário, ele será substituído. @jasonwryan, a versão Rolling tem muitos benefícios, mas algumas coisas acontecem e você é forçado a manter uma versão "não tão nova": D até que correções sejam aplicadas.
M3nda