summaryrefslogtreecommitdiffstats
path: root/recipes-platform/images
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-platform/images')
-rw-r--r--recipes-platform/images/agl-cluster-demo-flutter-preconfigured-gateway.bb8
-rw-r--r--recipes-platform/images/agl-cluster-demo-flutter-preconfigured.bb19
-rw-r--r--recipes-platform/images/agl-cluster-demo-flutter.bb35
-rw-r--r--recipes-platform/images/agl-cluster-demo-qt-preconfigured.bb18
-rw-r--r--recipes-platform/images/agl-cluster-demo-qt.bb25
-rw-r--r--recipes-platform/images/agl-demo-container-guest-integration.inc18
-rw-r--r--recipes-platform/images/agl-demo-features.inc10
-rwxr-xr-xrecipes-platform/images/agl-demo-platform-crosssdk.bb81
-rw-r--r--recipes-platform/images/agl-demo-platform-qa.bb13
-rw-r--r--recipes-platform/images/agl-demo-platform.bb15
-rw-r--r--recipes-platform/images/agl-demo-platform.inc3
-rw-r--r--recipes-platform/images/agl-gateway-demo-preconfigured.bb10
-rw-r--r--recipes-platform/images/agl-gateway-demo.bb24
-rw-r--r--recipes-platform/images/agl-image-ivi-crosssdk.bb2
-rw-r--r--recipes-platform/images/agl-image-ivi-qa.bb14
-rw-r--r--recipes-platform/images/agl-image-ivi.bb17
-rw-r--r--recipes-platform/images/agl-image-ivi.inc3
-rw-r--r--recipes-platform/images/agl-ivi-crosssdk.inc24
-rw-r--r--recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb11
-rw-r--r--recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb7
-rw-r--r--recipes-platform/images/agl-ivi-demo-control-panel.bb29
-rw-r--r--recipes-platform/images/agl-ivi-demo-features.inc15
-rw-r--r--recipes-platform/images/agl-ivi-demo-flutter-preconfigured-gateway.bb14
-rw-r--r--recipes-platform/images/agl-ivi-demo-flutter-preconfigured.bb14
-rw-r--r--recipes-platform/images/agl-ivi-demo-flutter.bb14
-rw-r--r--recipes-platform/images/agl-ivi-demo-html5.bb (renamed from recipes-platform/images/agl-demo-platform-html5.bb)15
-rw-r--r--recipes-platform/images/agl-ivi-demo-qt-crosssdk.bb16
-rw-r--r--recipes-platform/images/agl-ivi-demo-qt-preconfigured.bb14
-rw-r--r--recipes-platform/images/agl-ivi-demo-qt.bb25
-rw-r--r--recipes-platform/images/agl-ivi-image-crosssdk.bb11
-rw-r--r--recipes-platform/images/agl-ivi-image-flutter.bb8
-rw-r--r--recipes-platform/images/agl-ivi-image.bb37
-rw-r--r--recipes-platform/images/agl-telematics-demo.bb12
33 files changed, 424 insertions, 157 deletions
diff --git a/recipes-platform/images/agl-cluster-demo-flutter-preconfigured-gateway.bb b/recipes-platform/images/agl-cluster-demo-flutter-preconfigured-gateway.bb
new file mode 100644
index 00000000..767d339c
--- /dev/null
+++ b/recipes-platform/images/agl-cluster-demo-flutter-preconfigured-gateway.bb
@@ -0,0 +1,8 @@
+require agl-cluster-demo-flutter-preconfigured.bb
+
+SUMMARY = "AGL Cluster preconfigured gateway demo Flutter image"
+
+# Cluster application configuration needs to be replaced for
+# the full demo to handle different databroker configuration.
+FLUTTER_CLUSTER_DASHBOARD_CONF = "flutter-cluster-dashboard-conf-gateway-demo"
+
diff --git a/recipes-platform/images/agl-cluster-demo-flutter-preconfigured.bb b/recipes-platform/images/agl-cluster-demo-flutter-preconfigured.bb
new file mode 100644
index 00000000..35160075
--- /dev/null
+++ b/recipes-platform/images/agl-cluster-demo-flutter-preconfigured.bb
@@ -0,0 +1,19 @@
+require agl-cluster-demo-flutter.bb
+
+SUMMARY = "AGL Cluster preconfigured demo Flutter image"
+
+# We do not want a local databroker instance
+IMAGE_FEATURES:remove = "kuksa-val-databroker"
+
+# The cluster screen is rotated in the full demo setup, so the
+# default compositor configuration needs to be replaced.
+IMAGE_INSTALL:remove = "weston-ini-conf-landscape"
+
+# Cluster application configuration needs to be replaced for
+# the full demo to handle different databroker configuration.
+FLUTTER_CLUSTER_DASHBOARD_CONF = "flutter-cluster-dashboard-conf-demo"
+
+IMAGE_INSTALL += " \
+ psplash-inverted-config \
+ weston-ini-conf-landscape-inverted \
+"
diff --git a/recipes-platform/images/agl-cluster-demo-flutter.bb b/recipes-platform/images/agl-cluster-demo-flutter.bb
new file mode 100644
index 00000000..dfa25620
--- /dev/null
+++ b/recipes-platform/images/agl-cluster-demo-flutter.bb
@@ -0,0 +1,35 @@
+SUMMARY = "Baseline Flutter Image for Release"
+
+LICENSE = "MIT"
+
+require recipes-platform/images/agl-image-compositor.bb
+require agl-demo-features.inc
+
+IMAGE_FEATURES += "splash package-management ssh-server-openssh"
+
+IMAGE_FEATURES += " \
+ kuksa-val-databroker-client \
+ kuksa-val-databroker \
+"
+
+# Generic
+IMAGE_INSTALL += "\
+ weston-ini-conf-landscape \
+ \
+ packagegroup-agl-networking \
+ cluster-receiver \
+ \
+ simple-can-simulator \
+"
+
+# Flutter
+FLUTTER_CLUSTER_DASHBOARD_CONF = "flutter-cluster-dashboard-conf"
+
+IMAGE_INSTALL += "\
+ flutter-auto \
+ flutter-cluster-dashboard \
+ ${FLUTTER_CLUSTER_DASHBOARD_CONF} \
+ cluster-demo-config-flutter \
+"
+
+CLANGSDK = "1"
diff --git a/recipes-platform/images/agl-cluster-demo-qt-preconfigured.bb b/recipes-platform/images/agl-cluster-demo-qt-preconfigured.bb
new file mode 100644
index 00000000..c993406c
--- /dev/null
+++ b/recipes-platform/images/agl-cluster-demo-qt-preconfigured.bb
@@ -0,0 +1,18 @@
+require agl-cluster-demo-qt.bb
+
+SUMMARY = "AGL Cluster preconfigured demo Qt image"
+
+# We do not want a local databroker instance
+IMAGE_FEATURES:remove = "kuksa-val-databroker"
+
+# We do not want weston-terminal visible
+IMAGE_INSTALL:remove = "weston-terminal-conf"
+
+# The cluster screen is rotated in the full demo setup, so the
+# default compositor configuration needs to be replaced.
+IMAGE_INSTALL:remove = "weston-ini-conf-landscape"
+
+IMAGE_INSTALL += " \
+ cluster-demo-config \
+ weston-ini-conf-landscape-inverted \
+"
diff --git a/recipes-platform/images/agl-cluster-demo-qt.bb b/recipes-platform/images/agl-cluster-demo-qt.bb
new file mode 100644
index 00000000..03dfb36c
--- /dev/null
+++ b/recipes-platform/images/agl-cluster-demo-qt.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "AGL Cluster Demo Platform image currently contains a simple cluster interface."
+
+LICENSE = "MIT"
+
+require recipes-platform/images/agl-image-compositor.bb
+require agl-demo-features.inc
+
+IMAGE_FEATURES += "splash package-management ssh-server-openssh"
+
+inherit features_check
+
+REQUIRED_DISTRO_FEATURES = "wayland"
+
+IMAGE_FEATURES += " \
+ kuksa-val-databroker-client \
+ kuksa-val-databroker \
+"
+
+# add packages for cluster demo platform (include demo apps) here
+IMAGE_INSTALL += " \
+ packagegroup-agl-cluster-demo-platform \
+ kuksa-certificates-agl-ca \
+ weston-ini-conf-landscape \
+ ${@bb.utils.contains("AGL_FEATURES", "AGLCI", "qemu-set-display", "", d)} \
+"
diff --git a/recipes-platform/images/agl-demo-container-guest-integration.inc b/recipes-platform/images/agl-demo-container-guest-integration.inc
new file mode 100644
index 00000000..f835761f
--- /dev/null
+++ b/recipes-platform/images/agl-demo-container-guest-integration.inc
@@ -0,0 +1,18 @@
+IMAGE_CONTAINER_GUEST_APPEND = " base-files-guest-fstab"
+IMAGE_INSTALL:append = " \
+ ${@bb.utils.contains('AGL_FEATURES', 'agl-container-guest-demo', '${IMAGE_CONTAINER_GUEST_APPEND}', '', d)} \
+"
+
+fixupfstab_for_container_guest_images() {
+ rm -f ${IMAGE_ROOTFS}/${sysconfdir}/fstab
+ ln -s fstab-guest ${IMAGE_ROOTFS}/${sysconfdir}/fstab
+}
+
+rmboot_for_container_guest_images() {
+ rm -rf ${IMAGE_ROOTFS}/boot
+}
+
+ROOTFS_POSTPROCESS_COMMAND += " \
+ ${@bb.utils.contains('AGL_FEATURES', 'agl-container-guest-demo', 'fixupfstab_for_container_guest_images;', '', d)} \
+ ${@bb.utils.contains('AGL_FEATURES', 'agl-container-guest-demo', 'rmboot_for_container_guest_images;', '', d)} \
+"
diff --git a/recipes-platform/images/agl-demo-features.inc b/recipes-platform/images/agl-demo-features.inc
new file mode 100644
index 00000000..a8112c83
--- /dev/null
+++ b/recipes-platform/images/agl-demo-features.inc
@@ -0,0 +1,10 @@
+FEATURE_PACKAGES_can-test-tools = " \
+ can-utils \
+ cannelloni \
+"
+
+FEATURE_PACKAGES_kuksa-val-databroker-client = " \
+ kuksa-certificates-agl-ca \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'packagegroup-agl-kuksa-val-databroker-devel' , '', d)} \
+"
+FEATURE_PACKAGES_kuksa-val-databroker = "packagegroup-agl-kuksa-val-databroker"
diff --git a/recipes-platform/images/agl-demo-platform-crosssdk.bb b/recipes-platform/images/agl-demo-platform-crosssdk.bb
deleted file mode 100755
index a814b694..00000000
--- a/recipes-platform/images/agl-demo-platform-crosssdk.bb
+++ /dev/null
@@ -1,81 +0,0 @@
-SUMMARY = "Cross SDK of Full AGL Distribution for IVI profile"
-
-DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \
-It includes the full meta-toolchain, plus developement headers and libraries \
-to form a standalone cross SDK."
-
-require agl-demo-platform.bb
-
-LICENSE = "MIT"
-
-IMAGE_FEATURES_append = " dev-pkgs"
-IMAGE_INSTALL_append = " kernel-dev kernel-devsrc"
-
-inherit populate_sdk populate_sdk_qt5
-
-# Task do_populate_sdk and do_rootfs can't be exec simultaneously.
-# Both exec "createrepo" on the same directory, and so one of them
-# can failed (randomly).
-addtask do_populate_sdk after do_rootfs
-
-# native tools to support Chromium build inside SDK (SPEC-942)
-TOOLCHAIN_HOST_TASK += " \
- nativesdk-gn \
- nativesdk-ninja \
- nativesdk-gperf \
- nativesdk-zlib \
- nativesdk-xz \
- nativesdk-nspr-dev \
- nativesdk-nss-dev \
- nativesdk-lua \
- "
-
-# required dependencies for Chromium build inside SDK (SPEC-942)
-TOOLCHAIN_TARGET_TASK += " \
- pciutils-dev \
- ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio-dev' , '', d)} \
- cairo-dev \
- nss-dev \
- cups-dev \
- gconf-dev \
- libexif-dev \
- pango-dev \
- libdrm-dev \
- lua-dev \
- lua-staticdev \
- libafb-helpers-staticdev \
- libafb-helpers-qt-staticdev \
- libappcontroller-staticdev \
- ${@bb.utils.contains('LICENSE_FLAGS_WHITELIST', 'commercial', 'ffmpeg-dev', '', d)} \
- "
-
-# Add wayland-scanner to SDK (SPEC-945)
-# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup
-# wayland-scanner is in nativesdk-wayland-dev !
-# option: add also nativesdk-qtwayland-tools
-TOOLCHAIN_HOST_TASK_append = " nativesdk-wayland nativesdk-wayland-dev"
-
-TOOLCHAIN_HOST_TASK_append = " nativesdk-perl-modules "
-
-# Add mosquitto to support building the telematics demo application.
-# This is currently required for CI, as it uses agl-demo-platform-crosssdk
-# to build everything. An agenda item has been tabled for the May 2019 F2F
-# meeting to discuss the path forward (separate versus superset SDKs), this
-# should be reviewed after that.
-TOOLCHAIN_TARGET_TASK += "mosquitto-dev"
-
-# Add nlohmann-json to support building the speech services.
-# Required until either the agl-speech-framework feature is added as a
-# dependency of agl-demo, or the speech services are migrated into the
-# core profile.
-TOOLCHAIN_TARGET_TASK += "nlohmann-json-dev"
-
-# Add libstdc++-staticdev to support building agl-service-voice-high or
-# other users of the C++17 filesystem standard library feature.
-# Can be removed upon upgrade to gcc 9.x, as it will no longer be necessary.
-TOOLCHAIN_TARGET_TASK += "libstdc++-staticdev"
-
-# Add gcc-sanitizers to support building applications using the SDK with
-# AddressSanitizer support to detect use-after-frees along with other
-# memory issue.
-TOOLCHAIN_TARGET_TASK += "gcc-sanitizers"
diff --git a/recipes-platform/images/agl-demo-platform-qa.bb b/recipes-platform/images/agl-demo-platform-qa.bb
deleted file mode 100644
index fa3f717d..00000000
--- a/recipes-platform/images/agl-demo-platform-qa.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-SUMMARY = "A full set of AGL Distribution for testing as Quality Assurance"
-
-DESCRIPTION = "A full set of AGL Distribution. This image also has additional \
-packages (e.g. commandline tools) for Quality Assurance(QA)."
-
-LICENSE = "MIT"
-
-require agl-demo-platform.bb
-
-IMAGE_INSTALL_append = " \
- packagegroup-ivi-common-test \
- packagegroup-agl-demo-platform-qa \
- "
diff --git a/recipes-platform/images/agl-demo-platform.bb b/recipes-platform/images/agl-demo-platform.bb
deleted file mode 100644
index 297cb706..00000000
--- a/recipes-platform/images/agl-demo-platform.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "AGL Demo Platform image currently contains a simple HMI and \
-demos."
-
-require agl-demo-platform.inc
-
-LICENSE = "MIT"
-
-IMAGE_FEATURES_append = " \
- "
-
-# add packages for demo platform (include demo apps) here
-IMAGE_INSTALL_append = " \
- packagegroup-agl-demo-platform \
- "
-
diff --git a/recipes-platform/images/agl-demo-platform.inc b/recipes-platform/images/agl-demo-platform.inc
deleted file mode 100644
index 203fcc07..00000000
--- a/recipes-platform/images/agl-demo-platform.inc
+++ /dev/null
@@ -1,3 +0,0 @@
-# Base image
-require recipes-platform/images/agl-image-ivi.inc
-
diff --git a/recipes-platform/images/agl-gateway-demo-preconfigured.bb b/recipes-platform/images/agl-gateway-demo-preconfigured.bb
new file mode 100644
index 00000000..4a9cf0b2
--- /dev/null
+++ b/recipes-platform/images/agl-gateway-demo-preconfigured.bb
@@ -0,0 +1,10 @@
+require agl-gateway-demo.bb
+
+SUMMARY = "AGL gateway preconfigured demo image"
+
+# Second CAN interface will be connected to the demo setup
+# steering wheel & HVAC in the full demo.
+IMAGE_INSTALL += " \
+ kuksa-dbc-feeder-conf-gw-hardware \
+ vss-agl-gw-hardware \
+"
diff --git a/recipes-platform/images/agl-gateway-demo.bb b/recipes-platform/images/agl-gateway-demo.bb
new file mode 100644
index 00000000..1e800c54
--- /dev/null
+++ b/recipes-platform/images/agl-gateway-demo.bb
@@ -0,0 +1,24 @@
+SUMMARY = "AGL gateway demo image"
+
+LICENSE = "MIT"
+
+require recipes-platform/images/agl-image-minimal.bb
+require agl-demo-features.inc
+
+IMAGE_FEATURES += " \
+ kuksa-val-databroker \
+ ssh-server-openssh \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'can-test-tools' , '', d)} \
+"
+
+AGL_DEVEL_INSTALL = " \
+ packagegroup-agl-kuksa-val-databroker-devel \
+ tcpdump \
+"
+
+IMAGE_INSTALL += " \
+ agl-vss-proxy \
+ kuksa-dbc-feeder-conf-gw-control-panel \
+ vss-agl-gw-control-panel \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '${AGL_DEVEL_INSTALL}', '', d)} \
+"
diff --git a/recipes-platform/images/agl-image-ivi-crosssdk.bb b/recipes-platform/images/agl-image-ivi-crosssdk.bb
deleted file mode 100644
index 93537feb..00000000
--- a/recipes-platform/images/agl-image-ivi-crosssdk.bb
+++ /dev/null
@@ -1,2 +0,0 @@
-# just for backward compatibility
-require recipes-platform/images/agl-image-minimal-crosssdk.bb
diff --git a/recipes-platform/images/agl-image-ivi-qa.bb b/recipes-platform/images/agl-image-ivi-qa.bb
deleted file mode 100644
index 01743945..00000000
--- a/recipes-platform/images/agl-image-ivi-qa.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SUMMARY = "A basic system of AGL distribution of IVI profile for Quality Assurance(QA)"
-
-DESCRIPTION = "A basic set of AGL Distribution. This image also has additional \
-packages (e.g. commandline tools) for Quality Assurance(QA)."
-
-require agl-image-ivi.bb
-
-LICENSE = "MIT"
-
-IMAGE_INSTALL_append = " \
- packagegroup-agl-test \
- packagegroup-ivi-common-test \
- "
-
diff --git a/recipes-platform/images/agl-image-ivi.bb b/recipes-platform/images/agl-image-ivi.bb
deleted file mode 100644
index dd4f89b1..00000000
--- a/recipes-platform/images/agl-image-ivi.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "A basic system of AGL distribution of IVI profile"
-
-DESCRIPTION = "Basic image for baseline of AGL Distribution for IVI profile."
-
-require agl-image-ivi.inc
-
-LICENSE = "MIT"
-
-IMAGE_INSTALL_append = "\
- packagegroup-agl-image-ivi \
- "
-
-DISTRO_FEATURES_append = " agl-core-image-profile"
-
-IMAGE_INSTALL += "\
- agl-desktop-config \
- "
diff --git a/recipes-platform/images/agl-image-ivi.inc b/recipes-platform/images/agl-image-ivi.inc
deleted file mode 100644
index 610d4e46..00000000
--- a/recipes-platform/images/agl-image-ivi.inc
+++ /dev/null
@@ -1,3 +0,0 @@
-require recipes-platform/images/agl-image-minimal.inc
-
-IMAGE_FEATURES += "splash package-management ssh-server-dropbear"
diff --git a/recipes-platform/images/agl-ivi-crosssdk.inc b/recipes-platform/images/agl-ivi-crosssdk.inc
new file mode 100644
index 00000000..f9f99d8d
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-crosssdk.inc
@@ -0,0 +1,24 @@
+#
+# Common IVI SDK configuration
+#
+# Only host tool additions should done here
+#
+
+# Add wayland-scanner to SDK (SPEC-945)
+# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup
+# wayland-scanner is in nativesdk-wayland-dev !
+# option: add also nativesdk-qtwayland-tools
+TOOLCHAIN_HOST_TASK += "nativesdk-wayland nativesdk-wayland-dev"
+
+TOOLCHAIN_HOST_TASK += "nativesdk-perl-modules"
+
+# add grpc for building natively for grpc_cpp_plugin
+TOOLCHAIN_HOST_TASK += "nativesdk-grpc nativesdk-grpc-dev"
+
+# Add gcc-sanitizers to support building applications using the SDK with
+# AddressSanitizer support to detect use-after-frees along with other
+# memory issue.
+TOOLCHAIN_SANITIZERS_TASKS = "gcc-sanitizers"
+# gcc-sanitizers is currently (scarthgap) not supported on RISC-V
+TOOLCHAIN_SANITIZERS_TASKS:riscv64 = ""
+TOOLCHAIN_TARGET_TASK += "${TOOLCHAIN_SANITIZERS_TASKS}"
diff --git a/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb
new file mode 100644
index 00000000..19575a8e
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured-gateway.bb
@@ -0,0 +1,11 @@
+require agl-ivi-demo-control-panel.bb
+
+SUMMARY = "AGL gateway demo control panel image"
+
+IMAGE_FEATURES += "kuksa-val-databroker"
+
+IMAGE_INSTALL += " \
+ agl-demo-control-panel-conf-gateway-demo \
+ vss-agl-control-panel \
+ kuksa-dbc-feeder-conf-control-panel \
+"
diff --git a/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb
new file mode 100644
index 00000000..1107b9c7
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-control-panel-preconfigured.bb
@@ -0,0 +1,7 @@
+require agl-ivi-demo-control-panel.bb
+
+SUMMARY = "AGL full demo control panel image"
+
+IMAGE_INSTALL += " \
+ agl-demo-control-panel-conf-demo \
+"
diff --git a/recipes-platform/images/agl-ivi-demo-control-panel.bb b/recipes-platform/images/agl-ivi-demo-control-panel.bb
new file mode 100644
index 00000000..7524ada5
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-control-panel.bb
@@ -0,0 +1,29 @@
+require recipes-platform/images/agl-image-weston.bb
+
+SUMMARY = "AGL demo control panel image"
+
+require agl-demo-features.inc
+
+IMAGE_FEATURES += "splash package-management ssh-server-openssh"
+
+# NOTE: The client key and certificate in kuksa-certificates-agl-client
+# seem required by kuksa-client at the moment even though client
+# certification has been deprecated upstream, this needs further
+# investigation so it can be dropped from the image.
+#
+IMAGE_KUKSA_PACKAGES = " \
+ kuksa-client \
+ kuksa-certificates-agl-ca \
+ kuksa-certificates-agl-client \
+"
+
+IMAGE_INSTALL += "\
+ packagegroup-agl-networking \
+ weston-ini-conf-landscape \
+ weston-agl-driver-conf \
+ ${IMAGE_KUKSA_PACKAGES} \
+ agl-demo-control-panel \
+ qtwayland \
+ qtwayland-plugins \
+ qtwayland-qmlplugins \
+"
diff --git a/recipes-platform/images/agl-ivi-demo-features.inc b/recipes-platform/images/agl-ivi-demo-features.inc
new file mode 100644
index 00000000..a63e2dfe
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-features.inc
@@ -0,0 +1,15 @@
+require agl-demo-features.inc
+
+TBTNAVI_CONF = "tbtnavi-conf"
+
+FEATURE_PACKAGES_agl-demo-cluster-support = " \
+ tbtnavi \
+ ${TBTNAVI_CONF} \
+ kuksa-databroker-agl-demo-cluster \
+"
+
+IMAGE_FEATURES += " \
+ kuksa-val-databroker \
+ kuksa-val-databroker-client \
+ ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "can-test-tools" , "", d)} \
+"
diff --git a/recipes-platform/images/agl-ivi-demo-flutter-preconfigured-gateway.bb b/recipes-platform/images/agl-ivi-demo-flutter-preconfigured-gateway.bb
new file mode 100644
index 00000000..1bbd483b
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-flutter-preconfigured-gateway.bb
@@ -0,0 +1,14 @@
+require agl-ivi-demo-flutter-preconfigured.bb
+
+SUMMARY = "AGL IVI preconfigured gateway demo Flutter image"
+
+# We do not want a local databroker instance
+IMAGE_FEATURES:remove = "kuksa-val-databroker"
+
+FLUTTER_ICS_HOMESCREEN_CONF = "flutter-ics-homescreen-conf-gateway-demo"
+ONDEMANDNAVI_CONF = "ondemandnavi-conf-gateway-demo"
+
+IMAGE_INSTALL += " \
+ agl-service-hvac-conf-gateway-demo \
+ agl-service-audiomixer-conf-gateway-demo \
+" \ No newline at end of file
diff --git a/recipes-platform/images/agl-ivi-demo-flutter-preconfigured.bb b/recipes-platform/images/agl-ivi-demo-flutter-preconfigured.bb
new file mode 100644
index 00000000..7d76f4c7
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-flutter-preconfigured.bb
@@ -0,0 +1,14 @@
+require agl-ivi-demo-flutter.bb
+
+SUMMARY = "AGL IVI preconfigured demo Flutter image"
+
+IMAGE_FEATURES += "agl-demo-cluster-support"
+
+# We do not want weston-terminal visible
+IMAGE_INSTALL:remove = "weston-terminal-conf"
+
+IMAGE_INSTALL += " \
+ weston-ini-conf-remoting \
+ demo-i2c-udev-conf \
+ simple-can-simulator \
+"
diff --git a/recipes-platform/images/agl-ivi-demo-flutter.bb b/recipes-platform/images/agl-ivi-demo-flutter.bb
new file mode 100644
index 00000000..5753d58a
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-flutter.bb
@@ -0,0 +1,14 @@
+require agl-ivi-image-flutter.bb
+
+SUMMARY = "AGL IVI demo Flutter image"
+
+FLUTTER_ICS_HOMESCREEN_CONF = "flutter-ics-homescreen-conf"
+ONDEMANDNAVI_CONF = "ondemandnavi-conf"
+
+AGL_APPS_INSTALL += " \
+ flutter-ics-homescreen \
+ ${FLUTTER_ICS_HOMESCREEN_CONF} \
+ camera-gstreamer \
+ ondemandnavi \
+ ${ONDEMANDNAVI_CONF} \
+"
diff --git a/recipes-platform/images/agl-demo-platform-html5.bb b/recipes-platform/images/agl-ivi-demo-html5.bb
index 2d3490fd..1141efc2 100644
--- a/recipes-platform/images/agl-demo-platform-html5.bb
+++ b/recipes-platform/images/agl-ivi-demo-html5.bb
@@ -1,14 +1,11 @@
-SUMMARY = "DEMO platform of AGL HTML5 profile"
-DESCRIPTION = "Contains the web runtime and sample web apps"
-
-require agl-demo-platform.inc
+require agl-ivi-image.bb
-LICENSE = "MIT"
+SUMMARY = "AGL IVI demo HTML5 image"
+DESCRIPTION = "Contains the web runtime and sample web apps"
-IMAGE_FEATURES_append = " \
- "
+CLANGSDK = "1"
# add packages for demo platform (include demo apps) here
-IMAGE_INSTALL_append = " \
+IMAGE_INSTALL += " \
packagegroup-agl-demo-platform-html5 \
- "
+"
diff --git a/recipes-platform/images/agl-ivi-demo-qt-crosssdk.bb b/recipes-platform/images/agl-ivi-demo-qt-crosssdk.bb
new file mode 100644
index 00000000..d5a98b36
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-qt-crosssdk.bb
@@ -0,0 +1,16 @@
+require agl-ivi-demo-qt.bb
+
+SUMMARY = "Cross SDK of AGL IVI demo"
+
+DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \
+It includes the full toolchain, plus development headers and libraries \
+for everything in the demo platform to form a standalone cross SDK."
+
+inherit agl-crosssdk
+
+require agl-ivi-crosssdk.inc
+
+inherit populate_sdk_qt5
+
+# Add qtwaylandscanner to the SDK
+TOOLCHAIN_HOST_TASK += "nativesdk-qtwayland-tools"
diff --git a/recipes-platform/images/agl-ivi-demo-qt-preconfigured.bb b/recipes-platform/images/agl-ivi-demo-qt-preconfigured.bb
new file mode 100644
index 00000000..fa1313e8
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-qt-preconfigured.bb
@@ -0,0 +1,14 @@
+require agl-ivi-demo-qt.bb
+
+SUMMARY = "AGL IVI preconfigured demo Qt image"
+
+IMAGE_FEATURES += "agl-demo-cluster-support"
+
+# We do not want weston-terminal visible
+IMAGE_INSTALL:remove = "weston-terminal-conf"
+
+IMAGE_INSTALL += " \
+ weston-ini-conf-remoting \
+ demo-i2c-udev-conf \
+ simple-can-simulator \
+" \ No newline at end of file
diff --git a/recipes-platform/images/agl-ivi-demo-qt.bb b/recipes-platform/images/agl-ivi-demo-qt.bb
new file mode 100644
index 00000000..8fe988d0
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-demo-qt.bb
@@ -0,0 +1,25 @@
+require agl-ivi-image.bb
+
+SUMMARY = "AGL IVI demo Qt image"
+
+ONDEMANDNAVI_CONF = "ondemandnavi-conf"
+
+AGL_APPS_INSTALL += " \
+ dashboard \
+ hvac \
+ ondemandnavi \
+ ${ONDEMANDNAVI_CONF} \
+ settings \
+ mediaplayer \
+ messaging \
+ phone \
+ radio \
+ window-management-client-grpc \
+ camera-gstreamer \
+"
+
+IMAGE_INSTALL += " \
+ packagegroup-agl-demo-platform \
+ weston-terminal-conf \
+"
+
diff --git a/recipes-platform/images/agl-ivi-image-crosssdk.bb b/recipes-platform/images/agl-ivi-image-crosssdk.bb
new file mode 100644
index 00000000..74b00602
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-image-crosssdk.bb
@@ -0,0 +1,11 @@
+require agl-ivi-image.bb
+
+SUMMARY = "Cross SDK of minimal AGL Distribution for IVI profile"
+
+DESCRIPTION = "SDK image for minimal AGL Distribution for IVI profile. \
+It includes the full toolchain, plus development headers and libraries \
+to form a standalone cross SDK."
+
+inherit agl-crosssdk
+
+require agl-ivi-crosssdk.inc
diff --git a/recipes-platform/images/agl-ivi-image-flutter.bb b/recipes-platform/images/agl-ivi-image-flutter.bb
new file mode 100644
index 00000000..0c227f0e
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-image-flutter.bb
@@ -0,0 +1,8 @@
+require agl-ivi-image.bb
+
+SUMMARY = "AGL IVI demo base Flutter image"
+
+IMAGE_INSTALL += " \
+ packagegroup-agl-demo-platform-flutter \
+ weston-terminal-conf \
+"
diff --git a/recipes-platform/images/agl-ivi-image.bb b/recipes-platform/images/agl-ivi-image.bb
new file mode 100644
index 00000000..3783db93
--- /dev/null
+++ b/recipes-platform/images/agl-ivi-image.bb
@@ -0,0 +1,37 @@
+SUMMARY = "AGL IVI demo base image"
+LICENSE = "MIT"
+
+require recipes-platform/images/agl-image-compositor.bb
+
+require agl-ivi-demo-features.inc
+require agl-demo-container-guest-integration.inc
+
+IMAGE_FEATURES += "splash package-management ssh-server-openssh"
+
+AGL_DEVEL_INSTALL += "\
+ simple-can-simulator \
+ unzip \
+ mpc \
+"
+
+AGL_APPS_INSTALL = ""
+
+PLATFORM_SERVICES_INSTALL = " \
+ packagegroup-agl-ivi-multimedia-platform \
+ packagegroup-agl-ivi-services-platform \
+"
+
+IMAGE_INSTALL += " \
+ packagegroup-agl-ivi-connectivity \
+ packagegroup-agl-ivi-graphics \
+ packagegroup-agl-ivi-multimedia-client \
+ packagegroup-agl-ivi-multimedia-hardware \
+ packagegroup-agl-ivi-navigation \
+ packagegroup-agl-ivi-identity \
+ packagegroup-agl-ivi-services-applaunchd \
+ ${PLATFORM_SERVICES_INSTALL} \
+ iproute2 \
+ ${AGL_APPS_INSTALL} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "${AGL_DEVEL_INSTALL}" , "", d)} \
+"
+
diff --git a/recipes-platform/images/agl-telematics-demo.bb b/recipes-platform/images/agl-telematics-demo.bb
new file mode 100644
index 00000000..987bd387
--- /dev/null
+++ b/recipes-platform/images/agl-telematics-demo.bb
@@ -0,0 +1,12 @@
+SUMMARY = "AGL Telematics Demo Platform image."
+LICENSE = "MIT"
+
+require recipes-platform/images/agl-image-minimal.bb
+
+inherit features_check
+
+REQUIRED_DISTRO_FEATURES = "3g"
+
+IMAGE_INSTALL += " \
+ packagegroup-agl-telematics-demo-platform \
+"