3 Supported Architectures
bits edited this page 2026-04-27 20:37:39 +00:00

Supported CPU Architecture

Here's a table of the supported Debian architectures to run in mmdebstrap using debos :

Debian Architecture Supported Bootloader Boot EFI File GRUB EFI File GRUB Install Target Linux Image Package Devices
amd64 (default) UEFI BOOTX64.EFI grubx64.efi x86_64-efi linux-image-amd64 AMD and Intel processors and most PCs and servers
BIOS N/A N/A i386-pc
arm64 UEFI BOOTAA64.EFI grubaa64.efi arm64-efi linux-image-arm64 Most phones, IOT, and embedded devices, rpi4 and rpi5
riscv64 UEFI BOOTRISCV64.EFI grubriscv64.efi riscv64-efi linux-image-riscv64 open instruction set growing for embedded and single board chips
armhf UEFI BOOTARM.EFI grubarm.efi arm-efi linux-image-armmp rpi3 and rpi2
i386 UEFI BOOTIA32.EFI grubia32.efi i386-efi linux-image-686 Older PCs with limited support
BIOS N/A N/A i386-pc

Notes

  • BIOS bootloader doesn't use EFI files—those columns are marked as N/A
  • ARM and RISC-V architectures don't have traditional BIOS support, only UEFI
  • The Boot EFI names follow the UEFI specification naming convention
  • GRUB EFI filenames are lowercase versions of the boot EFI names
  • The GRUB install targets are what you'd pass to grub-install --target=
  • For i386, the linux-image- package is linux-image-686 (generic 686 flavor) rather than linux-image-i386
  • For armhf, the package is linux-image-armmp (multiplatform ARM)
  • All other architectures use linux-image-<arch> directly

x86 Instruction Set Naming

amd64 (x86-64, x64, x86_64, AMD64, and Intel 64) works on both Intel and AMD 64-bit processors. The naming is confusing because AMD actually invented the 64-bit extension to the x86 instruction set in 2003. Intel followed with their own compatible implementation shortly after. Because AMD extended x86 to use 64-bit first, they named the architecture AMD64. Intel's named their compatible version Intel 64. The Linux kernel, GCC, among other projects avoided using AMD or Intel since it worked for both brands of CPU, so they call it x86_64, while Debian calls it amd64. It's the same instruction set and Debian's amd64 package runs identically on both Intel and AMD 64-bit processors.

Support philosophy

We want to balance between expanding support to as many people as possible, while limiting the amount of extra work. That said, we will initially support amd64, arm64, and risc64 CPU instruction sets with the UEFI bootloader.

amd64 is the most common CPU architecture to find with modern PCs, while arm64 and riscv64 for single-board chips, IOT, phones, and other embedded applications. We may consider support for 32-bit i386 and armhf instruction sets, as well as, legacy BIOS bootloaders if the need comes up in the community.

Partition Types

TODO document gpt vs msdos (MBR)