03134b011500889b60e2e1d5ebbda4065dd2850e
[AGL/documentation.git] / docs / 3_Developer_Guides / 6_AGL_Layers / 2_meta-agl.md
1 ---
2 title: meta-agl
3 ---
4
5 ## Introduction
6
7 The `meta-agl` layer provides the minimal set of software
8 to boot an AGL Distribution system.
9 You use this layer as the minimal core on which to build AGL profiles.
10
11 **NOTE:** The `meta-agl` layer does not include a reference UI.
12   The reference UI is included as part of the
13   [`meta-agl-demo`](3_meta-agl-demo.md) layer.
14   Furthermore, `meta-agl` does not include additional components, such
15   as security, which are part of the
16   `meta-agl-extra` layer.
17
18 ## Sub-Layers
19
20 The `meta-agl` layer itself contains many sub-layers and files.
21 Following is a "tree" look at the layer:
22
23 ```
24 .
25 ├── docs
26 ├── meta-agl
27 ├── meta-agl-bsp
28 ├── meta-agl-distro
29 ├── meta-agl-profile-cluster
30 ├── meta-agl-profile-cluster-qt5
31 ├── meta-agl-profile-core
32 ├── meta-agl-profile-graphical
33 ├── meta-agl-profile-graphical-html5
34 ├── meta-agl-profile-graphical-qt5
35 ├── meta-agl-profile-hud
36 ├── meta-agl-profile-telematics
37 ├── meta-app-framework
38 ├── meta-netboot
39 ├── meta-security
40 ├── README-AGL.md
41 ├── README.md
42 ├── scripts
43 ├── templates
44 ```
45
46 This list provides some overview information on the files and sub-layers
47 in `meta-agl`:
48
49 * `docs`: Contains files that support AGL documentation.
50 * `meta-agl`: Contains layer configuration for the `meta-agl` layer.
51 * `meta-agl-bsp`: Contains adaptations for recipes and required packages
52   to boot an AGL distribution on targeted hardware and emulation (i.e. QEMU).
53 * `meta-agl-distro`: Contains distro configuration and supporting scripts.
54 * `meta-agl-profile-cluster`: The middleware for the AGL cluster profile.
55   The set of packages required for AGL Cluster Distribution.
56   Profiles include support for Wayland images.
57 * `meta-agl-profile-cluster-qt5`: The middleware for the AGL Qt5-based cluster profile.
58   The set of packages required for AGL Qt5-based Cluster Distribution.
59   Profiles include support for Wayland images with Qt5.
60 * `meta-agl-profile-core`: Configuration and recipes for the AGL core profiles.
61 * `meta-agl-profile-graphical`: Configuration and recipes supporting graphical user
62   interfaces.
63 * `meta-agl-profile-graphical-html5`: Configuration and recipes supporting profiles
64   with HTML user interface support.
65 * `meta-agl-profile-graphical-qt5`: Configuration and recipes supporting profiles
66   with Qt5-based user interface support.
67 * `meta-agl-profile-hud`: Configuration and recipes supporting profiles with
68   Head-Up-Display (HUD) support.
69 * `meta-agl-profile-telematics`: Configuration and recipes supporting profiles with
70   telematics support.
71 * `meta-app-framework`: Configuration and recipes supporting the AGL Application
72   Framework.
73 * `meta-netboot`: Contains recipes and configuration adjustments to allow network
74   boot through network block device (NBD) since network file system (NFS) does not
75   support security labels.
76 * `meta-security`: Configuration and recipes supporting security applications.
77 * `scripts`: AGL development setup and support scripts.
78 * `templates`: Base, feature, and machine templates used in the AGL development
79   environment.
80
81 ## Packagegroups
82
83 This section describes the AGL
84 [packagegroup](https://yoctoproject.org/docs/3.1.2/dev-manual/dev-manual.html#usingpoky-extend-customimage-customtasks)
85 design:
86
87 * packagegroup-agl-image-minimal
88
89         packagegroup-agl-core-automotive.bb
90         packagegroup-agl-core-connectivity.bb
91         packagegroup-agl-core-graphics.bb
92         packagegroup-agl-core-kernel.bb
93         packagegroup-agl-core-multimedia.bb
94         packagegroup-agl-core-navi-lbs.bb
95         packagegroup-agl-core-os-commonlibs.bb
96         packagegroup-agl-core-security.bb
97         packagegroup-agl-core-speech-services.bb
98
99   The previous list of Packagegroups are used to create the `agl-image-minimal` image,
100   which is a small image just capable of allowing a device to boot.
101
102   Subsystem should maintain packagegroup-agl-core-[subsystem].bb which should
103   hold sufficient packages to build `agl-image-minimal`.
104
105 * packagegroup-agl-image-ivi
106
107         packagegroup-agl-ivi-automotive.bb
108         packagegroup-agl-ivi-connectivity.bb
109         packagegroup-agl-ivi-graphics.bb
110         packagegroup-agl-ivi-kernel.bb
111         packagegroup-agl-ivi-multimedia.bb
112         packagegroup-agl-ivi-navi-lbs.bb
113         packagegroup-agl-ivi-os-commonlibs.bb
114         packagegroup-agl-ivi-security.bb
115         packagegroup-agl-ivi-speech-services.bb
116
117   The previous list of Packagegroups are used to create the `agl-image-ivi`
118   image, which is a baseline image (i.e. Service Layer and Operating System
119   Layer defined in AGL Spec v1.0) for the AGL profiles.
120
121 * packagegroup-agl-test.bb
122
123   Additional tools used in QA tests (for agl-image*-qa).
124