O 'apt-get' está obsoleto?

54

Ultimamente, tenho visto muitas pessoas usarem

sudo apt

ao invés de

sudo apt-get

Além disso, o Ubuntu continua me dizendo para instalar coisas sudo apt

The program 'foo' is currently not installed. You can install it by typing:
sudo apt install foo

(lembre-se, foo é um espaço reservado, não um aplicativo)

Então, depois dessa popularidade na comunidade sobre o uso do aptinvés de apt-get, estou começando a pensar que o apt-get está obsoleto e não pode mais ser usado nos meus programas do bash.

Nos meus programas do bash,

  • eu tenho que substituir todos os apt-getcomandos com apt?
  • é apt-getperigoso?
  • meus programas ainda funcionarão?
Skybbles
fonte
7
Veja esta publicação relacionada: askubuntu.com/q/445384/295286
Sergiy Kolodyazhnyy
Apt é mais bonita do que o apt-get
WinEunuuchs2Unix
2
A razão pela qual alguns usuários (como eu) usam apté porque é mais curto que apt-get. Menos pressionamentos de tecla, menos tempo gasto. Eu uso apt-getpara coisas como isso check.
28416 Gallifreyan

Respostas:

36

apt-geté de nível inferior e é compatível com versões anteriores. apté melhor para usuários finais e não requer ou contém alguns recursos extras presentes no apt-get.

Ambos estão perfeitamente bem. apt-getnão está obsoleto, mas sua instalação 15.10 é :)

Edit: Na página de manual do apt (8)

O comando apt deve ser agradável para os usuários finais e não precisa ser compatível com versões anteriores, como o apt-get (8).

Edit2: aptfoi projetado para corrigir algumas das falhas fundamentais de dependência apt-get. Por ser um invólucro, apté , portanto, de nível superior e também perde alguns recursos de compatibilidade com versões anteriores e scripts.

negusp
fonte
19
Quais recursos não estão no apt-get não no apt? E como o apt é melhor para o usuário final?
Anwar
4
Novamente, o apt-get não é de nível inferior ao apt. Esta é uma informação enganosa. apt está no mesmo nível que o apt-get e apt é nada além de um invólucro em torno apt-get e apt-cache
Anwar
@ Anwar: Existem diferenças. Um exemplo: apt upgradeapt-get upgrade, já que a primeira instala novos pacotes, enquanto o segundo não.
Gunnar Hjalmarsson 26/09
26
@ Anwar Se apté uma quantidade de invólucro, apt-getentão é definitivamente de nível superior.
Tavian Barnes 26/09/16
2
@ Anwar Essa é realmente a definição de "nível superior" ou "nível inferior". O apt é de nível superior porque envolve o apt-get. Um tipo de teste é que, se o seu apt foi corrompido, o apt-get ainda funcionaria - mas não o contrário.
Sir Robert
47

Não, apt-getnão está obsoleto. A página do manual apttem a dizer sobre aptvs. apt-get(e apt-cache):

USO DE SCRIPT E DIFERENÇAS DE OUTRAS FERRAMENTAS APT

A linha de comando do apt (8) foi projetada como uma ferramenta do usuário final e pode mudar o comportamento entre as versões. Embora tente não quebrar a compatibilidade com versões anteriores, isso também não é garantido se uma alteração parecer benéfica para o uso interativo.

Todos os recursos do apt (8) estão disponíveis em ferramentas dedicadas do APT, como o apt-get (8) e o apt-cache (8). O apt (8) apenas altera o valor padrão de algumas opções (veja apt.conf (5) e, especificamente, o escopo binário). Portanto, você deve preferir usar esses comandos (possivelmente com algumas opções adicionais ativadas) em seus scripts, pois eles mantêm a compatibilidade com versões anteriores o máximo possível.

apt também dá um aviso que diz

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

se detectar que há um cano. Por exemplo:

$ apt show python | grep Package

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Package: python
APT-Sources: http://us.archive.ubuntu.com/ubuntu xenial/main amd64 Packages

Quanto às suas perguntas,

eu tenho que substituir todos os comandos apt-get com apt?

Não, você não tem que substituir apt-getcom apt. Em vez disso, se você o estiver usando em scripts, você deve se ater ao apt-getfato de que ele possui uma API CLI estável e compatibilidade com versões anteriores garantida.

é apt-getperigoso?

apté tão perigoso quanto apt-get: você só deve instalar o software de fontes confiáveis.

posso usar aptno Ubuntu 15.10?

Sim, você pode. O problema aqui é que você ainda está usando o Ubuntu 15.10, que agora não é suportado! Atualize para 16.04, que é uma versão LTS.

meus programas ainda funcionarão?

Por programas, presumo que você queira dizer scripts. Sim, eles ainda funcionarão, pois apt-getnão foram preteridos. De fato, você deve preferir usar apt-getscripts para compatibilidade com versões anteriores, conforme sugerido pela aptpágina de manual de.

edwinksl
fonte
7

apte apt-getsão basicamente o mesmo gerenciador de pacotes, o que eles fazem é o mesmo.

A diferença é que apttambém contém recursos de, por exemplo, apt-cachee tem uma saída mais agradável.

No entanto, aptainda não deve ser usado em scripts, pelo menos se você deseja analisar sua saída, porque ela ainda está em desenvolvimento e seu formato de saída ainda pode ser alterado. O preenchimento automático de guias do Bash também não está funcionando com muitos aptcomandos.

Você pode usar os dois, conforme preferir.

Byte Commander
fonte
O apt fornece recursos do apt-cache com atraso adicional! tente usar o pacote de pesquisa apt e o pacote de pesquisa apt-cache. Mesmo usando a política
Anwar
@ Anwar Eu não vejo nenhuma diferença em tudo usando apt(-cache) policy. Com apt(-cache) search, há uma diferença de velocidade, sim, mas a saída de apté classificada e bem formatada em troca.
Byte Commander
-1

Como você pode ver nas outras respostas, você pode usar aptou apt-get. O que eu gostaria de acrescentar é que, quando tentei aptalguns anos atrás, notei que ele resolvia conflitos de uma maneira diferente da que apt-getfiz. Quando a situação era complicada (algo tinha que ser removido, algum pacote foi fixado em uma versão específica, eu desclassifiquei um pacote ou usei uma mistura de pacotes de diferentes versões), aptgeralmente queria remover vários pacotes ou não conseguia resolver o problema. conflito.

Como apt-getera muito melhor nessas situações e não tinha desvantagens, desisti apte continuei usando apt-get. Isso foi há vários anos, portanto, isso pode ter mudado, mas se você se deparar com uma situação semelhante, tente os dois e veja qual deles pode resolver melhor o conflito.

Zoltan
fonte