xref: /openbmc/openbmc/poky/documentation/ref-manual/images.rst (revision c9537f57ab488bf5d90132917b0184e2527970a5)
1.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
2
3******
4Images
5******
6
7The OpenEmbedded build system provides several example images to satisfy
8different needs. When you issue the ``bitbake`` command you provide a
9"top-level" recipe that essentially begins the build for the type of
10image you want.
11
12.. note::
13
14   Building an image without GNU General Public License Version 3
15   (GPLv3), GNU Lesser General Public License Version 3 (LGPLv3), and
16   the GNU Affero General Public License Version 3 (AGPL-3.0) components
17   is only tested for core-image-minimal image. Furthermore, if you would like to
18   build an image and verify that it does not include GPLv3 and similarly licensed
19   components, you must make the following changes in the image recipe
20   file before using the BitBake command to build the image:
21
22       INCOMPATIBLE_LICENSE = "GPL-3.0* LGPL-3.0*"
23
24   Alternatively, you can adjust ``local.conf`` file, repeating and adjusting the line
25   for all images where the license restriction must apply:
26
27       INCOMPATIBLE_LICENSE:pn-your-image-name = "GPL-3.0* LGPL-3.0*"
28
29From within the ``poky`` Git repository, you can use the following
30command to display the list of directories within the :term:`Source Directory`
31that contain image recipe files::
32
33   $ ls meta*/recipes*/images/*.bb
34
35Here is a list of supported recipes:
36
37-  ``build-appliance-image``: An example virtual machine that contains
38   all the pieces required to run builds using the build system as well
39   as the build system itself. You can boot and run the image using
40   either the `VMware
41   Player <https://www.vmware.com/products/player/overview.html>`__ or
42   `VMware
43   Workstation <https://www.vmware.com/products/workstation/overview.html>`__.
44   For more information on this image, see the :yocto_home:`Build
45   Appliance </software-item/build-appliance>` page
46   on the Yocto Project website.
47
48-  ``core-image-base``: A console-only image that fully supports the
49   target device hardware.
50
51-  ``core-image-full-cmdline``: A console-only image with more
52   full-featured Linux system functionality installed.
53
54-  ``core-image-minimal``: A small image just capable of allowing a
55   device to boot.
56
57-  ``core-image-minimal-dev``: A ``core-image-minimal`` image suitable
58   for development work using the host. The image includes headers and
59   libraries you can use in a host development environment.
60
61-  ``core-image-minimal-initramfs``: A ``core-image-minimal`` image that
62   has the Minimal RAM-based Initial Root Filesystem (:term:`Initramfs`) as part
63   of the kernel, which allows the system to find the first "init"
64   program more efficiently. See the
65   :term:`PACKAGE_INSTALL` variable for
66   additional information helpful when working with :term:`Initramfs` images.
67
68-  ``core-image-minimal-mtdutils``: A ``core-image-minimal`` image that
69   has support for the Minimal MTD Utilities, which let the user
70   interact with the MTD subsystem in the kernel to perform operations
71   on flash devices.
72
73-  ``core-image-rt``: A ``core-image-minimal`` image plus a real-time
74   test suite and tools appropriate for real-time use.
75
76-  ``core-image-rt-sdk``: A ``core-image-rt`` image that includes
77   everything in the cross-toolchain. The image also includes
78   development headers and libraries to form a complete stand-alone SDK
79   and is suitable for development using the target.
80
81-  ``core-image-sato``: An image with Sato support, a mobile environment
82   and visual style that works well with mobile devices. The image
83   supports X11 with a Sato theme and applications such as a terminal,
84   editor, file manager, media player, and so forth.
85
86-  ``core-image-sato-dev``: A ``core-image-sato`` image suitable for
87   development using the host. The image includes libraries needed to
88   build applications on the device itself, testing and profiling tools,
89   and debug symbols. This image was formerly ``core-image-sdk``.
90
91-  ``core-image-sato-sdk``: A ``core-image-sato`` image that includes
92   everything in the cross-toolchain. The image also includes
93   development headers and libraries to form a complete standalone SDK
94   and is suitable for development using the target.
95
96-  ``core-image-testmaster``: A "controller" image designed to be used for
97   automated runtime testing. Provides a "known good" image that is
98   deployed to a separate partition so that you can boot into it and use
99   it to deploy a second image to be tested. You can find more
100   information about runtime testing in the
101   ":ref:`test-manual/runtime-testing:performing automated runtime testing`"
102   section in the Yocto Project Test Environment Manual.
103
104-  ``core-image-testmaster-initramfs``: A RAM-based Initial Root
105   Filesystem (:term:`Initramfs`) image tailored for use with the
106   ``core-image-testmaster`` image.
107
108-  ``core-image-weston``: A very basic Wayland image with a terminal.
109   This image provides the Wayland protocol libraries and the reference
110   Weston compositor. For more information, see the
111   ":ref:`dev-manual/wayland:using wayland and weston`"
112   section in the Yocto Project Development Tasks Manual.
113
114-  ``core-image-x11``: A very basic X11 image with a terminal.
115