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
WereCatf 91eae35f3c Fix race-condition with create_swap.sh
Stupid code just relied on create_swap.sh taking a long time to execute.
2016-03-13 10:34:25 +02:00
bin Bluetooth fix for Udoo Neo and M4 updated firmware 2016-03-07 19:52:28 +01:00
config Automounting/eject of USB, reboot/poweroff working from desktop 2016-03-12 06:35:14 +02:00
documentation Note about possible updating. 2016-03-09 06:57:26 +01:00
patch More GCC5 fixes for sunxi-legacy 2016-03-10 15:44:01 +03:00
scripts Fix race-condition with create_swap.sh 2016-03-13 10:34:25 +02:00
boards.sh Bluetooth fix for Udoo Neo and M4 updated firmware 2016-03-07 19:52:28 +01:00
build-all.sh example 2016-02-20 18:58:44 +01:00
common.sh Cosmetic feature. Action windows is now as big as your terminal screen. 2016-03-07 18:29:48 +01:00
compile.sh compile.sh was changed, so increment version number 2016-02-10 10:19:41 +01:00
configuration.sh Merge pull request #223 from WereCatf/master 2016-03-12 06:39:06 +01:00
debootstrap-ng.sh Root on NFS related tweaks and fixes 2016-03-11 21:20:57 +03:00
debootstrap.sh This commit dissapeared ;) 2016-03-08 10:05:34 +01:00
desktop.sh Automounting/eject of USB, reboot/poweroff working from desktop 2016-03-12 06:35:14 +02:00
distributions.sh Temporary fix for Xenial 2016-03-11 21:52:54 +03:00
fel-load.sh Root on NFS related tweaks and fixes 2016-03-11 21:20:57 +03:00
general.sh GCC5 patches for sun[47]i legacy kernel 2016-03-09 16:26:36 +03:00
LICENSE Create LICENSE 2014-10-08 10:14:29 +02:00
main.sh Initial support for Xenial build target 2016-03-08 21:22:35 +03:00
makeboarddeb.sh Updated H3 FAQ, enabled armbianmonitor for boot verbosity and log upload 2016-03-05 19:14:00 +01:00
patching.sh Added function to abort build with verbose error message 2016-03-05 21:29:04 +03:00
README.md Build script complete rewrite. Added user patches and WIP boards: Orangepi+, Lemaker Guitar 2015-12-02 20:33:32 +01:00
repo-show.sh Build script complete rewrite. Added user patches and WIP boards: Orangepi+, Lemaker Guitar 2015-12-02 20:33:32 +01:00
repo-update.sh Build script complete rewrite. Added user patches and WIP boards: Orangepi+, Lemaker Guitar 2015-12-02 20:33:32 +01:00
upgrade.sh Banana M1 / M1+ / Pro micro fixes in legacy and vanilla kernel. 2016-03-01 22:27:09 +01:00

How to build my own image?

Preparation

  • x86 machine running any OS, 4G ram, SSD, quad core (recommended),
  • virtual box or similar virtualization software, (highly recommended)
  • host system is highly recommended to be Ubuntu 14.04 (some but not all sources can also compile on Ubuntu 15.04, Mint 17.2 and Debian Jessie),
  • installed basic system, OpenSSH and Samba (optional),
  • root access.

Execution

apt-get -y install git
git clone https://github.com/igorpecovnik/lib --depth 1
cp lib/compile.sh .
chmod +x compile.sh
./compile.sh

This will download all necessary sources, execute compilation and build an bootable image. Most of things will be cached so next run will be extremly faster!

How to build my own kernel?

Prerequisition are the same as building an image!

Edit compile.sh prior to running and alter switch:

KERNEL_ONLY="yes"

In directory (output/debs) you will find deb packed kernel, together with headers, firmware and u-boot.

If you are doing changes to kernel source, disable GIT lock with:

FORCE_CHECKOUT="no"

If you want to invoke menu configuration:

KERNEL_CONFIGURE="yes"

More info: