From e3dad1344fee65f54b639f541c7f10352088462b Mon Sep 17 00:00:00 2001 From: Scott Murray Date: Fri, 26 Apr 2024 10:44:44 -0400 Subject: Rework demo image naming Rename the demo images to align with the following scheme: agl---(-) The intent is to make the naming more consistent in preparation for switching to preconfigured images as a replacement for the existing agl-demo-preload, agl-demo-cluster-support, agl-kvm-host-* aglsetup.sh features. Additionally, the prototype LXC demo image support has been removed as it is unused and would need updating for these and upcoming changes. Bug-AGL: SPEC-5138 Change-Id: I8d907713b09eb47c3cb0ebd5326ab063b2684ea2 Signed-off-by: Scott Murray Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-demo/+/29903 Reviewed-by: Naoto YAMAGUCHI Reviewed-by: Jan-Simon Moeller Tested-by: Jan-Simon Moeller --- conf/conf-notes.txt | 16 ++-- .../lxc-config-agl-demo-platform/basic.in | 9 -- .../lxc-config-agl-demo-platform/environment.in | 8 -- .../lxc-config-agl-demo-platform/misc.in | 3 - .../lxc-config-agl-demo-platform/mount.in | 17 ---- .../lxc-config-agl-demo-platform/network.in | 3 - .../system.conf.agl-demo-platform.in | 9 -- .../lxc-config/lxc-config-agl-demo-platform_1.0.bb | 7 -- .../images/agl-lxc-demo-platform.bb | 31 ------- meta-agl-demo.md | 4 +- .../files/agl-cluster-demo-flutter.conf | 5 ++ .../files/agl-cluster-demo-platform-flutter.conf | 5 -- .../files/agl-cluster-demo-platform.conf | 5 -- .../qemu-config/files/agl-cluster-demo-qt.conf | 5 ++ .../qemu-config/files/agl-demo-platform.conf | 12 --- .../qemu-config/files/agl-ivi-demo-flutter.conf | 12 +++ .../files/agl-ivi-demo-platform-flutter.conf | 12 --- .../qemu-config/files/agl-ivi-demo-qt.conf | 12 +++ .../qemu-config-agl-cluster-demo-flutter.bb | 29 +++++++ ...emu-config-agl-cluster-demo-platform-flutter.bb | 29 ------- .../qemu-config-agl-cluster-demo-platform.bb | 29 ------- .../qemu-config/qemu-config-agl-cluster-demo-qt.bb | 29 +++++++ .../qemu-config/qemu-config-agl-demo-platform.bb | 29 ------- .../qemu-config-agl-ivi-demo-flutter.bb | 29 +++++++ .../qemu-config-agl-ivi-demo-platform-flutter.bb | 29 ------- .../qemu-config/qemu-config-agl-ivi-demo-qt.bb | 29 +++++++ recipes-config/qemu-config/qemu-config-vmnet0.bb | 3 - .../wayland/weston-ini-conf_agldemo.inc | 4 +- .../images/agl-cluster-demo-flutter.bb | 37 +++++++++ .../images/agl-cluster-demo-platform-flutter.bb | 37 --------- .../images/agl-cluster-demo-platform.bb | 29 ------- recipes-platform/images/agl-cluster-demo-qt.bb | 29 +++++++ .../images/agl-demo-platform-crosssdk.bb | 1 - recipes-platform/images/agl-demo-platform-html5.bb | 1 - recipes-platform/images/agl-demo-platform.bb | 1 - recipes-platform/images/agl-image-ivi-crosssdk.bb | 11 --- recipes-platform/images/agl-image-ivi.bb | 23 ------ .../images/agl-ivi-demo-base-flutter.bb | 8 -- recipes-platform/images/agl-ivi-demo-base.bb | 19 ----- .../images/agl-ivi-demo-flutter-simple.bb | 20 +++++ recipes-platform/images/agl-ivi-demo-flutter.bb | 11 +++ recipes-platform/images/agl-ivi-demo-html5.bb | 13 +++ .../images/agl-ivi-demo-platform-crosssdk.bb | 16 ---- .../images/agl-ivi-demo-platform-flutter-simple.bb | 20 ----- .../images/agl-ivi-demo-platform-flutter.bb | 11 --- .../images/agl-ivi-demo-platform-html5.bb | 13 --- recipes-platform/images/agl-ivi-demo-platform.bb | 23 ------ .../images/agl-ivi-demo-qt-crosssdk.bb | 16 ++++ recipes-platform/images/agl-ivi-demo-qt.bb | 23 ++++++ recipes-platform/images/agl-ivi-image-crosssdk.bb | 11 +++ recipes-platform/images/agl-ivi-image-flutter.bb | 8 ++ recipes-platform/images/agl-ivi-image.bb | 32 ++++++++ recipes-platform/images/agl-kvm-demo-platform.bb | 96 ---------------------- recipes-platform/images/agl-kvm-demo.bb | 95 +++++++++++++++++++++ .../images/agl-telematics-demo-platform.bb | 13 --- recipes-platform/images/agl-telematics-demo.bb | 12 +++ 56 files changed, 469 insertions(+), 574 deletions(-) delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/basic.in delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/environment.in delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/misc.in delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/mount.in delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/network.in delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/system.conf.agl-demo-platform.in delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform_1.0.bb delete mode 100644 dynamic-layers/meta-agl-ic-container/recipes-platform/images/agl-lxc-demo-platform.bb create mode 100644 recipes-config/qemu-config/files/agl-cluster-demo-flutter.conf delete mode 100644 recipes-config/qemu-config/files/agl-cluster-demo-platform-flutter.conf delete mode 100644 recipes-config/qemu-config/files/agl-cluster-demo-platform.conf create mode 100644 recipes-config/qemu-config/files/agl-cluster-demo-qt.conf delete mode 100644 recipes-config/qemu-config/files/agl-demo-platform.conf create mode 100644 recipes-config/qemu-config/files/agl-ivi-demo-flutter.conf delete mode 100644 recipes-config/qemu-config/files/agl-ivi-demo-platform-flutter.conf create mode 100644 recipes-config/qemu-config/files/agl-ivi-demo-qt.conf create mode 100644 recipes-config/qemu-config/qemu-config-agl-cluster-demo-flutter.bb delete mode 100644 recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform-flutter.bb delete mode 100644 recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform.bb create mode 100644 recipes-config/qemu-config/qemu-config-agl-cluster-demo-qt.bb delete mode 100644 recipes-config/qemu-config/qemu-config-agl-demo-platform.bb create mode 100644 recipes-config/qemu-config/qemu-config-agl-ivi-demo-flutter.bb delete mode 100644 recipes-config/qemu-config/qemu-config-agl-ivi-demo-platform-flutter.bb create mode 100644 recipes-config/qemu-config/qemu-config-agl-ivi-demo-qt.bb create mode 100644 recipes-platform/images/agl-cluster-demo-flutter.bb delete mode 100644 recipes-platform/images/agl-cluster-demo-platform-flutter.bb delete mode 100644 recipes-platform/images/agl-cluster-demo-platform.bb create mode 100644 recipes-platform/images/agl-cluster-demo-qt.bb delete mode 120000 recipes-platform/images/agl-demo-platform-crosssdk.bb delete mode 120000 recipes-platform/images/agl-demo-platform-html5.bb delete mode 120000 recipes-platform/images/agl-demo-platform.bb delete mode 100644 recipes-platform/images/agl-image-ivi-crosssdk.bb delete mode 100644 recipes-platform/images/agl-image-ivi.bb delete mode 100644 recipes-platform/images/agl-ivi-demo-base-flutter.bb delete mode 100644 recipes-platform/images/agl-ivi-demo-base.bb create mode 100644 recipes-platform/images/agl-ivi-demo-flutter-simple.bb create mode 100644 recipes-platform/images/agl-ivi-demo-flutter.bb create mode 100644 recipes-platform/images/agl-ivi-demo-html5.bb delete mode 100644 recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb delete mode 100644 recipes-platform/images/agl-ivi-demo-platform-flutter-simple.bb delete mode 100644 recipes-platform/images/agl-ivi-demo-platform-flutter.bb delete mode 100644 recipes-platform/images/agl-ivi-demo-platform-html5.bb delete mode 100644 recipes-platform/images/agl-ivi-demo-platform.bb create mode 100644 recipes-platform/images/agl-ivi-demo-qt-crosssdk.bb create mode 100644 recipes-platform/images/agl-ivi-demo-qt.bb create mode 100644 recipes-platform/images/agl-ivi-image-crosssdk.bb create mode 100644 recipes-platform/images/agl-ivi-image-flutter.bb create mode 100644 recipes-platform/images/agl-ivi-image.bb delete mode 100644 recipes-platform/images/agl-kvm-demo-platform.bb create mode 100644 recipes-platform/images/agl-kvm-demo.bb delete mode 100644 recipes-platform/images/agl-telematics-demo-platform.bb create mode 100644 recipes-platform/images/agl-telematics-demo.bb diff --git a/conf/conf-notes.txt b/conf/conf-notes.txt index e267e3db..bf70e9e6 100644 --- a/conf/conf-notes.txt +++ b/conf/conf-notes.txt @@ -1,8 +1,10 @@ Common targets are: - agl-image-ivi - agl-image-ivi-crosssdk - agl-image-ivi-qa - agl-demo-platform - agl-demo-platform-crosssdk - agl-demo-platform-qa - agl-demo-platform-html5 + agl-ivi-image + agl-ivi-image-crosssdk + agl-ivi-demo-flutter + agl-ivi-demo-html5 + agl-ivi-demo-qt + agl-ivi-demo-qt-crosssdk + agl-cluster-demo-flutter + agl-cluster-demo-qt + agl-ivi-demo-control-panel diff --git a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/basic.in b/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/basic.in deleted file mode 100644 index 1fd9f347..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/basic.in +++ /dev/null @@ -1,9 +0,0 @@ -# lxc basic setting -lxc.rootfs.path = dir:/var/lib/machines/ivi-demo -lxc.signal.halt = SIGRTMIN+3 -lxc.signal.reboot = SIGTERM -lxc.uts.name = "ivi" -lxc.tty.max = 1 -lxc.pty.max = 1 -lxc.cap.drop = sys_module mac_admin mac_override sys_time - diff --git a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/environment.in b/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/environment.in deleted file mode 100644 index 632252d5..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/environment.in +++ /dev/null @@ -1,8 +0,0 @@ -# lxc environment variable setting -lxc.environment = QT_QPA_PLATFORM=wayland -lxc.environment = QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/ -lxc.environment = QML_IMPORT_PATH=/usr/lib/qml/ -lxc.environment = QML2_IMPORT_PATH=/usr/lib/qml/ -lxc.environment = QT_WAYLAND_SHELL_INTEGRATION=xdg-shell -lxc.environment = PIPEWIRE_RUNTIME_DIR=/var - diff --git a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/misc.in b/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/misc.in deleted file mode 100644 index 9b4f4883..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/misc.in +++ /dev/null @@ -1,3 +0,0 @@ -# lxc misc setting -lxc.start.auto = @LXC_AUTO_START@ - diff --git a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/mount.in b/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/mount.in deleted file mode 100644 index 262f09bd..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/mount.in +++ /dev/null @@ -1,17 +0,0 @@ -# lxc mount setting -lxc.mount.entry = /var/lib/lxc/ivi-demo/system.conf etc/systemd/system.conf.d/10-environment.conf none bind,optional,create=file - -lxc.mount.auto = cgroup:mixed proc:mixed sys:mixed -lxc.mount.entry = shm /dev/shm tmpfs defaults 0 0 -lxc.mount.entry = /sys/kernel/security sys/kernel/security none ro,bind,optional 0 0 -lxc.mount.entry = tmpfs run tmpfs defaults -lxc.mount.entry = /run/udev/data run/udev/data none ro,bind,optional,create=dir - -lxc.cgroup.devices.allow = c 226:* rwm -lxc.mount.entry = /dev/dri dev/dri none bind,optional,create=dir - -lxc.mount.entry = /run/drm-lease-manager/lease-ivi var/display/drm-lease-manager/lease none bind,create=file - -lxc.cgroup.devices.allow = c 13:* rwm -lxc.mount.entry = /dev/input dev/input none bind,optional,create=dir -lxc.mount.entry = /run/pipewire/pipewire-0 var/pipewire-0 none bind,optional,create=file diff --git a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/network.in b/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/network.in deleted file mode 100644 index 573f4796..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/network.in +++ /dev/null @@ -1,3 +0,0 @@ -# lxc network setting -lxc.net.0.type = empty - diff --git a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/system.conf.agl-demo-platform.in b/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/system.conf.agl-demo-platform.in deleted file mode 100644 index de7c6cdd..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform/system.conf.agl-demo-platform.in +++ /dev/null @@ -1,9 +0,0 @@ -[Manager] -DefaultEnvironment = DLM_RUNTIME_PATH=/var/display/drm-lease-manager -DefaultEnvironment = DRM_LEASE_DEVICE=@DRM_LEASE_DEVICE@ -DefaultEnvironment = QT_QPA_PLATFORM=wayland -DefaultEnvironment = QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/ -DefaultEnvironment = QML_IMPORT_PATH=/usr/lib/qml/ -DefaultEnvironment = QML2_IMPORT_PATH=/usr/lib/qml/ -DefaultEnvironment = QT_WAYLAND_SHELL_INTEGRATION=xdg-shell -DefaultEnvironment = PIPEWIRE_RUNTIME_DIR=/var diff --git a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform_1.0.bb b/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform_1.0.bb deleted file mode 100644 index 049c8ab8..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-container/lxc-config/lxc-config-agl-demo-platform_1.0.bb +++ /dev/null @@ -1,7 +0,0 @@ -DESCRIPTION = "AGL IVI demo container LXC config" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9" - -inherit lxc-config - -LXC_AUTO_START ??= "0" diff --git a/dynamic-layers/meta-agl-ic-container/recipes-platform/images/agl-lxc-demo-platform.bb b/dynamic-layers/meta-agl-ic-container/recipes-platform/images/agl-lxc-demo-platform.bb deleted file mode 100644 index b8402294..00000000 --- a/dynamic-layers/meta-agl-ic-container/recipes-platform/images/agl-lxc-demo-platform.bb +++ /dev/null @@ -1,31 +0,0 @@ -SUMMARY = "LXC host demo image" -LICENSE = "MIT" - -require recipes-platform/images/lxc-host-image-minimal.bb - -CONTAINER_IMAGES ?= "agl-container-cluster:guest-image-cluster-demo \ - agl-container-ivi:agl-demo-platform \ - " - -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" - -IMAGE_INSTALL:append:rcar-gen3 = " kernel-module-gles " diff --git a/meta-agl-demo.md b/meta-agl-demo.md index 521ebad8..69233c78 100755 --- a/meta-agl-demo.md +++ b/meta-agl-demo.md @@ -2,9 +2,7 @@ The `meta-agl-demo` layer is the reference user interface layer for the DEMO platform of Automotive Grade Linux (AGL). -The layer provides a reference platform and applications. -The BitBake target name for the DEMO platform is `agl-demo-platform`, which is -the full DEMO platform image. +The layer provides a demo applications and images. ## Layer Dependencies diff --git a/recipes-config/qemu-config/files/agl-cluster-demo-flutter.conf b/recipes-config/qemu-config/files/agl-cluster-demo-flutter.conf new file mode 100644 index 00000000..99d1f10c --- /dev/null +++ b/recipes-config/qemu-config/files/agl-cluster-demo-flutter.conf @@ -0,0 +1,5 @@ +QEMU_TASKSET_CPUS="4-7" +QEMU_SMP_OPT="-smp 2" +QEMU_MEM_OPT="-m 1G" +QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:03,netdev=net0" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=2048M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-cluster-demo-platform-flutter.conf b/recipes-config/qemu-config/files/agl-cluster-demo-platform-flutter.conf deleted file mode 100644 index 99d1f10c..00000000 --- a/recipes-config/qemu-config/files/agl-cluster-demo-platform-flutter.conf +++ /dev/null @@ -1,5 +0,0 @@ -QEMU_TASKSET_CPUS="4-7" -QEMU_SMP_OPT="-smp 2" -QEMU_MEM_OPT="-m 1G" -QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:03,netdev=net0" -QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=2048M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-cluster-demo-platform.conf b/recipes-config/qemu-config/files/agl-cluster-demo-platform.conf deleted file mode 100644 index 1ecefc47..00000000 --- a/recipes-config/qemu-config/files/agl-cluster-demo-platform.conf +++ /dev/null @@ -1,5 +0,0 @@ -QEMU_TASKSET_CPUS="4-7" -QEMU_SMP_OPT="-smp 4" -QEMU_MEM_OPT="-m 2G" -QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:03,netdev=net0" -QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=2048M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-cluster-demo-qt.conf b/recipes-config/qemu-config/files/agl-cluster-demo-qt.conf new file mode 100644 index 00000000..1ecefc47 --- /dev/null +++ b/recipes-config/qemu-config/files/agl-cluster-demo-qt.conf @@ -0,0 +1,5 @@ +QEMU_TASKSET_CPUS="4-7" +QEMU_SMP_OPT="-smp 4" +QEMU_MEM_OPT="-m 2G" +QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:03,netdev=net0" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=2048M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-demo-platform.conf b/recipes-config/qemu-config/files/agl-demo-platform.conf deleted file mode 100644 index 7ff32bc1..00000000 --- a/recipes-config/qemu-config/files/agl-demo-platform.conf +++ /dev/null @@ -1,12 +0,0 @@ -QEMU_TASKSET_CPUS="0-3" -QEMU_SMP_OPT="-smp 4" -QEMU_MEM_OPT="-m 4G" -# With touchscreen plugged into the bottom connector of the 2x USB 2.0 -# on the reference hardware -QEMU_INPUT_OPT="-device qemu-xhci -usb -device usb-host,hostbus=5,hostport=1" -# Fallback for touchscreen or other pointing device plugged in elsewhere -#QEMU_INPUT_OPT="-device virtio-tablet-device" -QEMU_AUDIO_OPT="-audiodev alsa,id=agl -device intel-hda -device hda-duplex,audiodev=agl" -QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:02,netdev=net0" -QEMU_CAN_OPT="-object can-bus,id=canbus0 -object can-host-socketcan,id=canhost0,if=can0,canbus=canbus0 -device kvaser_pci,canbus=canbus0" -QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=4196M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-ivi-demo-flutter.conf b/recipes-config/qemu-config/files/agl-ivi-demo-flutter.conf new file mode 100644 index 00000000..7ff32bc1 --- /dev/null +++ b/recipes-config/qemu-config/files/agl-ivi-demo-flutter.conf @@ -0,0 +1,12 @@ +QEMU_TASKSET_CPUS="0-3" +QEMU_SMP_OPT="-smp 4" +QEMU_MEM_OPT="-m 4G" +# With touchscreen plugged into the bottom connector of the 2x USB 2.0 +# on the reference hardware +QEMU_INPUT_OPT="-device qemu-xhci -usb -device usb-host,hostbus=5,hostport=1" +# Fallback for touchscreen or other pointing device plugged in elsewhere +#QEMU_INPUT_OPT="-device virtio-tablet-device" +QEMU_AUDIO_OPT="-audiodev alsa,id=agl -device intel-hda -device hda-duplex,audiodev=agl" +QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:02,netdev=net0" +QEMU_CAN_OPT="-object can-bus,id=canbus0 -object can-host-socketcan,id=canhost0,if=can0,canbus=canbus0 -device kvaser_pci,canbus=canbus0" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=4196M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-ivi-demo-platform-flutter.conf b/recipes-config/qemu-config/files/agl-ivi-demo-platform-flutter.conf deleted file mode 100644 index 7ff32bc1..00000000 --- a/recipes-config/qemu-config/files/agl-ivi-demo-platform-flutter.conf +++ /dev/null @@ -1,12 +0,0 @@ -QEMU_TASKSET_CPUS="0-3" -QEMU_SMP_OPT="-smp 4" -QEMU_MEM_OPT="-m 4G" -# With touchscreen plugged into the bottom connector of the 2x USB 2.0 -# on the reference hardware -QEMU_INPUT_OPT="-device qemu-xhci -usb -device usb-host,hostbus=5,hostport=1" -# Fallback for touchscreen or other pointing device plugged in elsewhere -#QEMU_INPUT_OPT="-device virtio-tablet-device" -QEMU_AUDIO_OPT="-audiodev alsa,id=agl -device intel-hda -device hda-duplex,audiodev=agl" -QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:02,netdev=net0" -QEMU_CAN_OPT="-object can-bus,id=canbus0 -object can-host-socketcan,id=canhost0,if=can0,canbus=canbus0 -device kvaser_pci,canbus=canbus0" -QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=4196M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/files/agl-ivi-demo-qt.conf b/recipes-config/qemu-config/files/agl-ivi-demo-qt.conf new file mode 100644 index 00000000..7ff32bc1 --- /dev/null +++ b/recipes-config/qemu-config/files/agl-ivi-demo-qt.conf @@ -0,0 +1,12 @@ +QEMU_TASKSET_CPUS="0-3" +QEMU_SMP_OPT="-smp 4" +QEMU_MEM_OPT="-m 4G" +# With touchscreen plugged into the bottom connector of the 2x USB 2.0 +# on the reference hardware +QEMU_INPUT_OPT="-device qemu-xhci -usb -device usb-host,hostbus=5,hostport=1" +# Fallback for touchscreen or other pointing device plugged in elsewhere +#QEMU_INPUT_OPT="-device virtio-tablet-device" +QEMU_AUDIO_OPT="-audiodev alsa,id=agl -device intel-hda -device hda-duplex,audiodev=agl" +QEMU_NET_OPT="-netdev bridge,br=vmnet0,id=net0 -device virtio-net-device,mac=52:54:00:12:00:02,netdev=net0" +QEMU_CAN_OPT="-object can-bus,id=canbus0 -object can-host-socketcan,id=canhost0,if=can0,canbus=canbus0 -device kvaser_pci,canbus=canbus0" +QEMU_KERNEL_CMDLINE_APPEND="root=/dev/vda rw mem=4196M video=Virtual-1:1920x1080" diff --git a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-flutter.bb b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-flutter.bb new file mode 100644 index 00000000..f0bc93fd --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-flutter.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-cluster-demo-plaform-flutter guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-cluster-demo-flutter" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform-flutter.bb b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform-flutter.bb deleted file mode 100644 index 159d3939..00000000 --- a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform-flutter.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Setting files for agl-cluster-demo-plaform-flutter guest VM" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -inherit systemd allarch - -SRC_URI = "file://${QEMU_IMAGE}.conf" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -QEMU_IMAGE = "agl-cluster-demo-platform-flutter" -QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" - -do_install() { - # Install template unit links - install -d ${D}${systemd_system_unitdir} - ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} - install -d ${D}${systemd_system_unitdir}/multi-user.target.wants - ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} - - # Install conf file - install -d ${D}${sysconfdir}/agl-qemu-runner - install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ -} - -FILES:${PN} += "${systemd_system_unitdir}" - -RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform.bb b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform.bb deleted file mode 100644 index 8e2aeb3e..00000000 --- a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-platform.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Setting files for agl-cluster-demo-plaform guest VM" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -inherit systemd allarch - -SRC_URI = "file://${QEMU_IMAGE}.conf" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -QEMU_IMAGE = "agl-cluster-demo-platform" -QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" - -do_install() { - # Install template unit links - install -d ${D}${systemd_system_unitdir} - ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} - install -d ${D}${systemd_system_unitdir}/multi-user.target.wants - ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} - - # Install conf file - install -d ${D}${sysconfdir}/agl-qemu-runner - install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ -} - -FILES:${PN} += "${systemd_system_unitdir}" - -RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-agl-cluster-demo-qt.bb b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-qt.bb new file mode 100644 index 00000000..e22e4027 --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-cluster-demo-qt.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-cluster-demo-plaform guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-cluster-demo-qt" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-agl-demo-platform.bb b/recipes-config/qemu-config/qemu-config-agl-demo-platform.bb deleted file mode 100644 index da85b7a7..00000000 --- a/recipes-config/qemu-config/qemu-config-agl-demo-platform.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Setting files for agl-demo-plaform guest VM" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -inherit systemd allarch - -SRC_URI = "file://${QEMU_IMAGE}.conf" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -QEMU_IMAGE = "agl-demo-platform" -QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" - -do_install() { - # Install template unit links - install -d ${D}${systemd_system_unitdir} - ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} - install -d ${D}${systemd_system_unitdir}/multi-user.target.wants - ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} - - # Install conf file - install -d ${D}${sysconfdir}/agl-qemu-runner - install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ -} - -FILES:${PN} += "${systemd_system_unitdir}" - -RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-agl-ivi-demo-flutter.bb b/recipes-config/qemu-config/qemu-config-agl-ivi-demo-flutter.bb new file mode 100644 index 00000000..a9f2be43 --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-ivi-demo-flutter.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-ivi-demo-plaform-flutter guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-ivi-demo-flutter" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-agl-ivi-demo-platform-flutter.bb b/recipes-config/qemu-config/qemu-config-agl-ivi-demo-platform-flutter.bb deleted file mode 100644 index 10c30445..00000000 --- a/recipes-config/qemu-config/qemu-config-agl-ivi-demo-platform-flutter.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Setting files for agl-ivi-demo-plaform-flutter guest VM" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" - -inherit systemd allarch - -SRC_URI = "file://${QEMU_IMAGE}.conf" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -QEMU_IMAGE = "agl-ivi-demo-platform-flutter" -QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" - -do_install() { - # Install template unit links - install -d ${D}${systemd_system_unitdir} - ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} - install -d ${D}${systemd_system_unitdir}/multi-user.target.wants - ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} - - # Install conf file - install -d ${D}${sysconfdir}/agl-qemu-runner - install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ -} - -FILES:${PN} += "${systemd_system_unitdir}" - -RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-agl-ivi-demo-qt.bb b/recipes-config/qemu-config/qemu-config-agl-ivi-demo-qt.bb new file mode 100644 index 00000000..46e043c0 --- /dev/null +++ b/recipes-config/qemu-config/qemu-config-agl-ivi-demo-qt.bb @@ -0,0 +1,29 @@ +SUMMARY = "Setting files for agl-demo-plaform guest VM" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd allarch + +SRC_URI = "file://${QEMU_IMAGE}.conf" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +QEMU_IMAGE = "agl-ivi-demo-qt" +QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" + +do_install() { + # Install template unit links + install -d ${D}${systemd_system_unitdir} + ln -sf agl-qemu-runner@.service ${D}${systemd_system_unitdir}/${QEMU_UNIT} + install -d ${D}${systemd_system_unitdir}/multi-user.target.wants + ln -sf ${systemd_system_unitdir}/${QEMU_UNIT} ${D}${systemd_system_unitdir}/multi-user.target.wants/${QEMU_UNIT} + + # Install conf file + install -d ${D}${sysconfdir}/agl-qemu-runner + install -m 0644 ${WORKDIR}/${QEMU_IMAGE}.conf ${D}${sysconfdir}/agl-qemu-runner/ +} + +FILES:${PN} += "${systemd_system_unitdir}" + +RDEPENDS:${PN} += "agl-qemu-runner qemu-config-vmnet0" diff --git a/recipes-config/qemu-config/qemu-config-vmnet0.bb b/recipes-config/qemu-config/qemu-config-vmnet0.bb index bc634bf3..a5a12982 100644 --- a/recipes-config/qemu-config/qemu-config-vmnet0.bb +++ b/recipes-config/qemu-config/qemu-config-vmnet0.bb @@ -14,9 +14,6 @@ SRC_URI = "file://vmnet0.netdev \ do_configure[noexec] = "1" do_compile[noexec] = "1" -QEMU_IMAGE = "agl-cluster-demo-platform" -QEMU_UNIT = "agl-qemu-runner@${QEMU_IMAGE}.service" - do_install() { # Install systemd-networkd vmnet0 configuration install -d ${D}${systemd_unitdir}/network diff --git a/recipes-graphics/wayland/weston-ini-conf_agldemo.inc b/recipes-graphics/wayland/weston-ini-conf_agldemo.inc index 6d6a0a8d..5c7b9fee 100644 --- a/recipes-graphics/wayland/weston-ini-conf_agldemo.inc +++ b/recipes-graphics/wayland/weston-ini-conf_agldemo.inc @@ -2,8 +2,8 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/weston-ini-conf:" SRC_URI += "file://weston.ini.kvm.in" -GUEST_VM1_IMAGE ?= "agl-ivi-demo-platform-flutter" -GUEST_VM2_IMAGE ?= "agl-cluster-demo-platform-flutter" +GUEST_VM1_IMAGE ?= "agl-ivi-demo-flutter" +GUEST_VM2_IMAGE ?= "agl-cluster-demo-flutter" do_compile:append() { # Start with a canned configuration for a KVM host, filling in 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..5cf3daf9 --- /dev/null +++ b/recipes-platform/images/agl-cluster-demo-flutter.bb @@ -0,0 +1,37 @@ +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" + +# KUKSA.val databroker is not installed with "agl-demo-preload" +# feature enabled, since demo unit configuration points at the +# databroker on the IVI board in that setup. +IMAGE_FEATURES += " \ + kuksa-val-databroker-client \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "kuksa-val-databroker", d)} \ +" + +# Generic +IMAGE_INSTALL += "\ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "psplash-inverted-config", "", d)} \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "weston-ini-conf-landscape-inverted", "weston-ini-conf-landscape", d)} \ + \ + packagegroup-agl-networking \ + cluster-receiver \ + \ + simple-can-simulator \ + " + +# Flutter +IMAGE_INSTALL += "\ + flutter-cluster-dashboard \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "flutter-cluster-dashboard-conf-demo", "flutter-cluster-dashboard-conf", d)} \ + cluster-demo-config-flutter \ + flutter-auto \ + " + +CLANGSDK = "1" diff --git a/recipes-platform/images/agl-cluster-demo-platform-flutter.bb b/recipes-platform/images/agl-cluster-demo-platform-flutter.bb deleted file mode 100644 index 5cf3daf9..00000000 --- a/recipes-platform/images/agl-cluster-demo-platform-flutter.bb +++ /dev/null @@ -1,37 +0,0 @@ -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" - -# KUKSA.val databroker is not installed with "agl-demo-preload" -# feature enabled, since demo unit configuration points at the -# databroker on the IVI board in that setup. -IMAGE_FEATURES += " \ - kuksa-val-databroker-client \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "kuksa-val-databroker", d)} \ -" - -# Generic -IMAGE_INSTALL += "\ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "psplash-inverted-config", "", d)} \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "weston-ini-conf-landscape-inverted", "weston-ini-conf-landscape", d)} \ - \ - packagegroup-agl-networking \ - cluster-receiver \ - \ - simple-can-simulator \ - " - -# Flutter -IMAGE_INSTALL += "\ - flutter-cluster-dashboard \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "flutter-cluster-dashboard-conf-demo", "flutter-cluster-dashboard-conf", d)} \ - cluster-demo-config-flutter \ - flutter-auto \ - " - -CLANGSDK = "1" diff --git a/recipes-platform/images/agl-cluster-demo-platform.bb b/recipes-platform/images/agl-cluster-demo-platform.bb deleted file mode 100644 index c427af66..00000000 --- a/recipes-platform/images/agl-cluster-demo-platform.bb +++ /dev/null @@ -1,29 +0,0 @@ -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" - -# KUKSA.val databroker is not installed with "agl-demo-preload" -# feature enabled, since demo unit configuration points at the -# databroker on the IVI board in that setup. -IMAGE_FEATURES += " \ - kuksa-val-databroker-client \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "kuksa-val-databroker", d)} \ -" - -# add packages for cluster demo platform (include demo apps) here -IMAGE_INSTALL += " \ - packagegroup-agl-cluster-demo-platform \ - kuksa-certificates-agl-ca \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "cluster-demo-config", "", d)} \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "weston-ini-conf-landscape-inverted", "weston-ini-conf-landscape", d)} \ - ${@bb.utils.contains("AGL_FEATURES", "AGLCI", "qemu-set-display", "", d)} \ - " 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..c427af66 --- /dev/null +++ b/recipes-platform/images/agl-cluster-demo-qt.bb @@ -0,0 +1,29 @@ +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" + +# KUKSA.val databroker is not installed with "agl-demo-preload" +# feature enabled, since demo unit configuration points at the +# databroker on the IVI board in that setup. +IMAGE_FEATURES += " \ + kuksa-val-databroker-client \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "kuksa-val-databroker", d)} \ +" + +# add packages for cluster demo platform (include demo apps) here +IMAGE_INSTALL += " \ + packagegroup-agl-cluster-demo-platform \ + kuksa-certificates-agl-ca \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "cluster-demo-config", "", d)} \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "weston-ini-conf-landscape-inverted", "weston-ini-conf-landscape", d)} \ + ${@bb.utils.contains("AGL_FEATURES", "AGLCI", "qemu-set-display", "", d)} \ + " diff --git a/recipes-platform/images/agl-demo-platform-crosssdk.bb b/recipes-platform/images/agl-demo-platform-crosssdk.bb deleted file mode 120000 index 70daba00..00000000 --- a/recipes-platform/images/agl-demo-platform-crosssdk.bb +++ /dev/null @@ -1 +0,0 @@ -agl-ivi-demo-platform-crosssdk.bb \ No newline at end of file diff --git a/recipes-platform/images/agl-demo-platform-html5.bb b/recipes-platform/images/agl-demo-platform-html5.bb deleted file mode 120000 index fabf5e35..00000000 --- a/recipes-platform/images/agl-demo-platform-html5.bb +++ /dev/null @@ -1 +0,0 @@ -agl-ivi-demo-platform-html5.bb \ No newline at end of file diff --git a/recipes-platform/images/agl-demo-platform.bb b/recipes-platform/images/agl-demo-platform.bb deleted file mode 120000 index ff29cf3e..00000000 --- a/recipes-platform/images/agl-demo-platform.bb +++ /dev/null @@ -1 +0,0 @@ -agl-ivi-demo-platform.bb \ No newline at end of file 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 be008832..00000000 --- a/recipes-platform/images/agl-image-ivi-crosssdk.bb +++ /dev/null @@ -1,11 +0,0 @@ -require agl-image-ivi.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-image-ivi.bb b/recipes-platform/images/agl-image-ivi.bb deleted file mode 100644 index 69d0ed99..00000000 --- a/recipes-platform/images/agl-image-ivi.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "A basic system of AGL distribution of IVI profile" - -DESCRIPTION = "Basic image for baseline of AGL Distribution for IVI profile." - -LICENSE = "MIT" - -require recipes-platform/images/agl-image-compositor.bb - -IMAGE_INSTALL += " \ - packagegroup-agl-ivi-connectivity \ - packagegroup-agl-ivi-graphics \ - packagegroup-agl-ivi-multimedia \ - packagegroup-agl-ivi-multimedia-hardware \ - packagegroup-agl-ivi-navigation \ - packagegroup-agl-ivi-identity \ - packagegroup-agl-ivi-services-applaunchd \ - ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-audio", "", "packagegroup-agl-ivi-services-platform", d)} \ - iproute2 \ - " - -IMAGE_FEATURES += "splash package-management ssh-server-openssh" - - diff --git a/recipes-platform/images/agl-ivi-demo-base-flutter.bb b/recipes-platform/images/agl-ivi-demo-base-flutter.bb deleted file mode 100644 index ce2ea6bb..00000000 --- a/recipes-platform/images/agl-ivi-demo-base-flutter.bb +++ /dev/null @@ -1,8 +0,0 @@ -require agl-ivi-demo-base.bb - -DESCRIPTION = "AGL Flutter demo base image" - -IMAGE_INSTALL += " \ - packagegroup-agl-demo-platform-flutter \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "weston-terminal-conf", d)} \ -" diff --git a/recipes-platform/images/agl-ivi-demo-base.bb b/recipes-platform/images/agl-ivi-demo-base.bb deleted file mode 100644 index da4d2684..00000000 --- a/recipes-platform/images/agl-ivi-demo-base.bb +++ /dev/null @@ -1,19 +0,0 @@ -require agl-image-ivi.bb - -DESCRIPTION = "AGL demo base image" - -require agl-ivi-demo-features.inc -require agl-demo-container-guest-integration.inc - -AGL_DEVEL_INSTALL += "\ - simple-can-simulator \ - unzip \ - mpc \ -" - -AGL_APPS_INSTALL = "" - -IMAGE_INSTALL += " \ - ${AGL_APPS_INSTALL} \ - ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "${AGL_DEVEL_INSTALL}" , "", d)} \ -" diff --git a/recipes-platform/images/agl-ivi-demo-flutter-simple.bb b/recipes-platform/images/agl-ivi-demo-flutter-simple.bb new file mode 100644 index 00000000..2e33f47b --- /dev/null +++ b/recipes-platform/images/agl-ivi-demo-flutter-simple.bb @@ -0,0 +1,20 @@ +require agl-ivi-image-flutter.bb + +SUMMARY = "AGL IVI demo simple Flutter image" + +AGL_APPS_INSTALL += " \ + flutter-homescreen \ + flutter-dashboard \ + flutter-hvac \ + ondemandnavi \ + settings \ + mediaplayer \ + messaging \ + phone \ + radio \ +" + +IMAGE_INSTALL += " \ + qtquickcontrols2-agl \ + qtquickcontrols2-agl-style \ +" 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..75fd57c6 --- /dev/null +++ b/recipes-platform/images/agl-ivi-demo-flutter.bb @@ -0,0 +1,11 @@ +require agl-ivi-image-flutter.bb + +SUMMARY = "AGL IVI demo Flutter image" + +AGL_APPS_INSTALL += " \ + flutter-ics-homescreen \ + ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "flutter-ics-homescreen-conf-kvm-demo", "flutter-ics-homescreen-conf", d)} \ + camera-gstreamer \ + ondemandnavi \ + ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "ondemandnavi-conf-kvm-demo", "ondemandnavi-conf", d)} \ +" diff --git a/recipes-platform/images/agl-ivi-demo-html5.bb b/recipes-platform/images/agl-ivi-demo-html5.bb new file mode 100644 index 00000000..34de64bd --- /dev/null +++ b/recipes-platform/images/agl-ivi-demo-html5.bb @@ -0,0 +1,13 @@ +require agl-ivi-image.bb + +SUMMARY = "AGL IVI demo HTML5 image" +DESCRIPTION = "Contains the web runtime and sample web apps" + +require agl-demo-container-guest-integration.inc + +CLANGSDK = "1" + +# add packages for demo platform (include demo apps) here +IMAGE_INSTALL += " \ + packagegroup-agl-demo-platform-html5 \ +" diff --git a/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb b/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb deleted file mode 100644 index c9ed07a0..00000000 --- a/recipes-platform/images/agl-ivi-demo-platform-crosssdk.bb +++ /dev/null @@ -1,16 +0,0 @@ -require agl-ivi-demo-platform.bb - -SUMMARY = "Cross SDK of demo AGL Distribution for IVI profile" - -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-platform-flutter-simple.bb b/recipes-platform/images/agl-ivi-demo-platform-flutter-simple.bb deleted file mode 100644 index f1932df5..00000000 --- a/recipes-platform/images/agl-ivi-demo-platform-flutter-simple.bb +++ /dev/null @@ -1,20 +0,0 @@ -require agl-ivi-demo-base-flutter.bb - -DESCRIPTION = "AGL Flutter Demo Platform image" - -AGL_APPS_INSTALL += " \ - flutter-homescreen \ - flutter-dashboard \ - flutter-hvac \ - ondemandnavi \ - settings \ - mediaplayer \ - messaging \ - phone \ - radio \ -" - -IMAGE_INSTALL += " \ - qtquickcontrols2-agl \ - qtquickcontrols2-agl-style \ -" diff --git a/recipes-platform/images/agl-ivi-demo-platform-flutter.bb b/recipes-platform/images/agl-ivi-demo-platform-flutter.bb deleted file mode 100644 index 81a1c804..00000000 --- a/recipes-platform/images/agl-ivi-demo-platform-flutter.bb +++ /dev/null @@ -1,11 +0,0 @@ -require agl-ivi-demo-base-flutter.bb - -DESCRIPTION = "AGL Flutter Demo Platform image" - -AGL_APPS_INSTALL += " \ - flutter-ics-homescreen \ - ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "flutter-ics-homescreen-conf-kvm-demo", "flutter-ics-homescreen-conf", d)} \ - camera-gstreamer \ - ondemandnavi \ - ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "ondemandnavi-conf-kvm-demo", "ondemandnavi-conf", d)} \ -" diff --git a/recipes-platform/images/agl-ivi-demo-platform-html5.bb b/recipes-platform/images/agl-ivi-demo-platform-html5.bb deleted file mode 100644 index 520b443e..00000000 --- a/recipes-platform/images/agl-ivi-demo-platform-html5.bb +++ /dev/null @@ -1,13 +0,0 @@ -require agl-image-ivi.bb - -SUMMARY = "DEMO platform of AGL HTML5 profile" -DESCRIPTION = "Contains the web runtime and sample web apps" - -require agl-demo-container-guest-integration.inc - -CLANGSDK = "1" - -# add packages for demo platform (include demo apps) here -IMAGE_INSTALL += " \ - packagegroup-agl-demo-platform-html5 \ -" diff --git a/recipes-platform/images/agl-ivi-demo-platform.bb b/recipes-platform/images/agl-ivi-demo-platform.bb deleted file mode 100644 index 2854462c..00000000 --- a/recipes-platform/images/agl-ivi-demo-platform.bb +++ /dev/null @@ -1,23 +0,0 @@ -require agl-ivi-demo-base.bb - -DESCRIPTION = "AGL Qt Demo Platform image" - -AGL_APPS_INSTALL += " \ - dashboard \ - hvac \ - ondemandnavi \ - ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "ondemandnavi-conf-kvm-demo", "ondemandnavi-conf", d)} \ - settings \ - mediaplayer \ - messaging \ - phone \ - radio \ - window-management-client-grpc \ - camera-gstreamer \ -" - -IMAGE_INSTALL += " \ - packagegroup-agl-demo-platform \ - ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "weston-terminal-conf", d)} \ -" - 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.bb b/recipes-platform/images/agl-ivi-demo-qt.bb new file mode 100644 index 00000000..2f0e9427 --- /dev/null +++ b/recipes-platform/images/agl-ivi-demo-qt.bb @@ -0,0 +1,23 @@ +require agl-ivi-image.bb + +SUMMARY = "AGL IVI demo Qt image" + +AGL_APPS_INSTALL += " \ + dashboard \ + hvac \ + ondemandnavi \ + ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "ondemandnavi-conf-kvm-demo", "ondemandnavi-conf", d)} \ + settings \ + mediaplayer \ + messaging \ + phone \ + radio \ + window-management-client-grpc \ + camera-gstreamer \ +" + +IMAGE_INSTALL += " \ + packagegroup-agl-demo-platform \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "weston-terminal-conf", d)} \ +" + 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..56a8b2f8 --- /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 \ + ${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "", "weston-terminal-conf", d)} \ +" diff --git a/recipes-platform/images/agl-ivi-image.bb b/recipes-platform/images/agl-ivi-image.bb new file mode 100644 index 00000000..12122caf --- /dev/null +++ b/recipes-platform/images/agl-ivi-image.bb @@ -0,0 +1,32 @@ +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 = "" + +IMAGE_INSTALL += " \ + packagegroup-agl-ivi-connectivity \ + packagegroup-agl-ivi-graphics \ + packagegroup-agl-ivi-multimedia \ + packagegroup-agl-ivi-multimedia-hardware \ + packagegroup-agl-ivi-navigation \ + packagegroup-agl-ivi-identity \ + packagegroup-agl-ivi-services-applaunchd \ + iproute2 \ + ${AGL_APPS_INSTALL} \ + ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "${AGL_DEVEL_INSTALL}" , "", d)} \ + ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-audio", "", "packagegroup-agl-ivi-services-platform", d)} \ +" + diff --git a/recipes-platform/images/agl-kvm-demo-platform.bb b/recipes-platform/images/agl-kvm-demo-platform.bb deleted file mode 100644 index ddb2ddb4..00000000 --- a/recipes-platform/images/agl-kvm-demo-platform.bb +++ /dev/null @@ -1,96 +0,0 @@ -DESCRIPTION = "AGL KVM+QEMU Demo Platform image." - -LICENSE = "MIT" - -require recipes-platform/images/agl-image-compositor.bb -require agl-demo-features.inc - -IMAGE_FEATURES += "splash package-management ssh-server-openssh" - -# If building with "agl-kvm-host-kuksa", the databroker and likely -# some clients run on the host -IMAGE_FEATURES += " \ - ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "kuksa-val-databroker kuksa-val-databroker-client", "", d)} \ - ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "can-test-tools" , "", d)} \ -" - -# Add packages for KVM+QEMU demo platform here -IMAGE_INSTALL += " \ - packagegroup-agl-core-connectivity \ - kernel-image \ - agl-compositor \ - weston-ini-conf-kvm \ - output-udev-conf \ - native-shell-client \ - qemu \ - ${QEMU_GUEST_CONFIGS} \ - util-linux-taskset \ - screen \ - simple-can-simulator \ - alsa-utils \ -" - -# Until virtio sound is workable with QEMU, run the audio using -# services on the host for a better demo experience. At the -# moment, this also includes the HVAC service since it does not -# make sense to try to make things more fine-grained with respect -# to configuration for where things expect to find the databroker. -# It will need to be revisited when virtio-snd, virtio-gpio, etc. -# become feasible to use. -HOST_AUDIO_INSTALL = " \ - packagegroup-agl-ivi-services-platform \ - agl-service-radio-conf-kvm-demo \ - packagegroup-pipewire \ - wireplumber-config-agl \ - wireplumber-policy-config-agl \ - mpd \ - udisks2 \ - ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "packagegroup-pipewire-tools mpc" , "", d)} \ -" - -IMAGE_INSTALL += "\ - ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "kuksa-databroker-agl-demo-cluster", "", d)} \ - ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-audio", "${HOST_AUDIO_INSTALL}", "", d)} \ -" - -# Potential size reduction options -#IMAGE_LINGUAS = " " -#NO_RECOMMENDATIONS = "1" - -GUEST_MACHINE ?= "virtio-${TUNE_ARCH}" - -GUEST_VM1_IMAGE ?= "agl-ivi-demo-platform-flutter" -GUEST_VM2_IMAGE ?= "agl-cluster-demo-platform-flutter" - -GUEST_IMAGES ?= "agl-kvm-guest:${GUEST_VM1_IMAGE} agl-kvm-guest:${GUEST_VM2_IMAGE}" - -QEMU_GUEST_CONFIGS ?= "" - -python __anonymous() { - for c in (d.getVar('GUEST_IMAGES') or "").split(): - (mc, image) = c.split(':') - dependency = 'mc::' + mc + ':' + image + ':do_image_complete' - d.appendVarFlag('do_rootfs', 'mcdepends', ' ' + dependency) - - # Assume there is a qemu-config-X package for guest image X - d.appendVar('QEMU_GUEST_CONFIGS', ' ' + 'qemu-config-' + image) -} - -install_guest_images() { - for c in ${GUEST_IMAGES}; do - config=${c%:*} - image=${c#*:} - name=${image} - rm -rf ${IMAGE_ROOTFS}/var/lib/machines/${name} - install -m 0755 -d ${IMAGE_ROOTFS}/var/lib/machines/${name} - src="${TOPDIR}/tmp-${config}/deploy/images/${GUEST_MACHINE}/${image}-${GUEST_MACHINE}.ext4" - bbnote "Installing ${src}" - install -m 0600 ${src} ${IMAGE_ROOTFS}/var/lib/machines/${name}/ - # Placeholder until booting from kernel in VM image is worked out - install -m 0600 ${TOPDIR}/tmp-${config}/deploy/images/${GUEST_MACHINE}/Image-${GUEST_MACHINE}.bin ${IMAGE_ROOTFS}/var/lib/machines/${name}/ - done -} - -ROOTFS_POSTPROCESS_COMMAND += "install_guest_images; " - -IMAGE_ROOTFS_EXTRA_SPACE:append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "" ,d)}" diff --git a/recipes-platform/images/agl-kvm-demo.bb b/recipes-platform/images/agl-kvm-demo.bb new file mode 100644 index 00000000..c2775700 --- /dev/null +++ b/recipes-platform/images/agl-kvm-demo.bb @@ -0,0 +1,95 @@ +SUMMARY = "AGL KVM+QEMU Demo Platform image." +LICENSE = "MIT" + +require recipes-platform/images/agl-image-compositor.bb +require agl-demo-features.inc + +IMAGE_FEATURES += "splash package-management ssh-server-openssh" + +# If building with "agl-kvm-host-kuksa", the databroker and likely +# some clients run on the host +IMAGE_FEATURES += " \ + ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "kuksa-val-databroker kuksa-val-databroker-client", "", d)} \ + ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "can-test-tools" , "", d)} \ +" + +# Add packages for KVM+QEMU demo platform here +IMAGE_INSTALL += " \ + packagegroup-agl-core-connectivity \ + kernel-image \ + agl-compositor \ + weston-ini-conf-kvm \ + output-udev-conf \ + native-shell-client \ + qemu \ + ${QEMU_GUEST_CONFIGS} \ + util-linux-taskset \ + screen \ + simple-can-simulator \ + alsa-utils \ +" + +# Until virtio sound is workable with QEMU, run the audio using +# services on the host for a better demo experience. At the +# moment, this also includes the HVAC service since it does not +# make sense to try to make things more fine-grained with respect +# to configuration for where things expect to find the databroker. +# It will need to be revisited when virtio-snd, virtio-gpio, etc. +# become feasible to use. +HOST_AUDIO_INSTALL = " \ + packagegroup-agl-ivi-services-platform \ + agl-service-radio-conf-kvm-demo \ + packagegroup-pipewire \ + wireplumber-config-agl \ + wireplumber-policy-config-agl \ + mpd \ + udisks2 \ + ${@bb.utils.contains("DISTRO_FEATURES", "agl-devel", "packagegroup-pipewire-tools mpc" , "", d)} \ +" + +IMAGE_INSTALL += "\ + ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-kuksa", "kuksa-databroker-agl-demo-cluster", "", d)} \ + ${@bb.utils.contains("AGL_FEATURES", "agl-kvm-host-audio", "${HOST_AUDIO_INSTALL}", "", d)} \ +" + +# Potential size reduction options +#IMAGE_LINGUAS = " " +#NO_RECOMMENDATIONS = "1" + +GUEST_MACHINE ?= "virtio-${TUNE_ARCH}" + +GUEST_VM1_IMAGE ?= "agl-ivi-demo-flutter" +GUEST_VM2_IMAGE ?= "agl-cluster-demo-flutter" + +GUEST_IMAGES ?= "agl-kvm-guest:${GUEST_VM1_IMAGE} agl-kvm-guest:${GUEST_VM2_IMAGE}" + +QEMU_GUEST_CONFIGS ?= "" + +python __anonymous() { + for c in (d.getVar('GUEST_IMAGES') or "").split(): + (mc, image) = c.split(':') + dependency = 'mc::' + mc + ':' + image + ':do_image_complete' + d.appendVarFlag('do_rootfs', 'mcdepends', ' ' + dependency) + + # Assume there is a qemu-config-X package for guest image X + d.appendVar('QEMU_GUEST_CONFIGS', ' ' + 'qemu-config-' + image) +} + +install_guest_images() { + for c in ${GUEST_IMAGES}; do + config=${c%:*} + image=${c#*:} + name=${image} + rm -rf ${IMAGE_ROOTFS}/var/lib/machines/${name} + install -m 0755 -d ${IMAGE_ROOTFS}/var/lib/machines/${name} + src="${TOPDIR}/tmp-${config}/deploy/images/${GUEST_MACHINE}/${image}-${GUEST_MACHINE}.ext4" + bbnote "Installing ${src}" + install -m 0600 ${src} ${IMAGE_ROOTFS}/var/lib/machines/${name}/ + # Placeholder until booting from kernel in VM image is worked out + install -m 0600 ${TOPDIR}/tmp-${config}/deploy/images/${GUEST_MACHINE}/Image-${GUEST_MACHINE}.bin ${IMAGE_ROOTFS}/var/lib/machines/${name}/ + done +} + +ROOTFS_POSTPROCESS_COMMAND += "install_guest_images; " + +IMAGE_ROOTFS_EXTRA_SPACE:append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "" ,d)}" diff --git a/recipes-platform/images/agl-telematics-demo-platform.bb b/recipes-platform/images/agl-telematics-demo-platform.bb deleted file mode 100644 index 7a113b65..00000000 --- a/recipes-platform/images/agl-telematics-demo-platform.bb +++ /dev/null @@ -1,13 +0,0 @@ -DESCRIPTION = "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 \ -" 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 \ +" -- cgit 1.2.3-korg