Sagui Linux

Como o Sagui Linux foi feito

🤖 Criado 100% por IA · Claude Opus 5.5

Um sistema operacional inteiro compilado do código-fonte, em duas fases, por um agente de IA (Claude Opus 5.5) seguindo os livros do Linux From Scratch — com cada passo, erro e correção registrado.

Prefere ver em vídeo? O processo está documentado no canal @EliRigobeliAI.

Vídeo do processo em breve

Acompanhe o canal: youtube.com/@EliRigobeliAI

Os livros

Fase 1Linux From Scratch 12.4 (SysVinit)linuxfromscratch.org/lfs Fase 2Beyond Linux From Scratch 12.4 (SysVinit)linuxfromscratch.org/blfs

A ideia

Distribuições como Ubuntu ou Fedora entregam milhares de pacotes já compilados. O Linux From Scratch (LFS) faz o caminho contrário: é um livro que ensina a construir um sistema Linux a partir do código-fonte, começando por um compilador temporário e terminando num sistema completo e independente. O Beyond Linux From Scratch (BLFS) continua de onde o LFS para: rede, servidor gráfico, desktops, navegadores.

O desafio deste projeto foi entregar o trabalho inteiro a um agente de IA — o Claude Opus 5.5 (Anthropic), rodando no Claude Code num servidor virtual Linux — e acompanhar tudo de fora, por documentação e por um painel de progresso. Eli Rigobeli escreveu o documento de requisitos da primeira fase, tomou as decisões de produto e testou o resultado em hardware real.

Como o trabalho foi organizado

  1. PRD (documento de requisitos). Define o objetivo, o ambiente, as regras (seguir o livro, nenhum binário copiado do sistema hospedeiro, documentar tudo) e os critérios de aceite. Na Fase 1 foi escrito pelo Eli; na Fase 2, pelo próprio agente, a partir de uma conversa.
  2. Histórias (marcos). O trabalho foi dividido em 13 histórias por fase, cada uma com objetivo, passos, critério de aceite, peso no progresso e link para os logs.
  3. Scripts a partir do livro. O agente extraiu os comandos do HTML do livro para scripts, revisou cada um, e montou "planos" de build. Um driver idempotente compila um pacote por vez, guarda o log completo e marca o que já terminou — se algo quebra, retoma dali.
  4. Loops. Um loop de execução avança pelos planos; um loop de monitoramento só verifica a cada minuto se o build terminou (sem ler a saída do compilador); um loop de correção lê só o trecho do log com o erro, corrige, registra e tenta de novo.
  5. Documentação contínua. Diário cronológico, registro de erros (sintoma, causa, correção), decisões técnicas, STATUS.md e um painel HTML atualizado a cada pacote.
  6. Testes automáticos. Cada ISO foi ligada em máquinas virtuais (QEMU) em BIOS, UEFI e como pendrive USB; um script faz login, roda comandos e, na Fase 2, tira capturas de tela do desktop e do Firefox, que o agente analisa.
  7. Teste humano. O único passo manual: gravar o pendrive e ligar num notebook de verdade.

Linha do tempo

Fase 1 — edição de terminal 1.0 (LFS)

Histórias

"Tempo de compilação" soma a duração registrada nos logs de cada passo. Histórias de preparação, testes e entrega não têm passos de build.

Os passos mais demorados

Erros encontrados e como foram corrigidos

Semente Linux 1.0 (LFS 12.4) - ttyS0
semente login: root
-bash-5.3# uname -a
Linux semente 6.16.1-semente #1 SMP PREEMPT_DYNAMIC x86_64 GNU/Linux
-bash-5.3# gcc --version
gcc (GCC) 15.2.0
-bash-5.3# cat /etc/os-release
NAME="Semente Linux"
VERSION="1.0 (fase1)"
PRETTY_NAME="Semente Linux 1.0 (LFS 12.4, live)"
Trecho real do teste automático da edição de terminal (console serial do QEMU). "Semente" foi o nome provisório da primeira versão.

Fase 2 — Sagui Linux 2.0 (BLFS + XFCE)

Histórias

Os passos mais demorados

Erros encontrados e como foram corrigidos

Desktop do Sagui Linux 2.0 capturado pelo teste automático em QEMU
Captura feita pelo teste automático: o agente liga a ISO no QEMU e "olha" a tela pelo monitor da máquina virtual.

Decisões que valem a pena conhecer

Hardware genérico

O servidor de build tinha um processador AMD EPYC moderno. Bibliotecas como GMP e libffi, por padrão, se otimizam para a CPU onde são compiladas — e o sistema travaria num PC antigo. O agente usou as opções genéricas que o próprio livro indica.

Recomendadas sob medida

Seguir todas as dependências "recomendadas" do BLFS puxaria 281 pacotes (LibreOffice, Qt 6, GTK 4…). O agente escolheu à mão as que importam para um desktop leve: ~120 pacotes.

Firefox sem a marca oficial

O livro avisa que o Firefox compilado com a marca oficial não pode ser redistribuído. Como a ISO é distribuída, ele foi compilado com a marca genérica do código-fonte (aparece como "Nightly").

Live em RAM

Um initramfs próprio, feito só com programas do próprio sistema, procura o pendrive, monta o sistema compactado e cria uma camada gravável na memória. Funciona tanto como CD quanto gravado byte a byte num pendrive.

Sem drivers que exigem firmware

Placas AMD modernas precisam de firmware proprietário; sem ele a tela fica preta. Nesta versão elas usam o vídeo genérico, que sempre funciona.

Arte com IA, com parcimônia

Mascote, logo e wallpaper foram gerados no Higgsfield com 5 imagens no total. O logo virou também o logo de boot do kernel (no lugar do pinguim) e o fundo do menu do GRUB.

Arte do projeto

Logotipo: rosto de um sagui com tufos brancos nas orelhas sobre o losango amarelo e o círculo azul da bandeira do Brasil
Logotipo
O pinguim Tux ao lado do mascote sagui azul com tufos brancos, cauda listrada e lenço verde e amarelo
Mascote, ao lado do Tux (Larry Ewing / GIMP)
Papel de parede: floresta em camadas verdes sob um céu azul-escuro com estrelas e a silhueta de um sagui num galho
Papel de parede

O que aprender com isso

Quer tentar? Comece pelo livro Linux From Scratch — ele é gratuito e muito bem explicado.