2024-10-16 17:07:49 +02:00
# Armbian Build Framework Quick Start Guide
2020-11-18 15:41:52 -05:00
2024-10-16 17:07:49 +02:00
## Requirements
2016-07-02 14:20:49 -04:00
2024-11-14 09:31:58 +01:00
- x86_64 / aarch64 / riscv64 machine
- at least 4GB of memory and ~50GB of disk space for VM, container or bare metal installation
- **Armbian / Ubuntu Jammy 22.04.x** for native building or any Docker capable Linux for containerised
- **Windows 10/11 with WSL2 subsystem** running Armbian / Ubuntu Jammy 22.04.x
2024-10-16 17:07:49 +02:00
- Superuser rights (configured sudo or root access).
- Make sure your system is up-to-date! Outdated Docker binaries, for example, can cause trouble
2016-07-02 14:20:49 -04:00
2020-10-13 19:35:57 +02:00
2024-11-14 09:31:58 +01:00
## Clone repository
2016-07-02 14:20:49 -04:00
2020-08-02 10:17:41 +02:00
```bash
2024-11-14 09:31:58 +01:00
git clone https://github.com/armbian/build
2020-07-29 20:14:44 +02:00
cd build
2020-07-29 20:08:18 +02:00
```
2024-11-14 09:31:58 +01:00
!!! note
- Make sure that full path to the build script **does not contain spaces **
2024-11-26 08:05:04 +01:00
- For stable branch use last point release `--branch=v24.11`
``` mermaid
gitGraph
commit
commit
checkout main
commit id: "v24.08" tag: "v24.08"
branch v24.08
commit
commit
commit
commit
checkout main
commit id: "v24.11" tag: "v24.11"
branch v24.11
commit
commit
commit
commit
checkout main
commit
commit
commit
commit
commit
commit
commit id: "main" type: REVERSE tag: "Trunk"
```
2024-11-14 09:31:58 +01:00
2024-10-16 17:07:49 +02:00
## Interactive
2016-07-02 14:20:49 -04:00
2024-10-16 17:07:49 +02:00
Run framework:
2016-07-02 14:20:49 -04:00
2024-10-16 17:07:49 +02:00
```bash
./compile.sh
```
2016-07-02 14:20:49 -04:00
2024-11-14 09:31:58 +01:00
??? info "Video"
<iframe width="939" height="529" src="https://www.youtube.com/embed/kQcEFsXEJEE" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
2024-10-16 17:07:49 +02:00
## CLI
2017-10-09 15:43:41 +03:00
2021-10-21 17:28:05 +02:00
2025-01-23 11:44:32 +01:00
Comprehensive list of build [Commands ](Developer-Guide_Build-Commands.md ) and [Switches ](Developer-Guide_Build-Switches.md )
2016-07-02 14:20:49 -04:00
Example:
2024-10-16 17:07:49 +02:00
```bash
./compile.sh build \
BOARD=uefi-x86 \
BRANCH=current \
BUILD_DESKTOP=yes \
BUILD_MINIMAL=no \
DESKTOP_APPGROUPS_SELECTED='browsers chat desktop_tools' \
DESKTOP_ENVIRONMENT=gnome \
DESKTOP_ENVIRONMENT_CONFIG_NAME=config_base \
KERNEL_CONFIGURE=no \
RELEASE=noble
2020-07-29 20:08:18 +02:00
```
2019-07-07 17:01:29 +02:00
2024-10-16 17:07:49 +02:00
!!! question "Interpretation?"
2017-10-21 09:11:36 +02:00
2024-10-16 17:07:49 +02:00
This command will generate **Ubuntu 24.04 Noble ** based **Gnome desktop ** environment image for Intel based hardware (**uefi-x86**). Besides bare desktop, it will contain packages from **browsers ** and **desktop_tool ** sections and it will use unchanged kernel from **current kernel ** branch.
2019-07-28 22:33:16 +00:00
2025-02-24 07:21:40 +13:00
## Logging
Logs are written to **output/logs ** . Old logs (all but the current build)
are compressed and moved to **output/logs/archive ** .
Log formats are:
- ANSI - text with ANSI escapes for color coding - \*.log.ans
- ASCII (if ansi2txt is available) - text without color coding escapes - \*.log
- Markdown summary - \*.md
- Raw (if RAW_LOG=yes) - tar file containg all the raw logs - \*.raw.tar
For much more verbose logs set switch 'DEBUG=yes'.
2024-10-16 17:07:49 +02:00
## GitHub actions
2019-11-27 15:26:26 +08:00
2024-10-16 17:07:49 +02:00
If you do not own the proper equipment to build images on your own, you can use our [GitHub action ](https://github.com/marketplace/actions/rebuild-armbian ).