Image files can be seen as a set of packages grouped for a purpose and configured in a controlled way. We can either create a new image, including an existing image, adding the needed packages, or overriding configurations, or we can create the image from scratch.
When an image mostly fits our needs and we need to make only minor adjustments to it, it is very convenient to reuse its code. This makes code maintenance easier, and highlights the functional differences. For example, if we want to include an application and remove an image feature from core-image-sato
, we can create an image at recipes-mine/images/my-image-sato.bb
with the following lines of code:
require recipes-sato/image/core-image-sato.bb IMAGE_FEATURES_remove = "splash" CORE_IMAGE_EXTRA_INSTALL += "myapp"
On the other hand, we sometimes want to create our image from scratch; we can facilitate our work using the core-image
class, as it provides a set of image features that can be used very easily, for example...