Estou tentando instalar ack
via apt
mas parece que não está mais disponível nos repositórios. Ambos:
sudo apt install ack
sudo apt install ack-grep
dê o seguinte erro:
E: Package 'ack-grep' has no installation candidate
Ele não está mais disponível nos repositórios 17.10?
sudo apt update
.artful
não está listado, correto? packages.ubuntu.com/search?suite=artful&keywords=ackRespostas:
O Ack tem uma falha de teste no Ubuntu 17.10 Artful e foi excluído do Ubuntu até que ele seja aprovado. O Perl é atualizado no Artful e a versão antiga do ack não é suportada pelo novo Perl. A nova versão não passa em todos os seus testes. A falha do teste é causada por problemas com a estrutura de teste executada no Ubuntu (mesmo quando funciona bem no Debian.) Uma nova versão aprovada será lançada em breve .
Enquanto isso, uma solução alternativa é instalá-lo através do CPAN, conforme sugerido na página inicial do ack . Se você ainda não possui o CPAN instalado, é necessário instalá-lo primeiro:
Então você pode usá-lo para instalar o ack:
Ele criará e testará, por isso demorará cerca de 2 minutos, mas depois que estiver pronto, ele estará no seu caminho em
/usr/local/bin/ack
.Eu gosto dessa opção de instalação porque ela usa repositórios padrão apt e cpan. Ele usa bibliotecas Perl que serão atualizadas por ferramentas automatizadas. Pode ser facilmente implementado em ferramentas automatizadas, como o Ansible.
fonte
sudo cpanm App::Ack
.Infelizmente
ack
não está nos repositórios 17.10. Uma solução alternativa é instalá-lo manualmente , de acordo com as instruções em seu site .Aqui está o que eu fiz:
fonte
sudo su
:ack="/usr/local/bin/ack" && curl -s https://beyondgrep.com/ack-2.18-single-file | sudo tee "$ack" > /dev/null && sudo chmod 0755 "$ack"
Pacotes que falham no teste automático de pacotes instalados do Ubuntu não estão incluídos em uma versão, pelo menos aqueles que não são do universo (que são importados regularmente e automatizados do Debian Unstable).
Devido a uma alteração durante o ciclo do Ubuntu 17.10 Artful Release, algo quebrou o autopkgtest do ack no Ubuntu e, portanto, impediu que o ack fosse incluído nas versões do Ubuntu. Você nem consegue encontrá-lo no instantâneo de desenvolvimento atual
bionic
, mas pode instalá-lo se adicionar uma linhabionic-proposed
ao seusources.list
.Ainda não está claro qual foi exatamente essa mudança, respectivamente, qual o motivo (talvez um bug na infraestrutura de teste automático do Ubuntu) e qual é o gatilho. (Talvez a mudança para o Perl 5.26 tenha apresentado um problema na infraestrutura de teste automático do Ubuntu.)
O que está claro, porém, é que esse problema é específico do ubuntu, já que o autopkgtest da ack no Debian passa sem problemas. E executar autopkgtest localmente em um instantâneo de desenvolvimento do Ubuntu 18.04 Bionic também não mostra essas falhas de teste . (E parece desenvolver no Ubuntu. E o mesmo conjunto de testes também é executado no momento da construção e, se não for aprovado, o pacote não será construído, o que é considerado um problema muito mais grave.)
Outra dica de que o problema está oculto em algum lugar da infraestrutura do autopkgtest do Ubuntu é o fato de que a maioria das falhas de teste considera sua entrada repentinamente como STDIN em vez dos arquivos esperados .
Qualquer dica sobre as razões subjacentes a essas estranhas falhas de teste específicas do ubuntu-autopkgtest é muito apreciada no relatório de erros da barra de ativação ou no relatório de erros upstream .
fonte
Como o @muru indicado nos comentários acima, o pacote foi removido porque foi quebrado na 17.10, então sim, não
ack
nos repositórios 17.10 por enquanto.Acho que devo ficar de olho em https://packages.ubuntu.com/search?suite=artful&keywords=ack para saber quando estará disponível novamente.
fonte
Eu consegui instalar o pacote Ubuntu 18.04 na minha caixa Ubuntu 17.10:
Se o
dpkg
comando falhar para você, provavelmente é porque você está perdendo alguma dependência que eu já tenho. Tenteapt install
as dependências ausentes e execute o comandodpkg
linha novamente.Eu gosto mais dessa abordagem do que usar o CPAN, porque o APT / dpkg ainda pode ver que este pacote está instalado e poderá atualizá-lo depois que o Ubuntu resolver sua situação de compilação.
(Agradeço a Axel Beckert por postar o link no relatório de erros do Launchpad, que foi onde eu tirei essa ideia.)
fonte