Prepare master for new framework integration
[AGL/meta-agl.git] / docs / profiles.md
1 # AGL Profiles
2
3 The AGL Profiles cover the different use-cases that the AGL platform serves.\
4 This ranges from minimal systems without display, telematic systems, HUD, IVI, ADAS and more.\
5 Common to all of them is the use of the AGL APIs (agl-service-*).
6
7 All systems have the 'core' profile in common.\
8 This small set of libraries and binaries is the essential set including the AGL APIs that every AGL system needs.\
9 All other profiles reuse the 'core' profile.
10
11 The other profiles and their dependencies are currently:
12
13 * agl-profile-core
14   * agl-profile-telematics
15   * agl-profile-hud
16   * agl-profile-graphical
17   * agl-profile-graphical-html5
18   * agl-profile-graphical-qt5
19   * agl-demo-platform
20
21 ## agl-profile-core
22
23 This profile contains the following images:
24
25 * agl-image-boot
26   * agl-image-minimal
27   * agl-image-minimal-crosssdk
28
29 ### agl-image-boot
30
31 This image is only meant to boot the target device and provide network, package-management and a shell.\
32 All other functionality needs to be installed at runtime through 'dnf' using the provided package feeds and package-groups (e.g. dnf install profile-graphical-qt5)
33
34 ### agl-image-minimal
35
36 This is the smallest image that includes all (non-graphical) AGL APIs.
37
38 ### agl-image-minimal-crosssdk
39
40 This is the SDK for systems without display including the AGL APIs.
41
42 ## agl-profile-telematics
43
44 N.N.
45
46 ## agl-profile-hud
47
48 N.N.
49
50 ## agl-profile-graphical
51
52 This profile contains a basic graphical system with wayland/weston.\
53 It is used as a base for the more targeted profiles:
54
55 * agl-profile-graphical-html5
56 * agl-profile-graphical-qt5
57
58 Part of this layer are the following images:
59
60 * agl-image-weston
61
62 ### agl-image-weston
63
64 Pure wayland + weston image but with all AGL service APIs.
65
66 ## agl-profile-graphical-html5
67
68 This profile contains all components to build a html5 / web-based system and should be used as a base layer for further projects.\
69 All AGL APIs are included.
70
71 ## agl-profile-graphical-qt5
72
73 This profile is used as base for all projects that build on qt5 like the agl-demo-platform.\
74 Part of this layer are the ffollowing images:
75
76 * agl-image-graphical-qt5
77 * agl-image-graphical-qt5-crosssdk\
78   (THIS IS THE SDK TARGET WE AIM TO USE FOR AGL-DEMO-PLATFORM IN THE END)
79
80 All AGL APIs are included.
81
82 ### agl-image-graphical-qt5
83
84 Image with wayland/weston and the qt5 packages installed.
85
86 ### agl-image-graphical-qt5-crosssdk
87
88 SDK based on agl-image-graphical-qt5 suitable for development under qt5.
89
90 ## agl-demo-platform
91
92 This layer builds on-top of agl-profile-graphical-qt5 and builds the full AGL demonstrator image.\
93 It hosts these images:
94
95 * agl-demo-platform
96 * agl-demo-platform-crosssdk
97 * agl-demo-platform-qa
98
99 TLDR:
100
101 ```tree
102 meta-agl/meta-agl-profile-core/recipes-platform
103 |-- images
104 |   |-- agl-image-boot.bb
105 |   |-- agl-image-boot.inc
106 |   |-- agl-image-minimal-crosssdk.bb
107 |   |-- agl-image-minimal-qa.bb
108 |   |-- agl-image-minimal.bb
109 |   `-- agl-image-minimal.inc
110 `-- packagegroups
111     |-- packagegroup-agl-core-boot.bb
112     |-- packagegroup-agl-core-connectivity.bb
113     |-- packagegroup-agl-core-multimedia.bb
114     |-- packagegroup-agl-core-navigation.bb
115     |-- packagegroup-agl-core-os-commonlibs.bb
116     |-- packagegroup-agl-core-security.bb
117     |-- packagegroup-agl-core-services.bb
118     |-- packagegroup-agl-image-boot.bb
119     `-- packagegroup-agl-image-minimal.bb
120
121     meta-agl/meta-agl-profile-graphical/recipes-platform
122 |-- images
123 |   |-- agl-image-weston.bb
124 |   `-- agl-image-weston.inc
125 `-- packagegroups
126     |-- packagegroup-agl-graphical-services.bb
127     `-- packagegroup-agl-image-weston.bb
128
129     meta-agl/meta-agl-profile-graphical-html5/recipes-platform
130 |-- images
131 |   |-- agl-demo-platform-html5-crosssdk.bb
132 |   |-- agl-demo-platform-html5.bb
133 |   `-- agl-demo-platform-html5.inc
134 `-- packagegroups
135     `-- packagegroup-agl-demo-platform-html5.bb
136
137     meta-agl/meta-agl-profile-graphical-qt5/recipes-platform
138 |-- images
139 |   |-- agl-image-graphical-qt5-crosssdk.bb
140 |   |-- agl-image-graphical-qt5.bb
141 |   `-- agl-image-graphical-qt5.inc
142 `-- packagegroups
143     |-- packagegroup-agl-demo-qt-examples.bb
144     |-- packagegroup-agl-profile-graphical-qt5.bb
145     `-- packagegroup-qt5-toolchain-target.bbappend
146 ```