- [VirtualBox](https://www.virtualbox.org/wiki/Downloads) or similar virtualization software **(highly recommended with a minimum of 25GB hard disk space for the virtual disk image)**,
- **The only supported** compilation environment is [Ubuntu Bionic 18.04 x64](http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso) (**no other releases are supported**! It has to be exactly 18.04 otherwise default compiler versions might not match so if you're on an older Ubuntu release upgrade to 18.04 now, if you use a newer Ubuntu version start with 18.04 from scratch),
Please note that system requirements (both hardware and OS/software) may differ depending on the build environment (Vagrant, Docker, Virtualbox, native).
You can create one base configuration (`config-base.conf`) and use this in descendant config (`config-dev.conf`). Three parameters (BRANCH, RELEASE, COMPRESS_OUTPUTIMAGE) will be overwritten.
If you don't own the proper equipment to build images on your own, you can make use of the automated build system.
Packages are recompiled every night (starting at 00:01 CEST) and a few testing images are produced.
These images are accessible on the [download server](https://dl.armbian.com/) under board folder, subfolder "Nightly".
Packages, when successfully built, are published in the beta repository.
You can switch to beta repository in [armbian-config](User-Guide_Armbian-Config.md) or by changing apt.armbian.com to beta.armbian.com in /etc/apt/sources.list.d/armbian.list.
If you want that our automated system start making images for this particular board, you need to alter parameters CLI_BETA_TARGET and DESKTOP_BETA_TARGET.
Variants are depenendend from KERNEL_TARGET definitions and supported userlands: jessie, xenial, stretch.
To edit those parameters you need to push changes to the build script.
You need to [fork a project and create a pull request](Process_Contribute.md) and after it's imported by one of the administrators, images will start to show up in appropriate folder.
# Using alternate armbian builder repos and branches
By default, armbian-builder assumes working from `master` of `https://github.com/armbian/build.git`. If you are working from your own repo / branch, `touch .ignore_changes` will cause armbian-builder to not attempt a repo checkout.