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
Port | Architecture | Description | Status |
---|---|---|---|
amd64 | 64-bit PC (amd64) | First officially released with Debian 4.0. Port to 64-bit x86 processors. The goal is to support both 32-bit and 64-bit userland on this architecture. This 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. | released |
arm64 | 64-bit ARM (AArch64) | Version 8 of the ARM architecture included AArch64, a new 64-bit instruction set. Since Debian 8.0, the arm64 port has been included in Debian to support this new instruction set on processors such as the Applied Micro X-Gene, AMD Seattle and Cavium ThunderX. | released |
armel | EABI ARM | The oldest of the current Debian ARM ports supports little-endian ARM CPUs compatible with the v4t instruction set. | released |
armhf | Hard Float ABI ARM | A lot of modern 32-bit ARM boards and devices ship with a floating-point unit (FPU), but the Debian armel port doesn't take much advantage of it. The armhf port was started to improve this situation and also take advantage of other features of newer ARM CPUs. The Debian armhf port requires at least an ARMv7 CPU with Thumb-2 and VFP3-D16 floating point support. | released |
i386 | 32-bit PC (i386) | The first architecture, and not strictly a port. 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. | released |
mips | MIPS (big-endian mode) | First officially released with Debian 3.0. Debian is being ported to the MIPS architecture which is used in SGI machines (debian-mips — big-endian) and Digital DECstations (debian-mipsel — little-endian). | released |
mipsel | MIPS (little-endian mode) | First officially released with Debian 3.0. Debian is being ported to the MIPS architecture which is used in SGI machines (debian-mips — big-endian) and Digital DECstations (debian-mipsel — little-endian). | released |
mips64el | MIPS (64-bit little-endian mode) | This port is little-endian, uses the N64 ABI, the MIPS64r1 ISA and hardware floating-point. Part of the official release since Debian 9. | released |
ppc64el | POWER7+, POWER8 | First officially released with Debian 8.0. Little-endian port of ppc64, using the new Open Power ELFv2 ABI. | released |
s390x | System z | First officially released with Debian 7.0. A 64-bit userland for IBM System z mainframes. | released |
List of other ports
There are non-official installation images available for some of the following ports in http://cdimage.debian.org/cdimage/ports. Those images are maintained by the corresponding Debian Port Teams.
Port | Architecture | Description | Status |
---|---|---|---|
alpha | Alpha | First officially released with Debian 2.1.
It failed the criteria for inclusion into the release of Debian 6.0 squeeze, and was in consequence removed from the archive. |
discontinued |
arm | OABI ARM | This port runs on a variety of embedded hardware, like routers or NAS devices. The arm port was first released with Debian 2.2, and was supported up to and including Debian 5.0, where it was replaced with armel. | replaced by armel |
AVR32 | Atmel 32-bit RISC | Port to Atmel's 32-bit RISC architecture, AVR32. | discontinued |
hppa | HP PA-RISC | First officially released with Debian 3.0 woody, this is a port to Hewlett-Packard's PA-RISC architecture. It failed the criteria for inclusion into the release of Debian 6.0 squeeze, and was in consequence removed from the archive. |
discontinued |
hurd-i386 | 32-bit PC (i386) | The GNU Hurd is a new operating system being put together by the GNU group. Debian GNU/Hurd is going to be one (possibly the first) GNU OS. The current project is founded on the i386 architecture. | in progress |
ia64 | Intel Itanium IA-64 | First officially released with Debian 3.0. This is a 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. With Debian 8 ia64 was removed from the release due to insufficient developer support. | discontinued |
kfreebsd-amd64 | 64-bit PC (amd64) | First officially released with Debian 6.0 as a technology preview and the first non-Linux port released by Debian. Port of the Debian GNU system to the kernel of FreeBSD. Is no longer part of the official release since Debian 8. | in progress |
kfreebsd-i386 | 32-bit PC (i386) | First officially released with Debian 6.0 as a technology preview and the first non-Linux port released by Debian. Port of the Debian GNU system to the kernel of FreeBSD. Is no longer part of the official release since Debian 8. | in progress |
m32 | M32R | Port to the 32-bit RISC microprocessor of Renesas Technology. | dead |
m68k | Motorola 68k | First officially released with Debian 2.0. The port failed to make the release criteria for Debian 4.0 and has therefore not been included in Etch and later releases and has been moved to debian-ports following that. The Debian m68k port runs on a wide variety of computers based on 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. | in progress |
netbsd-i386 | 32-bit PC (i386) | A port of the Debian operating system, complete with apt, dpkg, and GNU userland, to the NetBSD kernel. The port, never released, has been abandoned. | dead |
netbsd-alpha | Alpha | A port of the Debian operating system, complete with apt, dpkg, and GNU userland, to the NetBSD kernel. The port, never released, has been abandoned. | dead |
or1k | OpenRISC 1200 | A port to the OpenRISC 1200 open source CPU. | dead |
powerpc | Motorola/IBM PowerPC | First officially released with Debian 2.2. This port runs on many of the Apple Macintosh PowerMac models, and on the CHRP and PReP open architecture machines. No longer part of the official release since Debian 9. | discontinued |
powerpcspe | PowerPC Signal Processing Engine | A port to the "Signal Processing Engine" hardware present on low-power 32-bit FreeScale and IBM "e500" CPUs. | in progress |
s390 | S/390 and zSeries | First officially released with Debian 3.0. This is a port to IBM S/390 servers. Was replaced by s390x with Debian 8. | replaced by s390x |
sparc | Sun SPARC | First officially released with Debian 2.1. This port runs on the Sun UltraSPARC series of workstations, as well as some of their successors in the sun4 architectures. Since the release of Debian 8 Sparc was no longer a release architecture, due to insufficient developer support. However, it is to be replaced by Sparc64 soon. | to be replaced by sparc64 |
sparc64 | 64-bit SPARC | A 64-bit port to SPARC processors. | in progress |
sh4 | SuperH | A port to Hitachi SuperH processors. Also supports the open source J-Core processor. | in progress |
x32 | 64-bit PC with 32-bit pointers | X32 is an ABI for amd64/x86_64 CPUs using 32-bit pointers. The idea is to combine the larger register set of x86_64 with the smaller memory and cache footprint resulting from 32-bit pointers. | in progress |
Port-like projects
Although these efforts aren't exactly ports, this seemed like a good place to put them.
Debian Beowulf
Beowulf is a replacement for some of the larger mega computers used in the science and math fields. This project aims to run Beowulf clusters on Debian machines and to network the people involved in true bazaar fashion.
Many of the above computer and processor names are trademarks and registered trademarks of their manufacturers. They are used without permission.