Por que não executar o apt update automaticamente com o apt install?

1

Em muitos tutoriais, você pode ver uma sugestão para

apt update

que, claro, faz muito sentido, e só então

apt install whatever

Por que não executar o apt update automaticamente com o apt install? Isso economiza tempo e é mais conveniente, e acredito que esse seja o comportamento padrão do MacOS

brew install
    
por Bohdan 02.05.2018 / 12:03

3 respostas

0

Como Henrik disse, apt update e apt install executam duas operações diferentes. Mesmo se você sempre usar apt da mesma forma (primeiro update , então install ), esse não é o caso de todas as pessoas no mundo.

Chamar update silenciosamente antes de cada operação install é uma má ideia nos seguintes cenários:

  1. Se alguém precisar instalar pacotes um por um (talvez buscando o código de saída de apt para processamento adicional), apt desperdiçaria largura de banda.

  2. Você não precisa de uma conexão com a Internet para usar install se os pacotes foram baixados anteriormente, portanto, fazer update é inútil.

  3. Ao usar install , é possível acrescentar um hífen - ao nome do pacote para removê-lo, se estiver instalado. Portanto, fazer um update é inútil.

Mas, se você realmente quer que apt se comporte como quiser, você pode:

  1. Adicione uma função como esta ao seu arquivo .rc : apt-install() { apt update && apt install "${@}"; } .

  2. Proponha sua sugestão para apt / seus mantenedores de distro.

  3. Modifique o código-fonte de apt . É um software gratuito, afinal.

por 02.05.2018 / 13:27
2

Fundamentação

O seu pensamento está bem, exceto se:

apt-get install package

chamado silenciosamente antes de cada instalação:

apt-get update

Isso tornaria essas atualizações redundantes se você instalasse mais de um pacote.

Além disso, isso prolongaria significativamente o tempo de instalação de cada pacote.

E nem é possível, porque o pacote pode ser dependente de outro.

Conclusão

Você precisa ligar:

apt-get update

antes de qualquer instalação de pacotes e / ou atualização.

    
por 02.05.2018 / 12:13
1

São duas operações muito distintas, e não é difícil imaginar casos de uso para executar update sem install , então, por essa razão, eles devem ser separados.

E você precisa de uma lista atualizada de pacotes e dependências antes de decidir o que instalar. Imagine que você queira instalar algo que depende de um fooserver, se você apenas usar as listas, você pode não considerar o novo servidor de fantasia que alguém carregou para os repositórios há alguns minutos atrás, que realmente atende melhor às suas necessidades.

    
por 02.05.2018 / 12:35

Tags