Como o Neonatox foi construído
Não é um tutorial. É a história de como um sistema operacional passou de zero a funcional.
O Neonatox não nasceu de um download. Nasceu de compilar cada pacote, uma vez, à mão, entendendo o que era necessário para o próximo funcionar. Esta é essa história.
O ponto zero
Tudo começou com uma pergunta: o que há dentro do Linux?
Não havia Neonatox. Não havia pacotes. Apenas Linux From Scratch (LFS) como base e a decisão de que systemd seria o init. Sem chroot, sem abstrações. Apenas o livro LFS e horas de compilação.
Toolchain: o compilador que se compila a si mesmo
A primeira coisa construída em LFS é o que constrói tudo o mais.
- → Binutils - montador e linker
- → GCC (apenas C) - compilador mínimo
- → Linux API Headers - interface do kernel
- → Glibc - a biblioteca padrão C
- → GCC completo - agora pode se compilar
No final desta fase, em /tools vivia um compilador capaz de construir qualquer coisa para Linux. Era a semente de tudo.
Sistema base: ferramentas essenciais
Com o toolchain pronto, compilou-se tudo que é preciso para um sistema usável.
- → M4, Ncurses, Bash, Coreutils, Diffutils...
- → GMP, MPFR, MPC (matemática para GCC)
- → Perl, Python3, Findutils, Gawk
- → Gettext, Bison, Flex (ferramentas de desenvolvimento)
- → file, grep, sed, gzip, tar
Cada pacote foi configurado, compilado e instalado à mão. Cada flag, cada opção, foi uma decisão consciente.
Init, rede e bootloader
O sistema que inicia. systemd, kernel, GRUB.
- → Systemd - init, serviços, logging
- → Linux Kernel 6.x - compilação customizada
- → GRUB2 - bootloader BIOS/UEFI
- → dhcpcd ou systemd-networkd
Neste ponto, o sistema iniciava. Você podia fazer login, tinha rede. Tinha um nome: LFS. Agora precisava se tornar Neonatox.
nhopkg: o gerenciador de pacotes próprio
De LFS para Neonatox: precisava de um gerenciador que ensina.
nhopkg não apenas instala pacotes. Cada pacote é um documento.
O arquivo nhoid contém metadados, dependências, scripts de build.
O primeiro repositório foi configurado: /var/lib/nhopkg/extra com pacotes base do sistema. A cadeia fechou: agora o sistema podia instalar mais software usando a si mesmo.
O ecossistema: Live Boot + Installer
Um sistema que não pode ser distribuído não serve.
- → neonatox-live-boot - gera ISOs com SquashFS
- → neonatox-installer - instala o sistema em disco
Com o ISO gerado e instalador funcionando, o Neonatox podia viver em um USB e se replicar para outras máquinas.
E os pacotes?
Cada pacote do Neonatox tem duas partes:
.nhoid Metadados do pacote fonte. Contém script de build (nbuild), instalação (ninstall), dependências e versionamento. É um arquivo de texto que documenta como construir o pacote.
.nho Pacote binário pronto para instalar. Arquivo comprimido com arquivos + metadados + scripts pós-install. O que realmente é instalado no sistema.
O resultado: Um sistema construído do zero, onde cada pacote foi decisão consciente, onde o gerenciador não esconde mas ensina, onde boot não é magia mas código visível.
Não é o único caminho. Mas é o nosso.