Ports

Introduction

As most of you know, Linux is just a kernel. And, for a long time, the Linux kernel ran only on the Intel x86 series of machines, from the 386 up.

However, this is no longer true, by any means. The Linux kernel has now been ported to a large, and growing, list of architectures. Following close behind, we have ported the Debian distribution to these architectures. In general, this is a process with a sticky start (as we get libc and the dynamic linker working smoothly), and then a relatively routine, if lengthy job, of attempting to recompile all our packages under the new architectures.

Debian is an operating system (OS), not a kernel (actually, it is more than an OS since it includes thousands of application programs). Accordingly, while most Debian ports are based on Linux, there also are ports based on the FreeBSD, NetBSD and Hurd kernels.

This is a page in progress. Not all ports have pages yet, and most of them are on external sites. We are working on collecting information on all ports, to be mirrored along with the Debian website. More ports may be listed on the wiki.

List of official ports

These ports are the officially supported architectures by the Debian project, and either part of an official release or to be part of an upcoming one.

Port Architecture Description Added Status
amd64 64-bit PC (amd64) Port to 64-bit x86 processors, to support both 32-bit and 64-bit userland. The port supports AMD's 64-bit Opteron, Athlon and Sempron processors, and Intel's processors with Intel 64 support, including the Pentium D and various Xeon and Core series. 4.0 released
arm64 64-bit ARM (AArch64) Port to the 64-bit ARM architecture with the new version 8 64-bit instruction set (called AArch64), for processes such as the Applied Micro X-Gene, AMD Seattle and Cavium ThunderX. 8 released
armel EABI ARM Port to the 32-bit little-endian ARM architecture using the Embedded ABI, that supports ARM CPUs compatible with the v5te instruction set. This port does not take advantage of floating-point units (FPU). 5.0 released
armhf Hard Float ABI ARM Port to the 32-bit little-endian ARM architecture for boards and devices that ship with a floating-point unit (FPU), and other modern ARM CPU features. This port requires at least an ARMv7 CPU with Thumb-2 and VFPv3-D16 floating point support. 7.0 released
i386 32-bit PC (i386) Port to 32-bit x86 processors, where Linux was originally developed for the Intel 386 processors, hence the short name. Debian supports all IA-32 processors, made by Intel (including all Pentium series and recent Core Duo machines in 32-bit mode), AMD (K6, all Athlon series, Athlon64 series in 32-bit mode), Cyrix and other manufacturers. 1.1 released
mips64el MIPS (64-bit little-endian mode) Port to the little-endian N64 ABI for the MIPS64r1 ISA and hardware floating-point. 9 released
ppc64el POWER7+, POWER8 Port for the 64-bit little-endian POWER architecture, using the new Open Power ELFv2 ABI. 8 released
riscv64 RISC-V (64-bit little endian) Port for 64-bit little-endian RISC-V, a free/open ISA. 13 testing
s390x System z Port to the 64-bit userland for IBM System z mainframes. 7.0 released

List of other ports

These ports are either work in progress efforts that intend to eventually be promoted into officially released architectures, ports that were once officially supported but stopped being released because failed the release qualification or had limited developer interest, or ports that are no longer worked on and are listed for historical interest.

These ports, when they are still actively maintained, are available on the https://www.ports.debian.org/ infrastructure.

There are non-official installation images available for some of the following ports in https://cdimage.debian.org/cdimage/ports. Those images are maintained by the corresponding Debian Port Teams.

Port Architecture Description Added Dropped Status Superseded by
alpha Alpha Port to the 64-bit RISC Alpha architecture. 2.1 6.0 ports -
arm OABI ARM Port to the ARM architecture using the old ABI. 2.2 6.0 dead armel
avr32 Atmel 32-bit RISC Port to Atmel's 32-bit RISC architecture, AVR32. - - dead -
hppa HP PA-RISC Port to Hewlett-Packard's PA-RISC architecture. 3.0 6.0 ports -
hurd-i386 32-bit PC (i386) Port to the GNU Hurd operating system, for the 32-bit x86 processors. - - ports -
hurd-amd64 64-bit PC (amd64) Port to the GNU Hurd operating system, for the 64-bit x86 processors. It supports only 64-bit, not 32-bit along 64-bit. - - ports -
ia64 Intel Itanium IA-64 Port to Intel's first 64-bit architecture. Note: this should not be confused with the latest Intel 64-bit extensions for Pentium 4 and Celeron processors, called Intel 64; for these, see the amd64 port. 3.0 8 ports -
kfreebsd-amd64 64-bit PC (amd64) Port to the kernel of FreeBSD using the glibc. It was released as the first non-Linux port of Debian as a technology preview. 6.0 8 dead -
kfreebsd-i386 32-bit PC (i386) Port to the kernel of FreeBSD using the glibc. It was released as the first non-Linux port of Debian as a technology preview. 6.0 8 dead -
loong64 LoongArch (64-bit little endian) Port for 64-bit little-endian LoongArch architecture. - - ports -
m32 M32R Port to the 32-bit RISC microprocessor of Renesas Technology. - - dead -
m68k Motorola 68k Port to the Motorola 68k series of processors — in particular, the Sun3 range of workstations, the Apple Macintosh personal computers, and the Atari and Amiga personal computers. 2.0 4.0 ports -
mips MIPS (big-endian mode) Port to the MIPS architecture which is used in (big-endian) SGI machines. 3.0 11 dead -
mipsel MIPS (little-endian mode) Port to the MIPS architecture which is used in (little-endian) Digital DECstations. 3.0 13 dead -
netbsd-i386 32-bit PC (i386) Port to the NetBSD kernel and libc, for the 32-bit x86 processors. - - dead -
netbsd-alpha Alpha Port to the NetBSD kernel and libc, for the 64-bit Alpha processors. - - dead -
or1k OpenRISC 1200 Port to the OpenRISC 1200 open source CPU. - - dead -
powerpc Motorola/IBM PowerPC Port for many of the Apple Macintosh PowerMac models, and CHRP and PReP open architecture machines. 2.2 9 ports -
powerpcspe PowerPC Signal Processing Engine Port to the "Signal Processing Engine" hardware present on low-power 32-bit FreeScale and IBM "e500" CPUs. - - dead -
s390 S/390 and zSeries Port to IBM S/390 servers. 3.0 8 dead s390x
sparc Sun SPARC Port for the Sun UltraSPARC series of workstations, as well as some of their successors in the sun4 architectures. 2.1 8 dead sparc64
sparc64 64-bit SPARC Port to the 64-bit SPARC processors. - - ports -
sh4 SuperH Port to Hitachi SuperH processors. Also supports the open source J-Core processor. - - ports -
x32 64-bit PC with 32-bit pointers Port to the amd64/x86_64 x32 ABI, which uses the amd64 instruction set but with 32-bit pointers, to combine the larget register set of that ISA with the smaller memory and cache footprint resulting from 32-bit pointers. - - ports -

Many of the above computer and processor names are trademarks and registered trademarks of their manufacturers.