Yocto: Difference between revisions

Adds list of notable standard images
adds section about package groups
Line 9: Line 9:


=== Standard images ===
=== Standard images ===
Images are defined in recipe files. In order to separate them from package recipes, there is a convention to put image recipes into a folder named ''images''. Making use of this, we can list all images defined by all layers via
Images are recipes that ultimately inherit from '''meta/classes/image.bbclass''' and usually add ''packagegroup'' items to the global variable '''IMAGE_INSTALL'''.
 
Images are defined in recipe files with the file extension 'bb'. In order to separate them from package recipes, there is a convention to put image recipes into a folder named ''images''. Making use of this, we can list all images defined by all layers via
<pre class="terminal">
<pre class="terminal">
cd poky
cd poky
Line 33: Line 35:
|-
|-
|}
|}
<br />
== Package Groups ==
Package groups are recipes that inherit from '''meta/classes/packagegroup.bbclass''' and set the content of the global variable '''PACKAGES'''. Package groups are defined in recipe files with the file extension 'bb'.
<br />
<br />
Note that the ''packagegroup'' must be inherited before ''PACKAGES is defined.
<pre class="code">
inherit packagegroup
PACKAGES = '...'
</pre>
<br />


== Using devtool ==
== Using devtool ==


Use '''devtool''' to make changes to an existing recipe and automatically generate an append recipe from those changes.
Use '''devtool''' to make changes to an existing recipe and automatically generate an append recipe from those changes.

Revision as of 2022-11-06T13:58:09

Prerequisites

sudo apt install gcc g++ \
  python3-distutils python-is-python3


Images

Standard images

Images are recipes that ultimately inherit from meta/classes/image.bbclass and usually add packagegroup items to the global variable IMAGE_INSTALL.

Images are defined in recipe files with the file extension 'bb'. In order to separate them from package recipes, there is a convention to put image recipes into a folder named images. Making use of this, we can list all images defined by all layers via

cd poky
ls meta*/recipes*/images/*.bb


The following standard images are defined in the meta layer:

core-image-minimal small image that just boots the target device
core-image-minimal-dev core-image-minimal with headers and libraries allowing development work
core-image-minimal-initramfs core-image-minimal with kernel support for in-RAM filesystem
core-image-base console-only system fully supporting the target hardware
core-image-full-cmdline console-only image that includes many system tools
core-image-x11 image with basic X11 and a terminal


Package Groups

Package groups are recipes that inherit from meta/classes/packagegroup.bbclass and set the content of the global variable PACKAGES. Package groups are defined in recipe files with the file extension 'bb'.

Note that the packagegroup must be inherited before PACKAGES is defined.

inherit packagegroup

PACKAGES = '...'


Using devtool

Use devtool to make changes to an existing recipe and automatically generate an append recipe from those changes.