The official build framework for the Armbian Linux distribution. This repository contains the complete toolchain and scripts required to compile custom OS images from source, including kernel configuration, U-Boot handling, and board-specific tweaks for various ARM and ARM64 single-board computers.
Go to file
Igor Pečovnik 150ac0c2af
Remove K<4, change branches, new features (#1586)
AR-1 - Adding support category for distributions
AR-4 - Remove Allwinner legacy
AR-5 - Drop Udoo family and move Udoo board into newly created imx6 family
AR-9 - Rename sunxi-next to sunxi-legacy
AR-10 - Rename sunxi-dev to sunxi-current
AR-11 - Adding Radxa Rockpi S support
AR-13 - Rename rockchip64-default to rockchip64-legacy
AR-14 - Add rockchip64-current as mainline source
AR-15 - Drop Rockchip 4.19.y NEXT, current become 5.3.y
AR-16 - Rename RK3399 default to legacy
AR-17 - Rename Odroid XU4 next and default to legacy 4.14.y, add DEV 5.4.y
AR-18 - Add Odroid N2 current mainline
AR-19 - Move Odroid C1 to meson family
AR-20 - Rename mvebu64-default to mvebu64-legacy
AR-21 - Rename mvebu-default to mvebu-legacy
AR-22 - Rename mvebu-next to mvebu-current
AR-23 - Drop meson64 default and next, current becomes former DEV 5.3.y
AR-24 - Drop cubox family and move Cubox/Hummingboard boards under imx6
AR-26 - Adjust motd
AR-27 - Enabling distribution release status
AR-28 - Added new GCC compilers
AR-29 - Implementing Ubuntu Eoan
AR-30 - Add desktop packages per board or family
AR-31 - Remove (Ubuntu/Debian) distribution name from image filename
AR-32 - Move arch configs from configuration.sh to separate arm64 and armhf config files
AR-33 - Revision numbers for beta builds changed to day_in_the_year
AR-34 - Patches support linked patches
AR-35 - Break meson64 family into gxbb and gxl
AR-36 - Add Nanopineo2 Black
AR-38 - Upgrade option from old branches to new one via armbian-config
AR-41 - Show full timezone info
AR-43 - Merge Odroid N2 to meson64
AR-44 - Enable FORCE_BOOTSCRIPT_UPDATE for all builds
2019-11-19 23:25:39 +01:00
.github Create FUNDING.yml 2019-06-16 18:53:35 +02:00
config Remove K<4, change branches, new features (#1586) 2019-11-19 23:25:39 +01:00
lib Remove K<4, change branches, new features (#1586) 2019-11-19 23:25:39 +01:00
packages Remove K<4, change branches, new features (#1586) 2019-11-19 23:25:39 +01:00
patch Remove K<4, change branches, new features (#1586) 2019-11-19 23:25:39 +01:00
.dockerignore Improve Docker support 2017-08-01 12:30:34 +03:00
.editorconfig Added .editorconfig, removed obsoleted upgrade.sh and main.sh, launching user_config function. (#1543) 2019-09-07 23:28:42 +02:00
.gitignore Add /userpatches to .gitignore (#1585) 2019-10-06 20:56:28 +02:00
compile.sh fix shell script execute after su (#1581) 2019-10-01 16:53:22 +02:00
LICENSE Create LICENSE 2014-10-08 10:14:29 +02:00
README.md Update README.md 2019-01-15 12:22:56 +01:00
VERSION Remove K<4, change branches, new features (#1586) 2019-11-19 23:25:39 +01:00

Armbian

Debian based Linux for ARM based single-board computers

https://www.armbian.com

How to build an image or a kernel?

Supported build environment is Ubuntu Bionic 18.04 x64 (minimal iso image).

  • guest inside a VirtualBox or other virtualization software,
  • guest managed by Vagrant. This uses Virtualbox (as above) but does so in an easily repeatable way,
  • inside a Docker, systemd-nspawn or other container environment (example),
  • running natively on a dedicated PC or a server (not recommended),
  • 25GB disk space or more and 2GB RAM or more available for the VM, container or native OS,
  • superuser rights (configured sudo or root access).

Execution

apt-get -y install git
git clone https://github.com/armbian/build
cd build
./compile.sh

Make sure that full path to the build script does not contain spaces.

You will be prompted with a selection menu for a build option, a board name, a kernel branch and an OS release. Please check the documentation for advanced options and additional customization.

Build process uses caching for the compilation and the debootstrap process, so consecutive runs with similar settings will be much faster.

How to report issues?

Please read this notice first before opening an issue.

How to contribute?

  • Fork the project
  • Make one or more well commented and clean commits to the repository.
  • Perform a pull request in github's web interface.

If it is a new feature request, don't start the coding first. Remember to open an issue to discuss the new feature.

If you are struggling, check this detailed step by step guide on contributing.

Where to get more info?