2024-11-06 09:08:53 +01:00
# Build Switches
2024-06-19 14:12:39 +02:00
2025-01-22 08:25:22 -05:00
These parameters are meant to be applied to the `./compile.sh` command. They are **all ** optional. They can also be added to your [build configuration file ](Developer-Guide_Build-Preparation.md#providing-build-configuration ) to save time. Default values are marked **bold ** if applicable.
2024-05-30 15:35:07 +04:00
2024-11-06 14:19:05 +01:00
### User space
**BOARD** ( `string` )
Set the name of the board manually to skip the dialog prompt. Name of the board is [a filename without extension ](https://github.com/armbian/build/tree/main/config/boards ).
**BRANCH** ( `string` )
- `vendor`
- `legacy`
- `current` (recommended)
- `edge`
Set kernel and U-Boot branch manually to skip dialog prompt
!!! tip "Note"
2025-01-22 08:25:22 -05:00
2024-11-06 14:19:05 +01:00
Some branches may not be available for all devices.
**RELEASE** ( `string` )
- `bookworm`
- `trixie`
- `sid`
- `jammy`
- `noble`
Set packages release base manually to skip dialog prompt. Check here for [currently available releases ](https://github.com/armbian/build/tree/main/config/distributions ).
!!! tip "Note"
2025-01-22 08:25:22 -05:00
2024-11-06 14:19:05 +01:00
Only stable and/or LTS upstream Debian or Ubuntu releases are officially supported. Others might work or not.
**BUILD_MINIMAL** ( `string` )
2025-01-22 08:25:22 -05:00
2024-11-06 14:19:05 +01:00
- `yes` : build a bare CLI image suitable for application deployment. This option is **not compatible ** with `BUILD_DESKTOP="yes"`
- `no` : (default)
2025-01-22 08:25:22 -05:00
**BSPFREEZE** ( `string` )
2024-11-06 14:19:05 +01:00
- `yes` : freeze (from upgrade) armbian firmware packages when building images (U-Boot, kernel, DTB, BSP)
- `no` : (default)
**INSTALL_HEADERS** ( `string` )
- `yes` : pre-install kernel headers
- `no` : (default)
<hr>
2024-11-06 09:08:53 +01:00
### Networking
2024-05-30 15:35:07 +04:00
2024-11-06 14:19:05 +01:00
**NETWORKING_STACK** ( `string` )
2024-05-30 15:35:07 +04:00
2024-11-06 14:19:05 +01:00
- `network-manager`
- `systemd-networkd`
- `none` (to not-add any networking extensions)
2020-08-02 10:44:42 +02:00
2024-11-06 09:08:53 +01:00
Installs desired networking stack. If the parameter is undefined, it sets `systemd-networkd` for minimal images (MINIMAL=yes) and `network-manager` for the rest. Time synchronization is also changed; chrony is installed with network-manager, while systemd-timesyncd is used with systemd-networkd. In both cases, we control network settings using **Netplan ** .
2020-08-02 10:44:42 +02:00
2024-11-06 09:08:53 +01:00
!!! example "Build switch example"
2020-08-02 10:44:42 +02:00
2025-05-08 01:08:10 +03:00
```sh
./compile.sh NETWORKING_STACK="network-manager"
```
2024-06-24 20:55:01 +02:00
2024-11-06 09:08:53 +01:00
<hr>
2024-11-06 14:19:05 +01:00
2024-11-06 09:08:53 +01:00
### Host environment
2024-06-24 20:55:01 +02:00
2025-05-08 01:08:10 +03:00
**EXPERT** ( `string` )
2024-11-06 14:19:05 +01:00
- `yes`
Show development features and boards regardless of their support status in interactive mode.
2025-05-08 01:08:10 +03:00
**CLEAN_LEVEL** ( `comma-separated list` )
2024-11-06 14:19:05 +01:00
Defines what should be cleaned. Changing this option can be useful when rebuilding images or building more than one image
- `make-atf` = make clean for ATF, if it is built.
- `make-uboot` = make clean for uboot, if it is built.
- `make-kernel` = make clean for the kernel if it is built. very slow.<br>
- `debs` , `alldebs` = delete all packages in "./output/debs"
- `images` = delete "./output/images"
- `cache` = delete "./output/cache"
- `sources` = delete `cache/sources` (all downloaded sources)
- `oldcache` = remove old cached rootfs except for the newest 8 files
- `extras` = delete additional packages for the current release in `output/debs/extra`
2025-05-08 01:08:10 +03:00
**CARD_DEVICE** ( `string` )
2024-11-06 14:19:05 +01:00
2025-01-22 08:25:22 -05:00
- `/dev/sdX`
2024-11-06 14:19:05 +01:00
2025-11-25 23:46:56 +08:00
After successful compilation, do a verified burn of the image to the specified storage device (flash media / SD card).
2024-11-06 14:19:05 +01:00
2025-05-08 01:08:10 +03:00
**PREFER_DOCKER** ( `string` )
2024-11-06 14:19:05 +01:00
- `yes` (default)
- `no`
Docker assisted compilation is on by default. Set to `no` if you prefer running compilation natively.
2025-05-08 01:08:10 +03:00
**DOCKER_ARMBIAN_BASE_IMAGE** ( `string` )
2024-11-06 14:19:05 +01:00
- `ubuntu:jammy` (default)
- `ubuntu:noble`
- `debian:bookworm`
2024-07-01 21:06:47 +02:00
2024-08-15 11:40:31 +03:00
Defines the build host when using a Docker container (default). [Here ](https://github.com/armbian/docker-armbian-build/pkgs/container/docker-armbian-build ), you can see which other options are available.
2024-07-01 21:06:47 +02:00
2025-05-08 01:08:10 +03:00
- **CI** ( `string` )
2024-07-04 16:27:45 +03:00
- true
- **false**
2025-01-22 08:25:22 -05:00
If enabled (`true` ), the Docker build container will receive Docker credentials from the host
2024-07-04 16:27:45 +03:00
(`${HOME}/.docker/config.json` ) and the `OCI_TARGET_BASE` environment variable.
2025-05-08 01:08:10 +03:00
- **OCI_TARGET_BASE** ( `string` )
2024-07-04 16:27:45 +03:00
- url/to/container_registry/path
2025-01-22 08:25:22 -05:00
- **${GHCR_SOURCE}/armbian/\*** (GHCR_SOURCE is defined in `lib/functions/configuration/main-config.sh` )
2024-07-04 16:27:45 +03:00
2024-08-15 11:40:31 +03:00
Select the target for pull/push OCI cached images. If not set, default is used.
2024-07-04 16:27:45 +03:00
2025-05-08 01:08:10 +03:00
**GHCR_MIRROR_ADDRESS** ( `string` )
2024-07-18 11:30:29 +02:00
2024-08-15 11:40:31 +03:00
The default mirror address for ghcr.io, set by `GHCR_MIRROR=dockerproxy` , is ghcr.dockerproxy.com. When this address is unavailable, an alternative address can be set with `GHCR_MIRROR_ADDRESS` .
2024-07-18 11:30:29 +02:00
Example:
2025-01-22 08:25:22 -05:00
2025-05-08 01:08:10 +03:00
```sh
2024-07-18 11:30:29 +02:00
./compile.sh GHCR_MIRROR=dockerproxy GHCR_MIRROR_ADDRESS=ghcr.libcuda.so
2024-08-15 11:40:31 +03:00
```
2025-05-08 01:08:10 +03:00
**KERNEL_COMPILER** ( `string` )
2024-08-15 11:40:31 +03:00
The compiler used to compile the kernel. Usually, this option is set by the board config, but it can be set to `clang` to use LLVM to compile the kernel.
Example:
2025-01-22 08:25:22 -05:00
2025-05-08 01:08:10 +03:00
```sh
2024-08-15 11:40:31 +03:00
./compile.sh KERNEL_COMPILER=clang
2025-01-22 08:25:22 -05:00
```
2024-07-01 21:06:47 +02:00
2025-05-08 01:08:10 +03:00
**OPENSSHD_REGENERATE_HOST_KEYS** ( `boolean` )
2025-01-22 08:25:22 -05:00
- false (skip armbian-firstrun's OpenSSH host keys deletion and regeneration (eg: to let cloud-init set the SSH host keys)
- **true** (execute armbian-firstrun's OpenSSH host keys deletion + regeneration)
2024-09-15 10:34:52 +02:00
2025-01-22 08:25:22 -05:00
Manage OpenSSH host key regeneration at armbian-firstrun service.
2024-09-15 10:34:52 +02:00
Example:
2025-01-22 08:25:22 -05:00
2025-05-08 01:08:10 +03:00
```sh
2024-09-15 10:34:52 +02:00
./compile.sh OPENSSHD_REGENERATE_HOST_KEYS=false
2025-01-22 08:25:22 -05:00
```
2024-09-15 10:34:52 +02:00
2024-11-06 14:19:05 +01:00
<hr>
2024-11-06 09:08:53 +01:00
### Filesystem
2025-05-08 01:08:10 +03:00
**ROOTFS_TYPE** ( `string` )
2024-11-06 14:19:05 +01:00
- `ext4` (default)
- `f2fs`
2025-01-22 08:25:22 -05:00
- `btrfs`
2024-11-06 14:19:05 +01:00
- `nilfs2`
- `xfs`
2025-01-22 08:25:22 -05:00
- `nfs`
2024-11-06 14:19:05 +01:00
Create image with different root filesystems instead of default `ext4` . Requires setting `FIXED_IMAGE_SIZE` to something smaller than the size of your SD card for `F2FS`
2025-05-08 01:08:10 +03:00
**BTRFS_COMPRESSION** ( `string` )
2024-11-06 14:19:05 +01:00
- `lzo`
- `none`
- `zlib` (default)
- `zstd`
When choosing `ROOTFS_TYPE=btrfs` , select `btrfs` filesystem compression method and compression level. By default, the compression is `zlib` .
!!! tip "Note"
2025-01-22 08:25:22 -05:00
The script does not check the legality of the input variable (compression ratio). Input like `zlib:1234` is legal to the script but illegal to the kernel. Beware that setting this option does affect image creation only (shrinking disk size) and will not adjust `/etc/fstab` , so it is up to the user to later edit `/etc/fstab` if compression in daily operation is also wanted (beware of severe performance penalties with random IO patterns and heavy compression algorithms!).
2024-11-06 14:19:05 +01:00
2025-05-08 01:08:10 +03:00
**BTRFS_ROOT_SUBVOLUME** ( `string` )
2025-05-07 23:57:17 +03:00
When using a BTRFS image as a file system, the volume `/` is placed on
btrfs subvolume `@` . The same subvolume is set as default for mounting without
specifying the `subvol=@` option at the time the image is mounted.
Using `BTRFS_ROOT_SUBVOLUME` , you can set a different name for the
root filesystem subvolume:
2025-05-08 01:08:10 +03:00
```sh
2025-05-07 23:57:17 +03:00
./compile.sh ROOTFS_TYPE=btrfs BTRFS_ROOT_SUBVOLUME=@root
```
2025-05-08 01:08:10 +03:00
**CRYPTROOT_ENABLE** ( `string` )
2024-11-06 09:08:53 +01:00
- yes
- no
LUKS (Linux Unified Key Setup) is a specification for block device encryption. It establishes an on-disk format for the data, as well as a passphrase/key management policy. LUKS uses the kernel device mapper subsystem via the dm-crypt module.
2025-01-22 08:25:22 -05:00
```title="When enabled, you need to provide additional information:"
2024-11-06 09:08:53 +01:00
CRYPTROOT_PASSPHRASE="MYSECRECTPASS" # Mandatory
2025-11-02 21:14:56 +02:00
CRYPTROOT_AUTOUNLOCK="yes" # Default: no. If set to yes you can omit CRYPTROOT_PASSPHRASE to do unattended unlocking
2024-11-06 09:08:53 +01:00
CRYPTROOT_SSH_UNLOCK="yes" # Default: yes
CRYPTROOT_SSH_UNLOCK_PORT="2222" # Default: 2022
2025-01-22 08:25:22 -05:00
CRYPTROOT_MAPPER=armbian-root` # Default: armbian-root
2024-11-06 09:08:53 +01:00
CRYPTROOT_PARAMETERS="custom cryptsetup options" # Default: --pbkdf pbkdf2
```
!!! tip "Tips and warnings"
- Private key can be placed in `$USERPATCHES_PATH/dropbear_authorized_keys` or they will be generated in `output/images/*.key` file
- If you want to do the encryption part from scratch, check out [this ](https://forum.armbian.com/topic/15618-full-root-filesystem%C2%A0encryption%C2%A0on-an-armbian-system-new-replaces-2017-tutorial-on-this-topic/ ) forum post.
- This function might not work well with all distributions.
- CRYPTROOT_MAPPER name might affect parallel image building
- CRYPTROOT_PARAMETERS may not contain `=` ; separate switches with spaces
2025-11-02 21:14:56 +02:00
- CRYPTROOT_AUTOUNLOCK stores encryption key in the /etc/rootfs.key
2024-11-06 09:08:53 +01:00
2024-11-06 14:19:05 +01:00
<hr>
### Advanced
2025-05-08 01:08:10 +03:00
**INCLUDE_HOME_DIR** ( `string` )
2024-11-06 14:19:05 +01:00
- `yes`
2025-01-22 08:25:22 -05:00
- `no` (default)
2024-11-06 14:19:05 +01:00
Include directories created inside /home in final image.
2025-05-08 01:08:10 +03:00
**ENABLE_EXTENSIONS** ( `comma-separated list` )
2024-11-06 14:19:05 +01:00
[Extensions ](/Developer-Guide_Extensions/ ) allows to extend the Armbian build system without overloading the core with specific functionality. Extensions, stored in folder `extensions` are called
!!! example "Build switch example"
2025-05-08 01:08:10 +03:00
```sh
./compile.sh \
build \
BOARD=uefi-x86 \
BRANCH=current \
BUILD_DESKTOP=no \
BUILD_MINIMAL=no \
KERNEL_CONFIGURE=no \
RELEASE=noble \
ENABLE_EXTENSIONS=mesa-vpu,nvidia \
```
2024-11-06 14:19:05 +01:00
2025-05-08 01:08:10 +03:00
**CONSOLE_AUTOLOGIN** ( `string` )
2024-11-06 14:19:05 +01:00
- `yes` (default)
- `no`
Automatically login as root for local consoles at first run. Disable if your security threat model requires.
2025-07-05 15:45:46 +03:00
**CPUTHREADS** ( `string` )
Allows the user to override CTHREADS if CPUTHREADS is defined and a valid positive integer.
If not defined, defaults to 150% the number of CPU Threads available to maximize compilation speed.
2025-05-08 01:08:10 +03:00
**USE_CCACHE** ( `string` )
- `yes`
- `no` (default)
2025-01-22 08:25:22 -05:00
Use a C compiler cache. Generally not needed due to git-worktree . Can slow performance on clean builds.
2025-05-08 01:08:10 +03:00
**PRIVATE_CCACHE** ( `string` )
- `yes`
- `no` (default)
2025-01-22 08:25:22 -05:00
Use `$DEST/ccache` as ccache home directory. Setting yes to this will enable CCACHE as well.
2024-11-06 14:19:05 +01:00
2025-02-09 15:52:01 +01:00
**KERNEL_BTF**
2025-05-08 01:08:10 +03:00
- `yes`
2025-02-09 15:52:01 +01:00
- `no`
Default is to auto-detect based on build host available RAM. If not enough RAM available, use =no to accept building without BTF debug information, or use =yes to force building with BTF even if low RAM. Family code can set this to opt-out of BTF. For more information on BTF see <https://docs.kernel.org/bpf/btf.html>
2025-05-08 01:08:10 +03:00
**ARTIFACT_IGNORE_CACHE** ( `string` )
2025-01-22 17:09:00 +01:00
- `yes`
- `no` (default)
Enforce building from source instead of using pre-built artifacts.
2025-05-08 01:08:10 +03:00
**SKIP_ARMBIAN_REPO** ( `string` )
2025-01-23 10:33:47 +01:00
- `yes`
- `no` (default)
2025-05-13 17:17:16 +08:00
Enforce building without Armbian repository. Suitable for developing new releases or making custom images that don't need Armbian repository.
2025-01-22 17:09:00 +01:00
2025-05-08 01:08:10 +03:00
**SECTOR_SIZE** ( `value` )
2025-04-19 13:33:10 +02:00
- `512` (default, for SD/EMMC/...)
- `4096` (for UFS, requires util-linux >2.41. Tested on Debian Trixie host)
Enforce sfdisk to align partition sector sizes.
2025-05-16 11:29:49 +00:00
**SHARE_LOG** ( `string` )
- `yes`
- `no` (default)
Automatically upload full build logs for debugging to one of Armbian's paste servers at the end of the build process.
Example:
```sh
./compile.sh SHARE_LOG=yes
```
2024-08-15 11:40:31 +03:00
# Build options below need to be retested and added above (COULD BE DEPRECATED)
2024-06-24 20:55:01 +02:00
2024-11-06 14:19:05 +01:00
:warning: DO NOT USE! Obsolete documentation, new documentation above is in progress.
2025-01-22 08:25:22 -05:00
- **KERNEL_KEEP_CONFIG** ( yes | no ):
- yes: use kernel config file from previous compilation for the same branch, device family, and version
- no: use default or user-provided config file
2020-08-02 10:44:42 +02:00
- **BUILD_DESKTOP** ( yes | no ):
2025-01-22 08:25:22 -05:00
- yes: build an image with a minimal desktop environment
- no: build image with console interface only
2023-06-25 00:03:53 -05:00
- **CREATE_PATCHES** ( yes | **no ** ) :warning: **Warning: ** This option is deprecated and may be removed in future releases - use the new `kernel-patch` / `uboot-patch` / `atf-patch` CLI commands instead.
2025-01-22 08:25:22 -05:00
- yes: prompt right before the compilation starts to make changes to the source code for both U-Boot and kernel. From these changes, patch files will be created and placed in the `output` directory. If you want these patches included in a normal run (without CREATE_PATCHES to say), these files must be copied to the appropriate directories. Also, see [user-provided patches ](https://docs.armbian.com/Developer-Guide_User-Configurations/#user-provided-patches ).
2023-05-05 12:30:26 +02:00
- **EXT=rkdevflash** to flash Rockchip images to eMMC either during image build or separately with flash CLI command ([only works bare Linux, not Docker ](https://github.com/armbian/build/pull/5058 ))
2024-11-06 09:08:53 +01:00
2020-08-02 11:54:06 +02:00
## Hidden options to minimize user input for build automation
2025-01-22 08:25:22 -05:00
2021-12-12 18:12:58 +01:00
- **ARMBIAN_CACHE_ROOTFS_PATH** ( `string` ): bind mount cache/rootfs to defined folder
- **ARMBIAN_CACHE_TOOLCHAIN_PATH** ( `string` ): bind mount cache/toolchain path to defined folder
2025-01-22 08:25:22 -05:00
2020-08-02 11:54:06 +02:00
## Hidden options for advanced users (default values are marked **bold**)
2024-11-06 14:19:05 +01:00
2024-08-15 11:40:31 +03:00
- **USERPATCHES_PATH** ( **userpatches/ ** ): set alternate path for the location of the `userpatches` folder
- **SKIP_EXTERNAL_TOOLCHAINS** ( yes | **no ** ): don't download and use Linaro toolchains, by default placed in cache/toolchain (and configurable with **ARMBIAN_CACHE_TOOLCHAIN_PATH ** )
2020-08-02 11:18:09 +02:00
- **PROGRESS_DISPLAY** ( none | **plain ** | dialog ): way to display output of verbose processes - compilation, packaging, debootstrap
2024-08-15 11:40:31 +03:00
- **PROGRESS_LOG_TO_FILE** ( yes | **no ** ): duplicate output, affected by the previous option, to log files `output/debug/*.log`
2022-01-05 02:57:39 -06:00
- **NO_APT_CACHER** ( **yes ** | no ): disable usage of APT cache. Default `yes` in containers, but can be overridden
2025-01-22 08:25:22 -05:00
- **DISABLE_IPV6** ( **true ** | false ): The distant future, the year Two-Thousand. Set false to allow Aria2c to use a modern ip protocol.
2022-02-13 18:13:41 +01:00
- **NO_HOST_RELEASE_CHECK** ( yes | **no ** ): overrides the check for a supported host system
2024-08-15 11:40:31 +03:00
- **USE_MAINLINE_GOOGLE_MIRROR** ( yes | **no ** ): use the `googlesource.com` mirror for downloading mainline kernel sources, which may be faster than `git.kernel.org` depending on your location
- **USE_GITHUB_UBOOT_MIRROR** ( yes | **no ** ): use an unofficial GitHub mirror for downloading mainline U-Boot sources, may be faster than `git.denx.de` depending on your location
2020-10-26 08:30:41 +02:00
- **SYNC_CLOCK** ( **yes ** | no ): sync system clock on builder before start image creation process
2024-08-15 11:40:31 +03:00
- **OFFLINE_WORK** ( yes | **no ** ): skip downloading and updating sources and time and host check. Set to "yes," and you can collect packages without accessing the internet
2020-08-02 11:18:09 +02:00
- **FORCE_USE_RAMDISK** ( yes | no ): overrides autodetect for using tmpfs in new debootstrap and image creation process
2024-08-15 11:40:31 +03:00
- **FIXED_IMAGE_SIZE** ( `integer` ): create an image file of this size (in megabytes) instead of minimal
2020-08-28 21:41:44 +03:00
- **BOOTSIZE** ( `integer` **96 ** ): set size (in megabytes) for separate /boot filesystem. Used if **ROOTFS_TYPE ** set to non-ext4
2024-08-15 11:40:31 +03:00
- **COMPRESS_OUTPUTIMAGE** (comma-separated list): create a compressed archive with an image file and GPG signature for redistribution
2025-01-22 08:25:22 -05:00
- sha: generate SHA256 hash for image
- gpg: sign image using gpg
- xz: compress image only using xz format
2025-12-19 13:00:56 +01:00
- **IMAGE_XZ_COMPRESSION_RATIO** ( 0 - **1 ** - 9 ) images compression levels when using xz compressor. Beware of memory consumption when going higher
- zstd: compress image only using zstd format
- **ZSTD_COMPRESSION_LEVEL** ( 1 - **9 ** - 19 ) images compression levels when using zstd compressor. Beware of memory consumption when going higher
2020-08-02 11:18:09 +02:00
- **SEVENZIP** ( yes | **no ** ): create .7z archive with extreme compression ratio instead of .zip
2020-08-11 07:23:40 +02:00
- **BUILD_KSRC** ( **yes ** | no ): create kernel source packages while building...
2025-01-22 08:25:22 -05:00
- **INSTALL_KSRC** ( yes | **no ** ): ... and pre-install these kernel sources on the image
- **FORCE_BOOTSCRIPT_UPDATE** ( yes | no ):
- yes: force bootscript to get updated during bsp package upgrade
2020-08-02 11:18:09 +02:00
- **NAMESERVER** ( `IPv4 address` ): the DNS resolver used inside the build chroot. Does not affect the final image. Default: `1.0.0.1`
2021-03-04 00:45:51 +08:00
- **DOWNLOAD_MIRROR** ( `china` | `bfsu` ): select download mirror for `toolchain` and `debian/ubuntu packages`
2025-01-22 08:25:22 -05:00
- `china` : use `mirrors.tuna.tsinghua.edu.cn` ; it will be very fast thanks to Tsinghua University
- `bfsu` : use `mirrors.bfsu.edu.cn` , the mirror of Beijing Foreign Studies University
- leave empty to use official source
2025-06-13 21:22:36 +05:30
- **LOCAL_MIRROR** (auto): override automated mirror selection, example 'LOCAL_MIRROR="<https://yourlocalmirror.com>"'
2025-10-23 13:20:36 -04:00
- **MANAGE_ACNG** ( `yes` | * * `no` ** | http URL ): configures use of `apt-cacher-ng` , a cache for debian/ubuntu/etc apt repositories.
- `yes` sets up an automatically managed `apt-cacher-ng` instance on the build host. This mode is incompatible with container builds.
- but you can provide a URL for a self-managed `apt-cacher-ng` instance, e.g. `"http://apt-cacher.example.com:3142"`
2021-03-04 00:45:51 +08:00
- **MAINLINE_MIRROR** ( `google` | `tuna` | `bfsu` ): select mainline mirror of `linux-stable.git`
2025-01-22 08:25:22 -05:00
- `google` : use the mirror provided by Google, the same as `USE_MAINLINE_GOOGLE_MIRROR=yes`
- `tuna` : use the mirror provided by Tsinghua University
- `bfsu` : use the mirror provided by Beijing Foreign Studies University, which is similar to `tuna`
- leave empty to use the official `git.kernel.org` , which may be very slow for mainland China users
2021-12-08 23:13:05 +08:00
- **UBOOT_MIRROR** ( `github` | `gitee` : select mainline mirror of `u-boot.git`
2025-01-22 08:25:22 -05:00
- `github` : use the mirror provided by github, the same as `USE_GITHUB_UBOOT_MIRROR=yes`
- `gitee` : use the mirror provided by Gitee, a Chinese git services
- leave empty to use the official `source.denx.de` , which may be very slow for mainland China users
2021-12-08 23:13:05 +08:00
- **GITHUB_MIRROR** ( `fastgit` | `gitclone` | `cnpmjs` ): select download mirror for GitHub hosted repository
2025-01-22 08:25:22 -05:00
- `fastgit` : use the mirror provided by fastgit.org
- `gitclone` : use the mirror provided by gitclone.com
- `cnpmjs` : use the mirror provided by cnpmjs.org
- leave empty to connect directly to GitHub, which may be very slow for mainland China users
2021-12-08 23:13:05 +08:00
- **REGIONAL_MIRROR** ( `china` ): select mirrors based on regional setting, will not overwrite explicitly specified mirror option
2025-01-22 08:25:22 -05:00
- `china` : MAINLINE_MIRROR=`tuna` , UBOOT_MIRROR=`gitee` , GITHUB_MIRROR=`fastgit` , DOWNLOAD_MIRROR=`china`
- leave empty to use default settings
2022-07-31 15:21:12 +02:00
- **ROOT_FS_CREATE_ONLY** ( yes | **no ** ): set to yes to force local cache creation
2020-08-02 11:18:09 +02:00
- **EXTRAWIFI** ( **yes ** | no ): include several drivers for [WiFi adapters ](https://github.com/armbian/build/blob/1914066729b7d0f4ae4463bba2491e3ec37fac84/lib/compilation-prepare.sh#L179-L507 )
2025-05-06 05:43:37 +02:00
- **DISABLE_KERNEL_PATCHES** ( yes | **no ** ): Disable all Armbian-specific kernel patches and build a vanilla kernel instead. Also disables `EXTRAWIFI`
2025-09-06 11:21:17 -04:00
- **DOCKER_NICE** ( `integer` , -20 to 19 ): automatically propagated from the initial `compile.sh` 's `nice` value.
2025-10-22 22:12:45 -04:00
- **LEGACY_DEBOOTSTRAP** ( yes | **no ** ): if yes, use `debootstrap` , else use `mmdebstrap`