When inheriting the mender-full or mender-full-ubi class in local.conf,
Mender provides a default set of features that covers a wide range of boards and
needs. However, sometimes it may be necessary to enable or disable certain
features depending on the needs of the particular build. Use
MENDER_FEATURES_ENABLE and MENDER_FEATURES_DISABLE variables to enable and
disable features provided by Mender.
To enable a feature, add this to your local.conf:
MENDER_FEATURES_ENABLE:append = " <FEATURE>"
To disable a feature, add this to your local.conf:
MENDER_FEATURES_DISABLE:append = " <FEATURE>"
Note that the space inside the string is important in both of the above examples!
Below is a list of the features that Mender provides, with descriptions. Please note the following markers:
internal: feature is meant for internal use by the Mender team only. The behaviour can be modified at any time.
experimental: feature is not undergoing regular QA.
mender-bios - Enables booting of traditional BIOS based systems. Normally
enabled together with mender-grub. Disabling this feature with mender-grub
enabled will assume the booting process uses the UEFI standard.mender-client-install - Enables a build that has Mender installed, with
configuration. Note that this does not include the default Mender partition
layout, use mender-image for that. Note that on
Yocto-5.0 "scarthgap" and later, you need to use mender-install instead.
mender-growfs-data - Enable dynamic resizing of the data filesystem through systemd-growfs
mender-grub - Enables integration with the GRUB bootloader.
mender-image - Enables a build that uses the Mender defined partition
layout.
mender-image-bios - Enables a build that provides a Mender partitioned image
for use with traditional BIOS based systems (.biosimg). Enabling this
feature requires enabling mender-image too.
mender-image-gpt - Enables a build that provides a Mender partitioned image
for use with BIOS GPT based systems (.biosimg). Enabling this feature
requires enabling mender-image too.
mender-image-sd - Enables a build that provides a Mender partitioned SD card
image (.sdimg). Enabling this feature requires enabling mender-image too.
mender-image-ubi - Enables a build that provides a Mender partitioned UBI
image (.ubimg). Enabling this feature requires enabling mender-image too.
mender-image-uefi - Enables a build that provides a Mender partitioned UEFI
image (.uefiimg). Enabling this feature requires enabling mender-image too.
mender-install - Enables a build that has Mender installed, with
configuration. Note that this does not include the default Mender partition
layout, use mender-image for that. Note that on
Yocto-4.0 "kirkstone" and older, you need to use mender-client-install
instead.
mender-partuuid - experimental - Enable usage of UUID as partition identifiers (GRUB only).
You must set the UUID's for all parts in your environment, e.g
# UUID's generated using the 'uuidgen -r' command
MENDER_BOOT_PART = "/dev/disk/by-partuuid/9553c78a-bed1-40fe-9333-f7409e0585e5"
MENDER_ROOTFS_PART_A = "/dev/disk/by-partuuid/cb8cc332-f5e3-4b53-a489-13d3a8dd5768"
MENDER_ROOTFS_PART_B = "/dev/disk/by-partuuid/708798f3-4e9d-4338-bb69-bc92e0b51efb"
MENDER_DATA_PART = "/dev/disk/by-partuuid/0965b52a-89bd-46c1-ac69-3b27fb6c2aae"
mender-partlabel - experimental - Use PARTLABEL to avoid hardcoded drive device path.
mender-systemd - Enables a Mender build that uses systemd. See also the
section about disabling Mender as a system
service.
mender-systemd-boot - experimental - Use Mender together with systemd-boot.
mender-efi-boot - internal - Enabled by GRUB/systemd-boot to extend UEFI overlay recipes.
mender-ubi - Enables Mender configuration files specifically for UBI images.
mender-uboot - Enables integration with the U-Boot bootloader.
mender-persist-systemd-machine-id - Enables setting up the systemd machine
ID to be persistent across OTA updates.
mender-testing-enabled - internal - Enable the testing/* layers and functionality.
mender-prepopulate-inactive-partition - Populate the inactive partition with the
same contents of the active one, primarily for testing purposes.
By default, no features are enabled, but it is common to include a top level
class in order to get some default features. Here is an example of how to enable
such a class in local.conf:
INHERIT += "mender-full"
The currently available classes are:
mender-full: Enables the most common features for Mender, which are:
mender-imagemender-installmender-systemdmender-image-uefimender-grubmender-growfs-datamender-full-ubi: Enables the most common features for UBI based Mender
installations, which are:
mender-imagemender-image-ubimender-installmender-systemdmender-ubimender-ubootmender-growfs-dataYocto releases prior to 2.6 (thud) used a different feature set by default.
Use the following command to inspect features enabled for your build:
bitbake -e core-image-minimal | grep '^DISTRO_FEATURES='
© 2025 Northern.tech AS