Repository navigation
Testado de ponta a ponta em VMs: o template no Debian 13, Fedora 44,
Rocky 9 e Ubuntu 24.04 (BIOS, UEFI e Secure Boot); as proteções; a ISO do
Debian 13 (BIOS, UEFI e Secure Boot) e a do Fedora 44 em BIOS. Pendentes: a
ISO do Fedora em UEFI (corrigida), a do Ubuntu e a instalação clicando nas
telas do Calamares (nos testes, um script faz os mesmos passos dele).
Adicionado
- ISO instalável (
tipo = "iso"ou a 2ª opção do menu): o sistema vira uma
ISO híbrida (DVD/pendrive, BIOS e UEFI) com sessão live e o instalador gráfico
Calamares. O maloki configura o Calamares inteiro (telas, particionamento,
usuários, cara do instalador com o logo da distro) e um script de
pós-instalação que remove a sessão live e instala o GRUB no disco (inclusive
o shim assinado do Fedora, para o Secure Boot). - Compressão zstd para o
.qcow2(compressao = "zstd", o novo padrão
quando oqemu-imgé 5.1 ou mais novo): arquivo do mesmo tamanho ou menor e
leitura bem mais rápida na VM. Na ISO,xz(a menor ISO, padrão) ouzstd. - Testes de ponta a ponta da ISO (
tests/e2e/rodar.sh iso-debian iso-fedora):
geram a ISO numa VM, ligam a sessão live em BIOS e UEFI, conferem o Calamares,
instalam no disco como o Calamares faria e ligam o sistema instalado em BIOS,
UEFI e Secure Boot. - Teste de ponta a ponta "imagem antiga + falha no meio" nas proteções.
Corrigido
- Uma falha no meio apagava a imagem antiga quando
sobrescrever = true(ou
"Sobrescrever? sim" no menu): o arquivo final, que ainda era a imagem antiga,
era apagado. Agora o resultado é gravado emARQUIVO.tmpe só troca de nome
quando fica pronto. - Com
..ou um link simbólico no caminho da imagem, ou com*,?ou[
no nome, o rsync copiava o.rawque estava sendo criado para dentro dele
mesmo, até o disco encher. O caminho agora é resolvido para o caminho real e
os curingas são escapados. - Um usuário com o nome de uma conta ou grupo do sistema (
gdm,docker...)
passava na validação e só falhava no passo 7, depois de toda a cópia. - Caminhos de imagem inválidos (
"", uma pasta, uma pasta que não existe) eram
aceitos e só falhavam no fim. - A estimativa de tamanho só olhava
/usr,/etc,/var... e não contava
outras pastas da raiz nem outros discos montados, que o rsync copia: a imagem
podia sair pequena demais. A conta agora bate com o que o rsync copia. - O swap do Ubuntu Server (
/swap.img) e do btrfs (/swap/swapfile) não entram
mais na imagem. - Os menus fora de um terminal davam o erro cru "IO error: not a terminal";
agora a mensagem sugere o--plano. - O
chpasswdera exigido, mas não era mais usado. - Ubuntu 24.04: o SSH não ligava no template. O serviço que recria as chaves
do SSH no primeiro boot formava um ciclo de ordem com ossh.socket, e o
systemd descartava o socket. Agora ele roda cedo no boot (DefaultDependencies=no). - Ubuntu em UEFI: o template parava no
grub>("no such device"). O GRUB
assinado (o do Secure Boot) lê oEFI/ubuntu/grub.cfg, e a cópia trazia o da
máquina original, apontando para o disco antigo. Agora ogrub-installtambém
reescreve a pasta da distro na partição EFI. - ISO do Fedora em UEFI: a cópia do sistema para o disco falhava. O squashfs
levava a pasta/boot/eficom a etiqueta do SELinux, e a partição EFI (FAT32)
não aceita etiquetas. Agora a pasta inteira fica fora do squashfs. - Testes e2e: no Fedora 44,
cloud-init statusprecisa de root; o teste
esperava à toa até o limite de tempo.
Instalar ou atualizar:
curl -fsSL https://daniel-pereira-linux.github.io/maloki/install.sh | sh