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
2016-01-20 15:42:18 +01:00
bin Set Armbian logo to Udoo uboot 2015-12-21 12:13:28 +01:00
config USB boot fixes, PWM enabling 2016-01-20 13:48:13 +01:00
documentation Added more clarity to docs 2016-01-20 15:42:18 +01:00
patch This patch breaks compilation. Not suitable for this branch 2016-01-20 13:47:01 +01:00
scripts One more general export 2016-01-20 09:12:55 +01:00
boards.sh Modules creation for next and dev are the same. Better than having legacy modules on dev ... 2016-01-20 09:14:07 +01:00
build-all.sh Missing patches for u-boot default branch and fixes for "build all" 2015-12-28 12:26:28 +01:00
common.sh More fixes for Marvell Armada, kernel configuration for NEXT / DEV, fixed failed patch, u-boot packaging, ... 2016-01-08 19:50:53 +01:00
compile.sh Small change in compile.sh 2016-01-09 16:26:45 +03:00
configuration.sh Merge branch 'a13-olinux-som-512' of https://github.com/Booli/lib 2016-01-20 11:45:37 +01:00
debootstrap-ng.sh Debootstrap-ng fix for devices that don't use boot.scr (odroid) 2016-01-10 19:01:48 +03:00
debootstrap.sh Fix errors connected to apt-get update on cached trusty image 2016-01-02 19:26:56 +01:00
desktop.sh Added MPV to Jessie desktop, separate xorg.conf for sunxi FB turbo, further fixes. TESTED 2015-12-27 10:45:37 +01:00
distributions.sh Suppress output 2015-12-26 19:00:22 +01:00
general.sh Marvel Armada patches. Second batch. Image with legacy kernel is running ... 2016-01-09 10:31:20 +01:00
LICENSE Create LICENSE 2014-10-08 10:14:29 +02:00
main.sh Small fix for logging 2016-01-07 11:47:38 +03:00
makeboarddeb.sh Changes to BSP creation due too update.motd implementation. Create link to /var/run/motd, remove bash.bashrc.custom 2016-01-20 09:19:03 +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 Build script complete rewrite. Added user patches and WIP boards: Orangepi+, Lemaker Guitar 2015-12-02 20:33:32 +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: