OADC 2026 - Appendice B: RISC-V ed ARM64
1. Supporto RISCV64
Il supporto e la build per l'architettura riscv64 sono stati creati e integrati nel codebase.
Compilazione & Packaging (build.go:42-46)
- L'architettura
riscv64è gestita nel builder con le sue dipendenze specifiche (tra cuigdiskegenimage). - Nella pipeline CI (
.github/workflows/hammers.yml) è presente il job perdebian-riscv64con cross-compilazione (gcc-riscv64-linux-gnu,qemu-riscv64-static).
Remastering & Bootloader
- Gestione DTB e rilevamento SpacemiT K1 / MuseBook M1 durante il remastering (
coa/pkg/cmd/remaster.go). - Copia e mapping dei binari UEFI (
BOOTRISCV64.EFI) inbootloader-copy.sh:53-64e GRUB targetriscv64-efiper i template Debian, Arch, Fedora, openSUSE e Alpine. - Boot UEFI puro con
xorrisoperriscv64.
Installer Krill & Hardware Dedicato
- Supporto specifico per il layout a 6 partizioni e
bootfsper SoC SpacemiT K1 / MuseBook inpartition.go:35-45. - Supporto scansione NVMe e flash U-Boot (
spacemit/).
2. Supporto ARM64 (aarch64)
Anche arm64 è completamente supportato e integrato.
Compilazione & CI ("The Furnace")
- In
hammers.yml:217-266è presente la pipeline dedicatadebian-arm64che compila con cross-toolchain (gcc-aarch64-linux-gnu,libcrypt-dev:arm64, QEMUqemu-aarch64-static) e produce il pacchetto.debnativo:make package GOOS=linux GOARCH=arm64 CC=aarch64-linux-gnu-gcc RUNNER=qemu-aarch64-static
Builder & Dipendenze (build.go:40-41)
- Gestione delle dipendenze Debian per
arm64,armhf,armelcongenimageegrub-efi-arm64-bin. - Il nome del pacchetto Debian rispetta la convenzione nativa
arm64.
Bootloader & Remastering
- Generazione e copia dei binari UEFI
BOOTAA64.EFI(grubaa64.efi) viabootloader-copy.sh:58-75. - Modalità Pure UEFI boot in
xorriso.go:69. - Target GRUB
arm64-efiintegrato nei moduli template di installazione per tutte le distribuzioni (Debian/Ubuntu, Arch/Manjaro, Fedora, openSUSE, Alpine). - Filtro di compressione
xzottimizzato per evitare filtri BCJ x86 suarm64.
3. Generazione delle Immagini (ISO vs Raw Image)
Su ARM64 (Pronto)
- I moderni sistemi e schede ARM64 (server, VM QEMU/KVM, Mac Apple Silicon con Asahi/Linux, Raspberry Pi con firmware UEFI EDK2, Oracle Ampere, ecc.) utilizzano lo standard UEFI (AArch64).
- La pipeline ISO con
xorriso(Pure UEFI boot,BOOTAA64.EFI) è già predisposta e funzionante nativamente.
Su RISCV64 (Da perfezionare)
- Le board RISC-V attuali (come SpacemiT K1 / MuseBook M1) non utilizzano un firmware UEFI standard per il boot da ISO CD-ROM tradizionale: usano U-Boot/OpenSBI con Device Tree (
.dtb) e richiedono immagini raw disco (.raw/.img) a partizioni multiple (bootinfo,fsbl,env,opensbi,uboot,bootfs,rootfs) tramitegenimage. - Nel codice è già presente la logica che intercetta
riscv64(generate-plan.go:142-165) per sostituire lo stepxorrisoconmake-img(genimage), ma resta da perfezionare e testare:- La creazione di un'immagine effettivamente avviabile sia come ISO ibrida UEFI (per hardware RISC-V UEFI-compliant) sia come immagine raw disco (
.imgflashabile) per SBC e laptop come SpacemiT K1 / MuseBook.
- La creazione di un'immagine effettivamente avviabile sia come ISO ibrida UEFI (per hardware RISC-V UEFI-compliant) sia come immagine raw disco (
Supporto hardware
Prima di concludere, voglio condividere una realtà molto concreta dello sviluppo open-source indipendente.
Oggi il nostro software è letteralmente più avanti dell'hardware che ho sulla scrivania. Nel nostro codebase, il supporto per ARM64 e RISC-V 64 è già scritto, compilato e integrato. Abbiamo preparato le pipeline di cross-compilazione, i bootloader Pure UEFI — BOOTAA64.EFI e BOOTRISCV64.EFI — e persino il supporto al partizionamento dedicato per le prime schede RISC-V come lo SpacemiT K1.
Tuttavia, generare e validare filesystem live, compressioni squashfs e installer bare-metal tramite emulazione software è un'operazione proibitiva, che si scontra con i limiti dell'emulazione proprio dove serve testare il comportamento reale della macchina.
Chiudo quindi questo intervento con una richiesta diretta ai produttori di hardware e ai partner dell'ecosistema presenti qui oggi. Per portare il remastering universale di Debian, Arch, Fedora, openSUSE e openKylin sulle vostre architetture, a penguins-eggs mancano solo due macchine reali sul banco di prova:
Un sistema RISC-V conforme allo standard RVA23 e BRS (Boot and Runtime Services) — come il nuovo SpacemiT K3 — per validare sul ferro il boot diretto da ISO UEFI standard.
Un sistema ARM64 conforme a SystemReady per la verifica nativa delle ISO AArch64.
Il codice è già pronto. Se ci mettete a disposizione il silicio, io mi assicurerò che qualsiasi utente o sviluppatore Linux possa rimasterizzare, clonare e installare il proprio sistema sul vostro hardware con un solo comando.
Grazie.