Como usar o Arch como uma distro Sourced-based?

Bom dia pessoal :grinning_face_with_smiling_eyes:

Estou virando a Arch Wiki de cabo a rato para encontrar uma resposta, porém, ela não me parece óbvia, ou talvez não esteja procurando direito.

Como usar o Arch como uma distro Sourced-based?

Isto é, compilando todos os pacotes, como se faz no Gentoo com o eBuilds e Portage.

Esse ano de 2021 foi um ano que me dediquei a usar e estudar o Arch em diversos âmbitos. Já configurei o makepkg, o pacman.conf, downloads em paralelo, multiplas threads para as compilações do AUR com o Yay. Além de experiências com o BtrFS e o Snapper (seu criador de Snapshots do sistema). Meu objetivo é em 2022 repetir o processo, só que no Gentoo. Mas antes de dar esse salto, gostaria de usar o Arch como uma Sourced-Based, e não com binários pré-compilados.

Até por quê, neste exato momento, estou SUPER satisfeito com o Arch, e quando vejo vídeos do Gentoo, não sinto um “affair”, exceto pelo fato da compilação xD Por isso penso que, se pudesse usar o Arch compilando tudo (ou quase xP), Talvez no futuro eu decida ficar com o Arch mesmo.

A propósito eu já li algo sobre o ABS (Arch Build System), porém mesmo na wiki, e no YouTube, não consegui achar um exemplo de código e nem algum vídeo reproduzindo o feito. Mas creio que essa ferramenta deva existir, só ainda não achei :cry:

Desde já, meus sinceros agradecimentos a todos pela atenção! :blush:

Usar o Arch como distro source-based é tentar construir um quadrado com a mesma área de círculo usando só o compasso e régua. O pacman é um gerenciador de pacotes otimizado apenas para pacotes binários, o que não é o caso do Portage, o port do Crux e etc.

A maneira mais simples que eu consigo pensar de fazer isso é:

  1. Pegando os PKGBUILDs direto da fonte usando o asp mencionado no artigo do ABS.
  2. Fazer suas mudanças desejadas (-march=native e sei lá o quê) e rodar makepkg.
  3. Criar um repositório personalizado no disco e adicionar seus pacotes compilados nele. A dica de criar um grupo extra de pacotes modificados e fazer o pacman não atualizar eles automaticamente (citada no fim do artigo do ABS) talvez sirva de alerta para você não acidentalmente usar pacotes binários.

Questões como verificar atualizações dos programas e de gerenciar patches/opções de ./configure que porventura você queira aplicar são deixados como um exercício para o leitor (o que já é gerenciado em boa parte para você no Portage, inclusive com as USE flags para facilitar a aplicação em massa de uma mesma mudança em vários pacotes).

Dependendo do que você queira fazer, dá no mesmo que um Gentoo com binhost (só que com gerenciamento mais conveniente dos pacotes compilados a partir da fonte).

2 curtidas

Nao sei se fazer isso no arch e tao legal assim.
Eu sai do arch nesse intuito,mais acabei com dor de cabeca de tudo compilado no gentoo e sendo ate que burocrático compilar no arch.
Entao eu acabei achando o nixOS,se eu quiser compilar eu vou la e compilo,se eu quiser binario vou la e dou um :

nix-env -iA nixos.google-chrome

tenho amigos que usam arch compilando,e vira e mexe fecho eles reclamando de algum erro no makepkg.

2 curtidas