Como os pacotes são realmente instalados via o apt-get install?

Ao usar o método apt-get install para instalar um pacote no Ubuntu, existe alguma diferença fundamental entre obter o código-fonte para aquele pacote e construí-lo do zero? A funcionalidade apt-get install simplesmente faz o download da fonte e a constrói em sua máquina para um diretório especificado ou há mais coisas acontecendo nos bastidores?

Finalmente (talvez isso não tenha resposta) é um método melhor que o outro? O que eu estou pescando aqui é que você mesmo constrói a partir do código-fonte tem alguma vantagem ou é melhor deixar o apt-get fazer a sua coisa?

As vantagens de um sistema de gerenciamento de pacotes, como apt, yum, pacman, emerge, etc, incluem:

  • É fácil consultar qual versão de um pacote está instalada ou disponível.
  • É fácil remover um pacote completamente, certificando-se de que todos os seus arquivos foram removidos.
  • É fácil verificar a integridade dos arquivos de pacotes, para que você possa ver se foi corrompido ou adulterado.
  • É fácil atualizar um pacote instalando a nova versão e removendo todos os arquivos das versões antigas. Isso fará com que você não deixe nenhum arquivo remanescente do pacote antigo para confundir ou quebrar coisas.
  • É fácil ver quais pacotes requerem ou fornecem coisas que outros pacotes fornecem ou exigem, para que você possa ter certeza de que os itens necessários para o pacote funcionem corretamente.
  • É fácil instalar ou remover grupos de pacotes.
  • Em muitos casos, é possível fazer downgrade de volta para uma versão anterior de um pacote, por exemplo, quando uma nova versão tem um bug.

Embora seja para o Fedora, veja também:

https://fedoraproject.org/wiki/Package_management_system

Instalar a partir da fonte pode ter vantagens

  • Você pode personalizar os binários (ativar / desativar opções)
  • Pacote mais atualizado está disponível nos repositorys
  • Às vezes necessário para correções de bugs

Mas as desvantagens são que você terá que atualizar manualmente o pacote quando uma nova versão estiver disponível e muitas vezes você perderá o suporte.

IMO, se você deseja compilar todos ou a maioria dos seus pacotes, eu aconselho o Gentoo.

Apt-get é o utilitário de manipulação de pacotes APT (CLI), back-end para Synaptic e Aptitude .

O método apt-get no acionamento do seu sistema verifica as fonts oficiais ou repositorys listados no arquivo

etc/apt/sources.list

Por exemplo na execução do sudo apt-get update && sudo apt-get upgrade (que eu uso) , roda algo como

insira a descrição da imagem aqui

onde o Ign (Ignore) na frente do Link informa que nenhuma alteração foi feita desde a última visita a esses repositorys, e o Get declara a recuperação do arquivo Sources indicando as alterações do pacote recém-disponível nesse Repositório.

Não, o utilitário apt-get não faz o download do Source File , ele baixa o pacote .deb empacotado e liberado pelos Official Ubuntu Packagers, que foi testado para estabilidade e integração com o seu sistema.

Os pacotes apt-get baixados podem ser encontrados em

/var/cache/apt

onde você pode ver todas as Updates como pacotes .deb , e você pode até comparar para verificar sua versão, visitando este pacote de atualizações precisas .

No que diz respeito a Compilar a partir de pacotes de código fonte, não é aconselhável nem recomendado para o Ubuntu 12.04 como um LTS Release, você pode ver as razões aqui

É melhor compilar a partir do código-fonte ou instalar a partir de um pacote .deb?

A compilation de programas da fonte aceleraria o meu sistema operacional?

Vantagens / desvantagens de instalar a partir do código-fonte

Para mais referências: apt-get , sources.list .

Se você construir a partir da fonte, você tem mais opções no que está incluído. Instalar a partir do apt-get apenas instala um pacote pré-construído.

Quanto ao que é melhor, depende do que você precisa para isso. Eu nunca precisei compilar a partir do código-fonte, mas não faço nada muito extenso no meu laptop ubuntu.

Eu acho que você pode usar o apt-get para instalar fonts de pacotes.

  1. Você precisa ativar repositorys de código-fonte

    Abra o arquivo /etc/apt/sources.list, você verá linhas comentadas (iniciadas com #) que têm “fonte” nelas.

    Uncomment eles

  2. Instalar dependencies do programa que você deseja:

    sudo apt-get build-dep "program"

  3. Baixe e compile seu programa:

    sudo apt-get -b source "program"

Depois disso, você obtém um pacote .deb no seu diretório pessoal.