AGL_DEFAULT_IMAGE_FSTYPES = ""
AGL_EXTRA_IMAGE_FSTYPES = ""
-IMAGE_FSTYPES:aglcontainerguest = "container"
+IMAGE_FSTYPES:aglcontainerguest = "container ext4"
IMAGE_LINGUAS:append:aglcontainercluster = " en-us"
AGL_DEFAULT_IMAGE_FSTYPES:aglcontainerivi = ""
AGL_EXTRA_IMAGE_FSTYPES:aglcontainerivi = ""
-IMAGE_FSTYPES:aglcontainerguest = "container"
+IMAGE_FSTYPES:aglcontainerguest = "container ext4"
IMAGE_LINGUAS:append:aglcontainerivi = " en-us"
--- /dev/null
+IMAGE_INSTALL:append:rcar-gen3 = " kernel-module-gles "
--- /dev/null
+SUMMARY = "AGL Instrument Cluster Cotainer Integration demo image"
+LICENSE = "MIT"
+
+require lxc-host-image-minimal.bb
+require recipes-platform/images/agl-lxc-multi-partition-image.inc
+
+CONTAINER_IMAGES ?= "agl-container-cluster:guest-image-cluster-demo \
+ agl-container-ivi:guest-image-ivi-demo \
+ "
+
+IMAGE_INSTALL += " \
+ kernel-modules \
+ alsa-utils \
+ packagegroup-pipewire \
+ pipewire-ic-ipc \
+ wireplumber-config-agl \
+"
+
+# packages required for network bridge settings via lxc-net
+IMAGE_INSTALL += " \
+ lxc-networking \
+ iptables-modules \
+ dnsmasq \
+ systemd-netif-config \
+ kernel-module-xt-addrtype \
+ kernel-module-xt-multiport \
+"
+
+# network manager to use
+VIRTUAL-RUNTIME_net_manager = "systemd"
+
+WKS_FILES:prepend = "agl-ic-container-noloader.wks "
# Integration type support for install guest root filesystem into host image.
+require recipes-platform/images/agl-lxc-multiconfig-build.inc
+
# Handle modification of IMAGE_LINK_NAME done by ULCB builds with Kingfisher support
MACHINE_SUFFIX = "${@bb.utils.contains('AGL_FEATURES', 'kingfisher', '-kf', '', d)}"
-python __anonymous() {
- for c in (d.getVar('CONTAINER_IMAGES') or "").split():
- (mc, image) = c.split(':')
- dependency = 'mc::' + mc + ':' + image + ':do_image_complete'
- d.appendVarFlag('do_rootfs', 'mcdepends', ' ' + dependency)
-}
-
install_container_images() {
for c in ${CONTAINER_IMAGES}; do
config=${c%:*}
done
}
-#
-# Force rebuild of rootfs on every build to work around mcdepends issue
-#
-# NOTE:
-# This is currently required as bitbake fails to trigger do_rootfs
-# sometimes even when the guest image has in fact rebuilt. This is
-# being investigated with upstream.
-#
-do_rootfs[nostamp] = "1"
-
ROOTFS_POSTPROCESS_COMMAND += "install_container_images; "
--- /dev/null
+# Integration type support for multi partition with host and guest image.
+
+require recipes-platform/images/agl-lxc-multiconfig-build.inc
+
+# Handle modification of IMAGE_LINK_NAME done by ULCB builds with Kingfisher support
+MACHINE_SUFFIX = "${@bb.utils.contains('AGL_FEATURES', 'kingfisher', '-kf', '', d)}"
+
+install_container_images() {
+ for c in ${CONTAINER_IMAGES}; do
+ config=${c%:*}
+ image=${c#*:}
+ name=${image#guest-image-}
+ rm -f "${DEPLOY_DIR_IMAGE}/${image}.ext4"
+ src="${TOPDIR}/tmp-${config}/deploy/images/${MACHINE}/${image}-${MACHINE}${MACHINE_SUFFIX}.ext4"
+ bbnote "Installing ${src}"
+ ln -s ${src} "${DEPLOY_DIR_IMAGE}/${image}.ext4"
+ done
+}
+
+ROOTFS_POSTPROCESS_COMMAND += "install_container_images; "
--- /dev/null
+python __anonymous() {
+ for c in (d.getVar('CONTAINER_IMAGES') or "").split():
+ (mc, image) = c.split(':')
+ dependency = 'mc::' + mc + ':' + image + ':do_image_complete'
+ d.appendVarFlag('do_rootfs', 'mcdepends', ' ' + dependency)
+}
+
+#
+# Force rebuild of rootfs on every build to work around mcdepends issue
+#
+# NOTE:
+# This is currently required as bitbake fails to trigger do_rootfs
+# sometimes even when the guest image has in fact rebuilt. This is
+# being investigated with upstream.
+#
+do_rootfs[nostamp] = "1"
cluster-refgui \
pipewire-ic-ipc \
"
+
+IMAGE_OVERHEAD_FACTOR = "0"
+EXTRA_IMAGECMD:append = " -L agl-cluster"
+IMAGE_ROOTFS_EXTRA_SPACE = "0"
+IMAGE_ROOTFS_SIZE = "1048576"
wireplumber \
packagegroup-pipewire-base \
wireplumber-policy-config-agl \
-"
\ No newline at end of file
+"
+
+IMAGE_OVERHEAD_FACTOR = "0"
+EXTRA_IMAGECMD:append = " -L agl-momi-ivi"
+IMAGE_ROOTFS_EXTRA_SPACE = "0"
+IMAGE_ROOTFS_SIZE = "1048576"
--- /dev/null
+# short-description: Single partition rootfs with UUID and no bootloader
+# long-description: Creates a partitioned image with a single partition in
+# use and does not contain a bootloader.
+
+bootloader --ptable gpt
+part / --source rootfs --fstype=ext4 --label host --align 4096 --size 1024
+part --source rawcopy --sourceparams="file=guest-image-cluster-demo.ext4"
+part --source rawcopy --sourceparams="file=guest-image-ivi-demo.ext4"
+part --fstype=ext4 --label agl-qt-ivi --align 4096 --size 3072
+part --fstype=ext4 --label agl-flutter-ivi --align 4096 --size 3072
+part --fstype=ext4 --label agl-html5-ivi --align 4096 --size 3072