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 f6fecbb6bd Merge pull request #182 from WereCatf/master
Mali r3p0 - libs for GLES (sunxi)
2016-02-26 06:57:32 +01:00
bin Set Armbian logo to Udoo uboot 2015-12-21 12:13:28 +01:00
config Merge pull request #182 from WereCatf/master 2016-02-26 06:57:32 +01:00
documentation Typos fixed in H3 mini FAQ 2016-02-24 16:58:30 +01:00
patch Patch to support cheap / slow mmc card during kernel loading 2016-02-25 11:05:08 +08:00
scripts Point Orange Pi H3 users to the FAQ the 1st time they login 2016-02-24 19:53:24 +01:00
boards.sh Use one boot.cmd for all sunxi boards again and differentiate inside boards.sh unless we got display stuff for sun8i fixed and can use normal disp_init 2016-02-24 13:05:37 +01:00
build-all.sh example 2016-02-20 18:58:44 +01:00
common.sh Merge pull request #182 from WereCatf/master 2016-02-26 06:57:32 +01:00
compile.sh compile.sh was changed, so increment version number 2016-02-10 10:19:41 +01:00
configuration.sh Unified H3 image generation, include h3disp in H3 images, let red led blink while executing firstrun on H3 2016-02-24 11:47:54 +01:00
debootstrap-ng.sh remount-ro is only for ext4 2016-02-04 20:12:09 +03:00
debootstrap.sh Shutdown by power button support in Trusty 2016-01-31 17:26:16 +03:00
desktop.sh Fix conditional 2016-02-25 19:17:52 +02:00
distributions.sh Handle PMU power button in Jessie 2016-01-31 15:05:58 +03:00
general.sh Cosmetic - new option for displaying msg with bright green text 2016-02-10 15:54:17 +01:00
LICENSE Create LICENSE 2014-10-08 10:14:29 +02:00
main.sh Build driver for MT7601U 2016-02-20 13:49:19 +02:00
makeboarddeb.sh Unified H3 image generation, include h3disp in H3 images, let red led blink while executing firstrun on H3 2016-02-24 11:47:54 +01:00
patching.sh New hidden variable - exit if patching fails, added to configuration too, default = unchanged = warning 2016-01-08 19:49:47 +01: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 fake-hwclock package 2016-01-21 13:02:55 +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: