Last edited 10 months ago

How to create your own image

1. Article purpose[edit | edit source]

The main goal of this article is to describe how to customize images to fit application requirements.
The idea is to add missing tools in the user file system.
Tools are related to kernel, network, audio, ui, ...

2. Prerequisites[edit | edit source]

The OpenSTLinux distribution delivery must be already installed.

3. Available ST images[edit | edit source]

3.1. OpenEmbedded images[edit | edit source]

The OpenEmbedded build system provides severals example images to satisfy different needs.
All details are explained {{DocSource | domain=Yocto Project | path=mega-manual/mega-manual.html#ref-images | text=Yocto Megamanual Reference Images}
Some existing images are located here: <path of OpenSTLinux distribution delivery>/openembedded-core/meta/recipes-*/images/*.bb

The core-image-base can be a good starting points and a source or inspiration for creating user's own images:

openembedded-core            
├── meta  
│   ├── classes
│       ├── core-image.bbclass
│   ├── recipes-core
│       ├── images
│           ├── core-image-base.bb
└── [...]


In addition OpenSTLinux Distribution provides even more images, still derived from OpenEmbedded, and that can be used as example and for demonstration.

Warning.png ST images are not optimized in term of size or features.

3.2. Official OpenSTLinux images[edit | edit source]

  • st-image-weston : OpenSTLinux weston image with basic Wayland support (if enable in distro)

This image is located here : <path of OpenSTLinux distribution delivery>/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bb

3.3. Others OpenSTLinux images[edit | edit source]

3.3.1. Supported images[edit | edit source]

  • st-image-core  : OpenSTLinux core image

This image is located here : <path of OpenSTLinux distribution delivery>/meta-st/meta-st-openstlinux/recipes-st/images/st-image-core.bb

meta-st-openstlinux            
├── recipes-st  
│   ├── images
│       ├── st-image-core.bb
│       ├── st-image.inc
│       ├── st-image-weston.bb
│   ├── packagegroups
│       ├── packagegroup-framework-tools.bb
└── [...]

3.3.2. Images proposed as example-only[edit | edit source]

  • st-example-image-qt : ST example of image based on QT framework (require 'openstlinux-eglfs' distro)
  • st-example-image-qtwayland : ST example of image based on QT framework (require 'openstlinux-weston' distro, only available for ecosystem release ≥ v2.1.0 More info.png )

More images are available here : <path of OpenSTLinux distribution delivery>/meta-st/meta-st-openstlinux/recipes-samples/images/

meta-st-openstlinux            
├── recipes-samples  
│   ├── images
│       ├── st-example-image-qt.bb
│       ├── st-example-image-qtwayland.bb
│       │ [...]
└── [...]

4. Customizing images[edit | edit source]

Several ways are explained and described here Yocto Megamanual Customizing Images

The way recommended and used by ST is to follow the method described in chapters Customizing Images Using Custom .bb Files and Customizing Images Using Custom Package Groups of Yocto Megamanual.