Armbian
| Armbian | |
|---|---|
![]() | |
| Developer | Armbian community |
| Written in | Bash |
| OS family | Linux (Unix-like) |
| Working state | Current |
| Source model | Open source |
| Initial release | 2014 |
| Latest release | 26.8 / 25 August 2026[1] |
| Repository | github |
| Available in | English |
| Update method | APT |
| Package manager | dpkg |
| Supported platforms | ARM, RISCV64, AMD64 |
| Kernel type | Monolithic |
| Userland | GNU |
| License | GPLv2 |
| Official website | www |
Armbian is a free and open-source software framework for building system images for single-board computers (SBCs) and other embedded devices. It is not a Linux distribution in its own right but builds upon Debian or Ubuntu, providing a minimal base system optimized for SBC hardware and maintaining its own kernels.[2] The framework allows users and manufacturers to deploy ready-made images or create customized ones for specific hardware.[3]
The build framework assembles a complete operating system — bootloader, kernel and root filesystem — from source, and supports native, cross-compiled and containerized builds for the x86-64, aarch64, armhf and riscv64 architectures.[4]
Armbian was started in 2014 by Slovenian developer Igor Pečovnik and has since become a community project with contributions from users, independent developers and hardware vendors.[5] Point releases are issued quarterly, alongside daily rolling builds.[6]
History
Armbian began in mid-2014 as a personal effort by Igor Pečovnik to improve Linux support on the Allwinner A20-based Cubieboard. Other developers joined through the board's community forums, and the project's website was launched later that year, initially hosted on the Cubieboard itself and subsequently on an ODROID-XU4 as traffic increased. The project's stated motivation was to address the poor documentation and weak Linux kernel and U-Boot support typical of inexpensive ARM boards at the time.[5]
The build engine grew from a set of shell scripts into a general-purpose framework, adopting techniques such as package caching, ccache, parallelized builds and building in memory to reduce image build times.[5][4]
Although the project began as an ARM-only effort, later releases extended the framework to UEFI-based x86-64 targets and to RISC-V hardware, and RISC-V images have been published alongside ARM images since the mid-2020s.[7][8]
Design
Build framework
The build framework is written primarily in Bash and produces a bootable image by compiling a kernel, preparing a bootloader, and bootstrapping a Debian or Ubuntu userspace onto which board support packages, device tree overlays and firmware are applied. Builds may be run natively on the target architecture, cross-compiled on an x86-64 host, or executed inside a Docker container, and the framework is used both for producing the project's own release images and for generating customized images by third parties.[4][3] An extensions mechanism allows build behaviour to be modified through hooks, including optional features such as remote ccache and Rust support in the kernel.[9]
Images are based on the current stable and development branches of Debian and on Ubuntu's long-term support and interim releases, and are published in minimal, server and desktop variants as well as in formats intended for QEMU, Hyper-V and root filesystem archives. Releases are distributed with checksums and signed metadata through a network of mirrors, and an APT repository supplies package updates to existing installations.[10][6]
Kernels and bootloaders
Rather than using the kernels shipped by Debian or Ubuntu, Armbian maintains its own kernel packages and applies board-specific patch sets, including device tree fixes and backported drivers. Kernel targets are organized into branches: a current branch tracking a long-term support mainline kernel, an edge branch following the newest mainline series, and, for platforms whose mainline support is incomplete, a vendor branch based on the SoC manufacturer's board support package.[11][10] U-Boot is likewise maintained per board, with a long-running effort to move boards from vendor forks to mainline U-Boot releases.[12]
System optimization
Images are tuned for devices with limited memory and flash-based storage. By default Armbian uses zram to provide compressed swap in RAM, and to hold /var/log and /tmp, reducing write wear on SD cards; the behaviour is configurable and can be replaced with conventional swap or zswap where suitable storage is attached.[13] A hardware optimization service applied at boot selects I/O schedulers according to storage type and applies per-SoC settings such as IRQ affinity.[13]
Configuration and imaging tools
Armbian ships armbian-config, a menu-driven utility covering system tasks such as kernel selection, desktop environment installation, storage configuration, user and access management and updates, together with network and localisation settings. It also provides a catalogue of preconfigured server applications spanning containers, media servers, home automation, monitoring, DNS filtering, VPN and database software.[14]
A separate cross-platform tool, Armbian Imager, downloads and writes images to SD cards, USB media and internal storage on Linux, macOS and Windows, verifying checksums as part of the process.[10] In release 26.8 the system installer was rewritten as an armbian-config module, gaining separate handling for eMMC and NVMe targets, support for SPI and MTD flash, and reporting of bootloader write failures.[15]
Supported hardware
As of 2026 the project states that it provides images for more than 300 boards from over 60 manufacturers.[10] Supported hardware includes boards from vendors such as Radxa, FriendlyELEC, Khadas, Libre Computer, Seeed Studio, SpacemiT, Texas Instruments and Mekotronics, several of which participate in the project's partner programme, as well as Raspberry Pi models, Android set-top boxes and RISC-V development boards.[10][16][3]
Support is categorized as platinum, standard, community maintained, or staging.[17][18]
Platinum is reserved for boards covered by a commercial relationship with the project. Standard support requires a named maintainer, recorded in the board's configuration file, who has physical access to the hardware, participates in the release process and signs off that the device has been tested before each release; maintainers may receive best-effort compensation from a community fund. Status is assigned per board rather than per board family, and missing a major release results in demotion unless an exemption is granted. Community maintained covers boards without active supervision, for which images are published but untested and may be removed from the codebase; the category merges the project's earlier "community supported configuration" and "end of support" designations. Staging denotes work in progress, where a maintainer has committed to a board that is not yet ready for stable images; such boards receive nightly command-line images and are eligible for promotion to standard support.[17]
Release model
Armbian combines daily rolling builds with quarterly point releases published at the end of February, May, August and November. Each cycle lasts three months and begins with a planning meeting; feature integration is frozen two weeks before the release date, after which a release-candidate branch is cut from the main branch and only bug fixes are accepted. Candidates are subjected to automated and manual testing on hardware, and the process is repeated until a candidate qualifies as the final release.[6]
Versions are numbered <major>.<minor>.<revision>, where the major and minor components correspond to the year and month of the release cycle and the revision is incremented for fixes. Releases also carry codenames taken from names of uncommon animals, such as 23.11 "Topi" and 26.02 "Goa".[6] Development work is coordinated through weekly online developer meetings and tracked in an issue tracker.[6][17]
| Version | Date | Notable changes |
|---|---|---|
| 23.11 | November 2023 | Additional board support and new image variants[2] |
| 25.2 | February 2025 | Improved Rockchip RK3588 support, moves to Linux 6.6 and 6.12 LTS kernels, updated U-Boot[7] |
| 26.2 | March 2026 | Linux 6.18 LTS on stable targets, RISC-V Xfce desktop images, GNOME and Cinnamon builds[19][8] |
| 26.5 | May 2026 | Linux 7.0 kernel series across several SoC families, Ubuntu 26.04 LTS integrated across the build matrix, YAML-based modular desktop configuration[20] |
| 26.8 | August 2026 | Linux 7.1 across the tree, rewritten installer, Armbian Imager 2.0, bootable UEFI ISO images[12][15] |
See also
References
- ↑ "Armbian release 26.8". 25 August 2026. Retrieved 25 August 2026.
- 1 2 Rudra, Sourav (8 December 2023). "Armbian 23.11 Release Supports New Boards And Adds New OS Builds". itsfoss.com. Retrieved 9 December 2023.
- 1 2 3 Evenden, Ian (1 March 2022). "Raspberry Pi 64-bit Armbian Gets New Release". Tom's Hardware. Retrieved 25 August 2023.
- 1 2 3 "armbian/build: The official build framework for the Armbian Linux distribution". GitHub. Retrieved 26 August 2026.
- 1 2 3 Aufranc, Jean-Luc (8 May 2018). "Armbian History, Infrastructure, and Progress Report". CNX Software. Retrieved 26 August 2026.
- 1 2 3 4 5 "Release Model – Armbian Documentation". docs.armbian.com. Retrieved 26 August 2026.
- 1 2 Larabel, Michael (24 February 2025). "Armbian 25.2 Released With New Boards Supported, Kernel Upgrades". Phoronix. Retrieved 26 August 2026.
- 1 2 Larabel, Michael (2 March 2026). "Armbian 26.02 Released: New Boards, Powered By Linux 6.18 LTS & RISC-V Xfce Desktop". Phoronix. Retrieved 26 August 2026.
- ↑ "Overview – Armbian Build Framework Documentation". docs.armbian.com. Retrieved 26 August 2026.
- 1 2 3 4 5 "Armbian – Optimized Linux for ARM Boards". armbian.com. Retrieved 26 August 2026.
- ↑ "Release is coming!". armbian.com. 5 February 2025. Retrieved 26 August 2026.
- 1 2 Nestor, Marius (25 August 2026). "Armbian 26.8 Released with Linux 7.1, Revamped Installer, and UEFI ISO Images". 9to5Linux. Retrieved 26 August 2026.
- 1 2 "Advanced Configuration – Armbian Documentation". docs.armbian.com. Retrieved 26 August 2026.
- ↑ "Armbian Config – Armbian Documentation". docs.armbian.com. Retrieved 26 August 2026.
- 1 2 "Armbian 26.8 released". LWN.net. 25 August 2026. Retrieved 26 August 2026.
- ↑ "Armbian 26.02 Arrives with Linux 6.18 LTS and Expanded Board Support". Linux Journal. 2 March 2026. Retrieved 26 August 2026.
- 1 2 3 "Board Support Rules – Armbian Documentation". docs.armbian.com. Retrieved 26 August 2026.
- ↑ "Armbian – Linux for ARM development boards". armbian.com. 20 January 2024. Archived from the original on 20 January 2024. Retrieved 20 January 2024.
- ↑ Nestor, Marius (2 March 2026). "Armbian 26.2 Released with Linux 6.18 LTS, Expanded ARM and RISC-V Support". 9to5Linux. Retrieved 26 August 2026.
- ↑ Nestor, Marius (30 May 2026). "Armbian 26.5 Released with Linux 7.0, Ubuntu 26.04 LTS Builds, and More". 9to5Linux. Retrieved 26 August 2026.

