Você pode compilar o apt-get a partir do código-fonte? [fechadas]

7

Eu tenho uma imagem do kernel e um sistema de arquivos vazio e preciso preenchê-lo com programas, como um desktop, alguns utilitários básicos e software.

Posso instalar o apt-get de alguma forma para fazer isso por mim? Eu não sei exatamente como apt-get funciona, então pode haver alguns problemas comigo, não ter uma distro definida ou algo assim.

Se for possível, onde alguém obteria a fonte para construí-lo?

    
por Zephyr 28.06.2016 / 21:37

3 respostas

8
O código-fonte de

apt está disponível em Alioth , mas não foi projetado para servem como base para inicializar uma distribuição a partir da origem. Para inicializar uma distribuição baseada em Debian ( apt -based), você precisa usar uma ferramenta como debootstrap , que por sua vez precisa de um bom número de programas para rodar (apesar de seu sistema de arquivos não estar vazio, mas incluir as ferramentas básicas do Linux, ele pode já ter tudo necessário). Normalmente, o bootstrap de um sistema envolve o uso de outro sistema no estilo Debian ou a execução de um instalador.

Se você quiser construir um sistema a partir do código-fonte, preparando-se para o seu bootstrap, você deve procurar em Linux from Scratch .

    
por 28.06.2016 / 21:52
2

Você pode criar apt-get da fonte. A fonte de um pacote Debian está sempre disponível na página do pacote (exceto alguns pacotes no componente non-free ). No entanto, isso não irá ajudá-lo.

Para instalar o Debian ou o Ubuntu em um sistema onde você tem um kernel Linux em execução, use o debootstrap . O Debootstrap faz o download e instala um sistema básico. Para instalação em um sistema onde o debootstrap não está em execução, use o modo de duas fases: primeiro execute debootstrap com a opção --foreign e a opção direita--arch em um sistema Unix (não necessariamente Debian, você pode executar o Debootstrap em qualquer sistema com utilitários shell básicos do Unix e wget ), copie os arquivos resultantes para o diretório raiz do sistema de destino. O binário busybox do busybox-static do Debian pode ajudar, por exemplo para empacotar os arquivos em um arquivo e busybox tar -xzf - deles.

    
por 29.06.2016 / 01:09
1

Como os outros mencionaram, debootstrap ou cdebootstrap é o caminho a seguir.

O que isso faz, no caso de você querer replicá-lo, é baixar todos os pacotes marcados como Essential: yes na lista de pacotes e suas dependências diretas e indiretas e, em seguida, extrair os arquivos contidos no sistema de arquivos de destino. Isso pode ser feito com ar , tar e xz .

Isso é o suficiente de um sistema funcional que você pode executar um gerenciador de pacotes, embora os arquivos instalados não estejam registrados corretamente com dpkg ainda. Para fazer isso, você precisa executar dpkg dentro do sistema de arquivos de destino e informar para instalar os mesmos pacotes (para que os arquivos sejam sobrescritos).

    
por 29.06.2016 / 02:31

Tags