edge branch by picking from Kwiboo's WiP tree
- works pretty nice (albeit no USB support in kernel, only u-boot) - this is still `WiP`: once Kwiboo lands his rk3528 patchset, most of this will change / be much simpler. Just be patient! - Important: the Realtek DSA switch chip is not really understood by the likes of NetworkManager and systemd-networkd; they'll think the board has 4 ethernet interfaces, which is not really true. Only one real MAC address (the SoC's GMAC) exists; in front of it is a programmable switch; to make it work one needs custom setup to bridge the LANx ports and keep WAN separate. Even then, the WAN port will have the same MAC as LANx and needs to be really used on a separate physical network, otherwise chaos/conflicts. For simple usage/testing, I recommend to connect only LAN1 and disable the other ports in NetworkManager after the first boot. - Note: `edge` u-boot can be written to MTD/SPI-FLASH and works. But keep in mind it _cannot_ boot the vendor kernel (it hangs during pcie init); might work when booting from SD, if pcie is not enumerated by u-boot.
Purpose of This Repository
The Armbian Linux Build Framework creates minimal, efficient, and fully customizable operating system images based on Debian or Ubuntu. It is designed specifically for low-resource single board computers (SBCs) and other embedded devices.
This toolchain compiles a custom Linux kernel, bootloader, and root filesystem, providing fine-grained control over:
- Kernel versions and configuration
- Bootloader selection and customization
- Filesystem layout and compression
- Additional firmware, overlays, and device trees
- System optimizations for performance and size
The framework supports native, cross, and containerized builds for multiple architectures (x86_64, aarch64, armhf, riscv64), and is suitable for development, testing, production deployment, or automation pipelines.
It ensures consistency across devices while remaining modular and extensible through a variety of configuration files, templates, and user patches.
Quick Start
git clone https://github.com/armbian/build
cd build
./compile.sh
Resources
Documentation • Website • Blog • Community Forums
Build Host Requirements
- Supported Architectures:
x86_64,aarch64,riscv64 - System: VM, container, or bare-metal with:
- ≥ 8GB RAM (less with
KERNEL_BTF=no) - ~50GB disk space
- ≥ 8GB RAM (less with
- Operating System:
- Armbian / Ubuntu 24.04 (Noble) for native builds
- Any Docker-capable Linux for containerized setup
- Windows: Windows 10/11 with WSL2 running Armbian / Ubuntu 24.04
- Access: Superuser rights (
sudoorroot) - Important: Keep your system up-to-date — outdated tools (e.g., Docker) can cause issues.
Download
Prebuilt Armbian OS Images: https://www.armbian.com/download
Contribute
Learn how to report issues, suggest improvements, or submit code: CONTRIBUTING.md
Support
Armbian offers multiple support channels, depending on your needs:
-
Community Forums
Get help from fellow users and contributors on a wide range of topics — from troubleshooting to development.
👉 forum.armbian.com -
Discord / IRC/ Matrix Chat
Join real-time discussions with developers and community members for faster feedback and collaboration.
👉 Community Chat -
Paid Consultation
For advanced needs, commercial projects, or guaranteed response times, paid support is available directly from Armbian maintainers.
👉 Contact us to discuss consulting options.
Contributors
Thank you to all the people who already contributed to Armbian!
Armbian Partners
Armbian's partnership program helps to support Armbian and the Armbian community! Please take a moment to familiarize yourself with our Partners.

