summaryrefslogtreecommitdiffstats
path: root/meta-agl-flutter/tools/configs
diff options
context:
space:
mode:
Diffstat (limited to 'meta-agl-flutter/tools/configs')
-rw-r--r--meta-agl-flutter/tools/configs/_globals.json5
-rw-r--r--meta-agl-flutter/tools/configs/_repos.json16
-rw-r--r--meta-agl-flutter/tools/configs/agl-qemu-master.json114
-rw-r--r--meta-agl-flutter/tools/configs/agl-qemu-octopus.json114
-rw-r--r--meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.0.json112
-rw-r--r--meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.1.json112
-rw-r--r--meta-agl-flutter/tools/configs/desktop-auto.json93
7 files changed, 566 insertions, 0 deletions
diff --git a/meta-agl-flutter/tools/configs/_globals.json b/meta-agl-flutter/tools/configs/_globals.json
new file mode 100644
index 000000000..1830c8d40
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/_globals.json
@@ -0,0 +1,5 @@
+{
+ "flutter-version": "3.24.1",
+ "github_token": "",
+ "cookie_file": ""
+}
diff --git a/meta-agl-flutter/tools/configs/_repos.json b/meta-agl-flutter/tools/configs/_repos.json
new file mode 100644
index 000000000..5fb8aa047
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/_repos.json
@@ -0,0 +1,16 @@
+[
+ {
+ "uri": "https://github.com/toyota-connected/ivi-homescreen.git",
+ "rev": "e87c1797f838e20f0a4c1af309541d63986058ca",
+ "branch": "v2.0"
+ },
+ {
+ "uri": "https://github.com/toyota-connected/ivi-homescreen-plugins.git",
+ "rev": "41d00635f89c064aa32f2cef3147c59b8f61694f",
+ "branch": "v2.0"
+ },
+ {
+ "uri": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
+ "branch": "main"
+ }
+]
diff --git a/meta-agl-flutter/tools/configs/agl-qemu-master.json b/meta-agl-flutter/tools/configs/agl-qemu-master.json
new file mode 100644
index 000000000..dae014a58
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/agl-qemu-master.json
@@ -0,0 +1,114 @@
+{
+ "id": "agl-qemu-master",
+ "load": true,
+ "supported_archs": [
+ "x86_64",
+ "arm64"
+ ],
+ "supported_host_types": [
+ "darwin",
+ "ubuntu",
+ "fedora"
+ ],
+ "flutter_runtime": "debug",
+ "type": "qemu",
+ "env": {
+ "RELEASE_NAME": "master",
+ "RELEASE_VERSION": "latest",
+ "FLUTTER_DEBUG_PORT": "1234",
+ "FLUTTER_OBSERVATORY_HOST": "0.0.0.0",
+ "CONTAINER_SSH_PORT": "2222",
+ "DEVICE_HOSTNAME": "localhost",
+ "FLUTTER_AUTO_EXE": "flutter-auto --j=/tmp/${appName}/default_config.json --b=/tmp/${appName}",
+ "PING_CMD": "(echo >/dev/tcp/localhost/${CONTAINER_SSH_PORT}) &>/dev/null && echo open || echo closed",
+ "DELETE_USER_PWD": "ssh -oStrictHostKeyChecking=no -p ${CONTAINER_SSH_PORT} -t -oBatchMode=yes root@${DEVICE_HOSTNAME} passwd -d agl-driver",
+ "CREATE_BUNDLE_FOLDER": "ssh -oStrictHostKeyChecking=no -p ${CONTAINER_SSH_PORT} -o BatchMode=yes agl-driver@${DEVICE_HOSTNAME} mkdir -p /tmp/${appName}/data",
+ "COPY_PLATFORM_ID_TO_DEVICE": "scp -oStrictHostKeyChecking=no -P ${CONTAINER_SSH_PORT} -r ${PLATFORM_ID_DIR}/default_config.json agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/",
+ "COPY_ASSETS_TO_DEVICE": "scp -oStrictHostKeyChecking=no -P ${CONTAINER_SSH_PORT} -r ${localPath}/* agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/data/flutter_assets",
+ "DELETE_APP_FOLDER": "ssh -oStrictHostKeyChecking=no -p ${CONTAINER_SSH_PORT} -o BatchMode=yes agl-driver@${DEVICE_HOSTNAME} rm -rf /tmp/${appName}"
+ },
+ "runtime": {
+ "config": {
+ "view": [
+ {
+ "window_type": "BG",
+ "width": 1920,
+ "height": 1080
+ }
+ ]
+ },
+ "pre-requisites": {
+ "arm64": {
+ "darwin": {
+ "cmds": [
+ "bash -c \"arch -arm64 brew install xz\"",
+ "bash -c \"arch -arm64 brew install qemu\""
+ ]
+ }
+ }
+ },
+ "artifacts": {
+ "http": {
+ "url": "https://download.automotivelinux.org/AGL/snapshots/${RELEASE_NAME}/${RELEASE_VERSION}",
+ "artifacts": {
+ "x86_64": [
+ {
+ "endpoint": "/qemux86-64/deploy/images/qemux86-64/agl-ivi-demo-platform-flutter-qemux86-64.wic.vmdk.xz"
+ }
+ ],
+ "arm64": [
+ {
+ "endpoint": "/qemuarm64/deploy/images/qemuarm64/agl-demo-platform-crosssdk-qemuarm64.ext4.xz"
+ },
+ {
+ "endpoint": "/qemuarm64/deploy/images/qemuarm64/Image-qemuarm64.bin"
+ }
+ ]
+ }
+ }
+ },
+ "qemu": {
+ "cmd": "qemu-system-${FORMAL_MACHINE_ARCH}",
+ "x86_64": {
+ "image": "agl-ivi-demo-platform-flutter-qemux86-64.wic.vmdk",
+ "args": "-m 2048 ${QEMU_EXTRA} -hda ${QEMU_IMAGE} -cpu kvm64 -cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -vga virtio -device virtio-rng-pci -serial mon:stdio -serial null -device intel-hda -device hda-duplex -device virtio-net-pci,netdev=net0,mac=${RANDOM_MAC} -netdev user,id=net0,hostfwd=tcp::${CONTAINER_SSH_PORT}-:22,hostfwd=tcp::${FLUTTER_DEBUG_PORT}-:${FLUTTER_DEBUG_PORT}"
+ },
+ "arm64": {
+ "kernel": "Image-qemuarm64.bin",
+ "image": "agl-demo-platform-crosssdk-qemuarm64.ext4",
+ "args": "-accel hvf -cpu host -M virt ${QEMU_EXTRA} -m 4096 -device virtio-gpu-pci -nographic -display cocoa,show-cursor=on -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0 -device qemu-xhci -device usb-tablet -device usb-mouse -device usb-kbd -device virtio-net-pci,netdev=vnet -netdev user,id=vnet,hostfwd=tcp::${CONTAINER_SSH_PORT}-:22,hostfwd=tcp::${FLUTTER_DEBUG_PORT}-:${FLUTTER_DEBUG_PORT} -kernel ${QEMU_KERNEL} -drive file=${QEMU_IMAGE},format=raw,if=virtio -append root=/dev/vda"
+ },
+ "extra": {
+ "darwin": "-smp cpus=8,sockets=1,cores=8,threads=1",
+ "ubuntu": "-bios OVMF.fd",
+ "fedora": "-bios /usr/share/edk2/ovmf/OVMF_CODE.fd"
+ }
+ },
+ "post_cmds": [
+ {
+ "cwd": "${PLATFORM_ID_DIR}",
+ "cmds": [
+ "bash -c \"rm ${QEMU_IMAGE}|true\"",
+ "unxz --keep ${QEMU_IMAGE}.xz"
+ ]
+ }
+ ]
+ },
+ "overwrite-existing": true,
+ "custom-device": {
+ "id": "agl-qemu-${RELEASE_NAME}",
+ "label": "AGL ${RELEASE_NAME}-${RELEASE_VERSION} QEMU Image",
+ "sdkNameAndVersion": "qemu-${RELEASE_NAME} ${RELEASE_VERSION}",
+ "platform": "linux-x64",
+ "enabled": true,
+ "ping": "bash -c \"${PING_CMD}\"",
+ "pingSuccessRegex": "open",
+ "postBuild": "bash -c \"${DELETE_USER_PWD}\"",
+ "install": "bash -c \"${CREATE_BUNDLE_FOLDER} && ${COPY_PLATFORM_ID_TO_DEVICE} && ${COPY_ASSETS_TO_DEVICE}\"",
+ "uninstall": "bash -c \"${DELETE_APP_FOLDER}\"",
+ "runDebug": "bash -c \"ssh -oStrictHostKeyChecking=no -t -t -o BatchMode=yes agl-driver@${DEVICE_HOSTNAME} ${FLUTTER_AUTO_EXE}\"",
+ "forwardPort": null,
+ "forwardPortSuccessRegex": null,
+ "screenshot": null
+ }
+}
diff --git a/meta-agl-flutter/tools/configs/agl-qemu-octopus.json b/meta-agl-flutter/tools/configs/agl-qemu-octopus.json
new file mode 100644
index 000000000..20e20e0c1
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/agl-qemu-octopus.json
@@ -0,0 +1,114 @@
+{
+ "id": "agl-qemu-octopus",
+ "load": true,
+ "supported_archs": [
+ "x86_64",
+ "arm64"
+ ],
+ "supported_host_types": [
+ "darwin",
+ "ubuntu",
+ "fedora"
+ ],
+ "flutter_runtime": "debug",
+ "type": "qemu",
+ "env": {
+ "RELEASE_NAME": "octopus",
+ "RELEASE_VERSION": "latest",
+ "FLUTTER_DEBUG_PORT": "1234",
+ "FLUTTER_OBSERVATORY_HOST": "0.0.0.0",
+ "CONTAINER_SSH_PORT": "2222",
+ "DEVICE_HOSTNAME": "localhost",
+ "FLUTTER_AUTO_EXE": "flutter-auto --j=/tmp/${appName}/default_config.json --b=/tmp/${appName}",
+ "PING_CMD": "(echo >/dev/tcp/localhost/${CONTAINER_SSH_PORT}) &>/dev/null && echo open || echo closed",
+ "DELETE_USER_PWD": "ssh -oStrictHostKeyChecking=no -p ${CONTAINER_SSH_PORT} -t -oBatchMode=yes root@${DEVICE_HOSTNAME} passwd -d agl-driver",
+ "CREATE_BUNDLE_FOLDER": "ssh -oStrictHostKeyChecking=no -p ${CONTAINER_SSH_PORT} -o BatchMode=yes agl-driver@${DEVICE_HOSTNAME} mkdir -p /tmp/${appName}/data",
+ "COPY_PLATFORM_ID_TO_DEVICE": "scp -oStrictHostKeyChecking=no -P ${CONTAINER_SSH_PORT} -r ${PLATFORM_ID_DIR}/default_config.json agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/",
+ "COPY_ASSETS_TO_DEVICE": "scp -oStrictHostKeyChecking=no -P ${CONTAINER_SSH_PORT} -r ${localPath}/* agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/data/flutter_assets",
+ "DELETE_APP_FOLDER": "ssh -oStrictHostKeyChecking=no -p ${CONTAINER_SSH_PORT} -o BatchMode=yes agl-driver@${DEVICE_HOSTNAME} rm -rf /tmp/${appName}"
+ },
+ "runtime": {
+ "config": {
+ "view": [
+ {
+ "window_type": "BG",
+ "width": 1920,
+ "height": 1080
+ }
+ ]
+ },
+ "pre-requisites": {
+ "arm64": {
+ "darwin": {
+ "cmds": [
+ "bash -c \"arch -arm64 brew install xz\"",
+ "bash -c \"arch -arm64 brew install qemu\""
+ ]
+ }
+ }
+ },
+ "artifacts": {
+ "http": {
+ "url": "https://download.automotivelinux.org/AGL/release/${RELEASE_NAME}/${RELEASE_VERSION}",
+ "artifacts": {
+ "x86_64": [
+ {
+ "endpoint": "/qemux86-64/deploy/images/qemux86-64/agl-ivi-demo-platform-flutter-qemux86-64.wic.vmdk.xz"
+ }
+ ],
+ "arm64": [
+ {
+ "endpoint": "/qemuarm64/deploy/images/qemuarm64/agl-demo-platform-crosssdk-qemuarm64.ext4.xz"
+ },
+ {
+ "endpoint": "/qemuarm64/deploy/images/qemuarm64/Image-qemuarm64.bin"
+ }
+ ]
+ }
+ }
+ },
+ "qemu": {
+ "cmd": "qemu-system-${FORMAL_MACHINE_ARCH}",
+ "x86_64": {
+ "image": "agl-ivi-demo-platform-flutter-qemux86-64.wic.vmdk",
+ "args": "-m 2048 ${QEMU_EXTRA} -hda ${QEMU_IMAGE} -cpu kvm64 -cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -vga virtio -device virtio-rng-pci -serial mon:stdio -serial null -device intel-hda -device hda-duplex -device virtio-net-pci,netdev=net0,mac=${RANDOM_MAC} -netdev user,id=net0,hostfwd=tcp::${CONTAINER_SSH_PORT}-:22,hostfwd=tcp::${FLUTTER_DEBUG_PORT}-:${FLUTTER_DEBUG_PORT}"
+ },
+ "arm64": {
+ "kernel": "Image-qemuarm64.bin",
+ "image": "agl-demo-platform-crosssdk-qemuarm64.ext4",
+ "args": "-accel hvf -cpu host -M virt ${QEMU_EXTRA} -m 4096 -device virtio-gpu-pci -nographic -display cocoa,show-cursor=on -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0 -device qemu-xhci -device usb-tablet -device usb-mouse -device usb-kbd -device virtio-net-pci,netdev=vnet -netdev user,id=vnet,hostfwd=tcp::${CONTAINER_SSH_PORT}-:22,hostfwd=tcp::${FLUTTER_DEBUG_PORT}-:${FLUTTER_DEBUG_PORT} -kernel ${QEMU_KERNEL} -drive file=${QEMU_IMAGE},format=raw,if=virtio -append root=/dev/vda"
+ },
+ "extra": {
+ "darwin": "-smp cpus=8,sockets=1,cores=8,threads=1",
+ "ubuntu": "-bios OVMF.fd",
+ "fedora": "-bios /usr/share/edk2/ovmf/OVMF_CODE.fd"
+ }
+ },
+ "post_cmds": [
+ {
+ "cwd": "${PLATFORM_ID_DIR}",
+ "cmds": [
+ "bash -c \"rm ${QEMU_IMAGE}|true\"",
+ "unxz --keep ${QEMU_IMAGE}.xz"
+ ]
+ }
+ ]
+ },
+ "overwrite-existing": true,
+ "custom-device": {
+ "id": "agl-qemu-${RELEASE_NAME}",
+ "label": "AGL ${RELEASE_NAME}-${RELEASE_VERSION} QEMU Image",
+ "sdkNameAndVersion": "qemu-${RELEASE_NAME} ${RELEASE_VERSION}",
+ "platform": "linux-x64",
+ "enabled": true,
+ "ping": "bash -c \"${PING_CMD}\"",
+ "pingSuccessRegex": "open",
+ "postBuild": "bash -c \"${DELETE_USER_PWD}\"",
+ "install": "bash -c \"${CREATE_BUNDLE_FOLDER} && ${COPY_PLATFORM_ID_TO_DEVICE} && ${COPY_ASSETS_TO_DEVICE}\"",
+ "uninstall": "bash -c \"${DELETE_APP_FOLDER}\"",
+ "runDebug": "bash -c \"ssh -oStrictHostKeyChecking=no -t -t -o BatchMode=yes agl-driver@${DEVICE_HOSTNAME} ${FLUTTER_AUTO_EXE}\"",
+ "forwardPort": null,
+ "forwardPortSuccessRegex": null,
+ "screenshot": null
+ }
+}
diff --git a/meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.0.json b/meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.0.json
new file mode 100644
index 000000000..c03e34707
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.0.json
@@ -0,0 +1,112 @@
+{
+ "id": "agl-qemu-ricefish-18.0.0",
+ "load": true,
+ "supported_archs": [
+ "x86_64"
+ ],
+ "supported_host_types": [
+ "darwin",
+ "ubuntu",
+ "fedora"
+ ],
+ "flutter_runtime": "debug",
+ "type": "qemu",
+ "env": {
+ "RELEASE_NAME": "ricefish",
+ "RELEASE_VERSION": "18.0.0",
+ "FLUTTER_VERSION": "3.24.1",
+ "QEMU_IMAGE": "agl-ivi-demo-flutter-qemux86-64.wic.vmdk",
+ "FLUTTER_DEBUG_PORT": "1234",
+ "FLUTTER_OBSERVATORY_HOST": "0.0.0.0",
+ "CONTAINER_SSH_PORT": "2222",
+ "DEVICE_HOSTNAME": "localhost",
+ "SCP_PREFIX": "scp -oStrictHostKeyChecking=no -P ${CONTAINER_SSH_PORT}",
+ "SSH_PREFIX": "ssh -oStrictHostKeyChecking=no -oBatchMode=yes -p ${CONTAINER_SSH_PORT}",
+ "FLUTTER_AUTO_EXE": "LIBCAMERA_LOG_LEVELS=*:ERROR XDG_RUNTIME_DIR=/run/user/1001/ flutter-auto --j=/tmp/${appName}/default_config.json --b=/tmp/${appName}",
+ "PING_CMD": "(echo >/dev/tcp/localhost/${CONTAINER_SSH_PORT}) &>/dev/null && echo open || echo closed",
+ "DELETE_USER_PWD": "${SSH_PREFIX} -t root@${DEVICE_HOSTNAME} passwd -d agl-driver",
+ "STOP_SERVICE": "${SSH_PREFIX} -t root@${DEVICE_HOSTNAME} systemctl stop flutter-ics-homescreen",
+ "DEBUG_ARTIFACT_PATH": "/usr/share/flutter/${FLUTTER_VERSION}/debug",
+ "CREATE_ICUDTL_SYMLINK": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} ln -sf ${DEBUG_ARTIFACT_PATH}/data/icudtl.dat /tmp/${appName}/data/icudtl.dat",
+ "CREATE_ENGINE_SYMLINK": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} ln -sf ${DEBUG_ARTIFACT_PATH}/lib/libflutter_engine.so /tmp/${appName}/lib/libflutter_engine.so",
+ "CREATE_BUNDLE_FOLDER": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} mkdir -p /tmp/${appName}{/data/flutter_assets,/lib}",
+ "COPY_PLATFORM_ID_TO_DEVICE": "${SCP_PREFIX} -r ${PLATFORM_ID_DIR}/default_config.json agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/",
+ "COPY_ASSETS_TO_DEVICE": "${SCP_PREFIX} -r ${localPath}/* agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/data/flutter_assets",
+ "DELETE_APP_FOLDER": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} rm -rf /tmp/${appName}"
+ },
+ "runtime": {
+ "pre-requisites": {
+ "x86_64": {
+ "ubuntu": {
+ "cmds": [
+ "sudo apt install -y qemu-system-x86-64"
+ ]
+ },
+ "fedora": {
+ "cmds": [
+ "sudo dnf install -y qemu"
+ ]
+ }
+ }
+ },
+ "config": {
+ "view": [
+ {
+ "window_type": "BG",
+ "width": 1920,
+ "height": 1080
+ }
+ ]
+ },
+ "artifacts": {
+ "http": {
+ "url": "https://download.automotivelinux.org/AGL/release/${RELEASE_NAME}/${RELEASE_VERSION}",
+ "artifacts": {
+ "x86_64": [
+ {
+ "endpoint": "/qemux86-64/deploy/images/qemux86-64/${QEMU_IMAGE}.xz"
+ }
+ ]
+ }
+ }
+ },
+ "qemu": {
+ "cmd": "qemu-system-${FORMAL_MACHINE_ARCH}",
+ "x86_64": {
+ "image": "${QEMU_IMAGE}",
+ "args": "-m 2048 ${QEMU_EXTRA} -hda ${QEMU_IMAGE} -cpu kvm64 -cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -vga virtio -device virtio-rng-pci -serial mon:stdio -serial null -device intel-hda -device hda-duplex -device virtio-net-pci,netdev=net0,mac=${RANDOM_MAC} -netdev user,id=net0,hostfwd=tcp::${CONTAINER_SSH_PORT}-:22,hostfwd=tcp::${FLUTTER_DEBUG_PORT}-:${FLUTTER_DEBUG_PORT}"
+ },
+ "extra": {
+ "darwin": "-smp cpus=8,sockets=1,cores=8,threads=1",
+ "ubuntu": "-bios OVMF.fd",
+ "fedora": "-bios /usr/share/edk2/ovmf/OVMF_CODE.fd"
+ }
+ },
+ "post_cmds": [
+ {
+ "cwd": "${PLATFORM_ID_DIR}",
+ "cmds": [
+ "bash -c \"rm ${QEMU_IMAGE}|true\"",
+ "unxz --keep ${QEMU_IMAGE}.xz"
+ ]
+ }
+ ]
+ },
+ "overwrite-existing": true,
+ "custom-device": {
+ "id": "agl-qemu-${RELEASE_NAME}",
+ "label": "AGL ${RELEASE_NAME}-${RELEASE_VERSION} QEMU Image",
+ "sdkNameAndVersion": "qemu-${RELEASE_NAME} ${RELEASE_VERSION}",
+ "platform": "linux-x64",
+ "enabled": true,
+ "ping": "bash -c \"${PING_CMD}\"",
+ "pingSuccessRegex": "open",
+ "postBuild": "bash -c \"${DELETE_USER_PWD}; ${STOP_SERVICE}\"; ",
+ "install": "bash -c \"${CREATE_BUNDLE_FOLDER} && ${COPY_PLATFORM_ID_TO_DEVICE} && ${COPY_ASSETS_TO_DEVICE} && ${CREATE_ICUDTL_SYMLINK} && ${CREATE_ENGINE_SYMLINK}\"",
+ "uninstall": "bash -c \"${DELETE_APP_FOLDER}\"",
+ "runDebug": "bash -c \"${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} ${FLUTTER_AUTO_EXE}\"",
+ "forwardPort": null,
+ "forwardPortSuccessRegex": null,
+ "screenshot": null
+ }
+}
diff --git a/meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.1.json b/meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.1.json
new file mode 100644
index 000000000..fde1e13ac
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/agl-qemu-ricefish-18.0.1.json
@@ -0,0 +1,112 @@
+{
+ "id": "agl-qemu-ricefish-18.0.1",
+ "load": true,
+ "supported_archs": [
+ "x86_64"
+ ],
+ "supported_host_types": [
+ "darwin",
+ "ubuntu",
+ "fedora"
+ ],
+ "flutter_runtime": "debug",
+ "type": "qemu",
+ "env": {
+ "RELEASE_NAME": "ricefish",
+ "RELEASE_VERSION": "18.0.1",
+ "FLUTTER_VERSION": "3.24.1",
+ "QEMU_IMAGE": "agl-ivi-demo-flutter-qemux86-64.wic.vmdk",
+ "FLUTTER_DEBUG_PORT": "1234",
+ "FLUTTER_OBSERVATORY_HOST": "0.0.0.0",
+ "CONTAINER_SSH_PORT": "2222",
+ "DEVICE_HOSTNAME": "localhost",
+ "SCP_PREFIX": "scp -oStrictHostKeyChecking=no -P ${CONTAINER_SSH_PORT}",
+ "SSH_PREFIX": "ssh -oStrictHostKeyChecking=no -oBatchMode=yes -p ${CONTAINER_SSH_PORT}",
+ "FLUTTER_AUTO_EXE": "LIBCAMERA_LOG_LEVELS=*:ERROR XDG_RUNTIME_DIR=/run/user/1001/ flutter-auto --j=/tmp/${appName}/default_config.json --b=/tmp/${appName}",
+ "PING_CMD": "(echo >/dev/tcp/localhost/${CONTAINER_SSH_PORT}) &>/dev/null && echo open || echo closed",
+ "DELETE_USER_PWD": "${SSH_PREFIX} -t root@${DEVICE_HOSTNAME} passwd -d agl-driver",
+ "STOP_SERVICE": "${SSH_PREFIX} -t root@${DEVICE_HOSTNAME} systemctl stop flutter-ics-homescreen",
+ "DEBUG_ARTIFACT_PATH": "/usr/share/flutter/${FLUTTER_VERSION}/debug",
+ "CREATE_ICUDTL_SYMLINK": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} ln -sf ${DEBUG_ARTIFACT_PATH}/data/icudtl.dat /tmp/${appName}/data/icudtl.dat",
+ "CREATE_ENGINE_SYMLINK": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} ln -sf ${DEBUG_ARTIFACT_PATH}/lib/libflutter_engine.so /tmp/${appName}/lib/libflutter_engine.so",
+ "CREATE_BUNDLE_FOLDER": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} mkdir -p /tmp/${appName}{/data/flutter_assets,/lib}",
+ "COPY_PLATFORM_ID_TO_DEVICE": "${SCP_PREFIX} -r ${PLATFORM_ID_DIR}/default_config.json agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/",
+ "COPY_ASSETS_TO_DEVICE": "${SCP_PREFIX} -r ${localPath}/* agl-driver@${DEVICE_HOSTNAME}:/tmp/${appName}/data/flutter_assets",
+ "DELETE_APP_FOLDER": "${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} rm -rf /tmp/${appName}"
+ },
+ "runtime": {
+ "pre-requisites": {
+ "x86_64": {
+ "ubuntu": {
+ "cmds": [
+ "sudo apt install -y qemu-system-x86-64"
+ ]
+ },
+ "fedora": {
+ "cmds": [
+ "sudo dnf install -y qemu"
+ ]
+ }
+ }
+ },
+ "config": {
+ "view": [
+ {
+ "window_type": "BG",
+ "width": 1920,
+ "height": 1080
+ }
+ ]
+ },
+ "artifacts": {
+ "http": {
+ "url": "https://download.automotivelinux.org/AGL/release/${RELEASE_NAME}/${RELEASE_VERSION}",
+ "artifacts": {
+ "x86_64": [
+ {
+ "endpoint": "/qemux86-64/deploy/images/qemux86-64/${QEMU_IMAGE}.xz"
+ }
+ ]
+ }
+ }
+ },
+ "qemu": {
+ "cmd": "qemu-system-${FORMAL_MACHINE_ARCH}",
+ "x86_64": {
+ "image": "${QEMU_IMAGE}",
+ "args": "-m 2048 ${QEMU_EXTRA} -hda ${QEMU_IMAGE} -cpu kvm64 -cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -vga virtio -device virtio-rng-pci -serial mon:stdio -serial null -device intel-hda -device hda-duplex -device virtio-net-pci,netdev=net0,mac=${RANDOM_MAC} -netdev user,id=net0,hostfwd=tcp::${CONTAINER_SSH_PORT}-:22,hostfwd=tcp::${FLUTTER_DEBUG_PORT}-:${FLUTTER_DEBUG_PORT}"
+ },
+ "extra": {
+ "darwin": "-smp cpus=8,sockets=1,cores=8,threads=1",
+ "ubuntu": "-bios OVMF.fd",
+ "fedora": "-bios /usr/share/edk2/ovmf/OVMF_CODE.fd"
+ }
+ },
+ "post_cmds": [
+ {
+ "cwd": "${PLATFORM_ID_DIR}",
+ "cmds": [
+ "bash -c \"rm ${QEMU_IMAGE}|true\"",
+ "unxz --keep ${QEMU_IMAGE}.xz"
+ ]
+ }
+ ]
+ },
+ "overwrite-existing": true,
+ "custom-device": {
+ "id": "agl-qemu-${RELEASE_NAME}",
+ "label": "AGL ${RELEASE_NAME}-${RELEASE_VERSION} QEMU Image",
+ "sdkNameAndVersion": "qemu-${RELEASE_NAME} ${RELEASE_VERSION}",
+ "platform": "linux-x64",
+ "enabled": true,
+ "ping": "bash -c \"${PING_CMD}\"",
+ "pingSuccessRegex": "open",
+ "postBuild": "bash -c \"${DELETE_USER_PWD}; ${STOP_SERVICE}\"; ",
+ "install": "bash -c \"${CREATE_BUNDLE_FOLDER} && ${COPY_PLATFORM_ID_TO_DEVICE} && ${COPY_ASSETS_TO_DEVICE} && ${CREATE_ICUDTL_SYMLINK} && ${CREATE_ENGINE_SYMLINK}\"",
+ "uninstall": "bash -c \"${DELETE_APP_FOLDER}\"",
+ "runDebug": "bash -c \"${SSH_PREFIX} agl-driver@${DEVICE_HOSTNAME} ${FLUTTER_AUTO_EXE}\"",
+ "forwardPort": null,
+ "forwardPortSuccessRegex": null,
+ "screenshot": null
+ }
+}
diff --git a/meta-agl-flutter/tools/configs/desktop-auto.json b/meta-agl-flutter/tools/configs/desktop-auto.json
new file mode 100644
index 000000000..977a20679
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/desktop-auto.json
@@ -0,0 +1,93 @@
+{
+ "id": "desktop-auto",
+ "load": true,
+ "supported_archs": [
+ "x86_64"
+ ],
+ "supported_host_types": [
+ "ubuntu",
+ "fedora"
+ ],
+ "flutter_runtime": "debug",
+ "type": "host",
+ "env": {
+ "HOMESCREEN_SRC_DIR": "${FLUTTER_WORKSPACE}/app/ivi-homescreen",
+ "HOMESCREEN_BUILD_DIR": "${FLUTTER_WORKSPACE}/app/ivi-homescreen/build",
+ "HOMESCREEN_CMAKE_ARGS": "-DCMAKE_BUILD_TYPE=Debug -DEXE_OUTPUT_NAME=flutter-auto -DSANITIZE_ADDRESS=OFF -DENABLE_DLT=OFF -DBUILD_UNIT_TESTS=OFF -DBUILD_DOCS=OFF -DBUILD_CRASH_HANDLER=OFF -DLLVM_ROOT=/usr -DPLUGINS_DIR=${FLUTTER_WORKSPACE}/app/ivi-homescreen-plugins -DENABLE_IVI_SHELL_CLIENT=OFF -DENABLE_XDG_CLIENT=ON -DENABLE_AGL_SHELL_CLIENT=ON -DENABLE_LTO=ON -DDEBUG_PLATFORM_MESSAGES=OFF -DBUILD_BACKEND_WAYLAND_EGL=ON -DBUILD_BACKEND_WAYLAND_VULKAN=OFF -DBUILD_EGL_TRANSPARENCY=ON -DBUILD_EGL_ENABLE_3D=ON -DBUILD_EGL_ENABLE_MULTISAMPLE=ON -DBUILD_PLUGIN_PDF=OFF -DBUILD_PLUGIN_FILAMENT_VIEW=OFF -DBUILD_PLUGIN_NAV_RENDER_VIEW=ON -DBUILD_PLUGIN_AUDIOPLAYERS_LINUX=ON -DBUILD_PLUGIN_URL_LAUNCHER=ON -DBUILD_PLUGIN_FILE_SELECTOR=ON -DBUILD_PLUGIN_CAMERA=OFF -DBUILD_PLUGIN_GO_ROUTER=ON -DBUILD_PLUGIN_SECURE_STORAGE=ON -DBUILD_PLUGIN_DESKTOP_WINDOW_LINUX=ON -DBUILD_WATCHDOG=OFF",
+ "HOMESCREEN_EXE": "SPDLOG_LEVEL=debug ${HOMESCREEN_BUILD_DIR}/shell/flutter-auto -b ${PLATFORM_ID_DIR_RELATIVE}",
+ "PING_CMD": "loginctl show-session $(awk '/tty/ {print $1}' <(loginctl)) -p Type",
+ "CREATE_BUNDLE_FOLDER": "mkdir -p ${PLATFORM_ID_DIR_RELATIVE}/data",
+ "COPY_PLATFORM_ID_TO_BUNDLE_FOLDER": "cp -r ${PLATFORM_ID_DIR}/config.toml ${PLATFORM_ID_DIR_RELATIVE}/",
+ "COPY_BUNDLE_FOLDER_TO_PLATOFRM_ID": "cp -r ${BUNDLE_FOLDER}/* ${PLATFORM_ID_DIR_RELATIVE}/",
+ "CREATE_ASSET_SYMLINK": "ln -rsf build/flutter_assets ${PLATFORM_ID_DIR_RELATIVE}/data/flutter_assets",
+ "STAGE_BUNDLE_FOLDER": "${CREATE_BUNDLE_FOLDER} && ${COPY_PLATFORM_ID_TO_BUNDLE_FOLDER} && ${COPY_BUNDLE_FOLDER_TO_PLATOFRM_ID} && ${CREATE_ASSET_SYMLINK}"
+ },
+ "runtime": {
+ "config": {
+ "global": {"cursor_theme": "DMZ-White"},
+ "view": {"width": 1024, "height": 768}
+ },
+ "pre-requisites": {
+ "x86_64": {
+ "ubuntu": {
+ "cmds": [
+ "sudo snap install cmake --classic",
+ "pip3 install clang",
+ "sudo add-apt-repository -y ppa:kisak/kisak-mesa",
+ "sudo apt update -y",
+ "sudo apt install lsb-release wget software-properties-common gnupg apt-file",
+ "sudo apt update",
+ "sudo apt install -y libwayland-dev wayland-protocols mesa-common-dev libegl1-mesa-dev libgles2-mesa-dev mesa-utils libxkbcommon-dev ninja-build",
+ "sudo apt install -y build-essential libvulkan-dev vulkan-tools vulkan-validationlayers vulkan-utils libtool libsecret-1-dev libsdl2-dev libjpeg-dev zenity",
+ "sudo apt install -y libllvm-ocaml-dev llvm llvm-dev llvm-runtime clang clang-tools libclang-dev libclang1 clang-format clangd clang-tidy lldb lld libc++-dev libc++abi-dev libunwind-dev libc++1 libc++abi1",
+ "sudo apt autoremove -y",
+ "sudo apt clean -y",
+ "cmake --version",
+ "apt-file search cmake"
+ ]
+ },
+ "fedora": {
+ "cmds": [
+ "sudo dnf -y update",
+ "sudo dnf -y upgrade",
+ "sudo dnf -y install wayland-devel wayland-protocols-devel libxkbcommon-devel cmake ninja-build mesa-dri-drivers mesa-filesystem mesa-libEGL-devel mesa-libGL-devel mesa-libGLU-devel mesa-libgbm-devel mesa-libglapi mesa-libxatracker mesa-vulkan-drivers vulkan-tools libunwind-devel gstreamer1-devel gstreamer1-plugins-base-devel gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras gstreamer1-plugins-base-tools gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly-free",
+ "sudo dnf -y install libcxx-devel libcxx-static libcxxabi-devel libcxxabi-static ninja-build lld libtool SDL2-devel libsecret-devel zenity",
+ "sudo dnf -y autoremove",
+ "cmake --version",
+ "dnf provides cmake"
+ ]
+ }
+ }
+ },
+ "post_cmds": [
+ {
+ "env": {
+ "CC": "/usr/bin/clang",
+ "CXX": "/usr/bin/clang++"
+ },
+ "cwd": "${HOMESCREEN_BUILD_DIR}",
+ "cmds": [
+ "cmake -GNinja ${HOMESCREEN_SRC_DIR} ${HOMESCREEN_CMAKE_ARGS}",
+ "ninja flutter-auto"
+ ]
+ }
+ ]
+ },
+ "overwrite-existing": true,
+ "custom-device": {
+ "id": "desktop-auto",
+ "label": "Toyota flutter-auto",
+ "sdkNameAndVersion": "flutter-auto x86_64",
+ "platform": "linux-x64",
+ "enabled": true,
+ "ping": "bash -c \"${PING_CMD}\"",
+ "pingSuccessRegex": "Type=wayland",
+ "postBuild": "bash -c \"rm -rf ${PLATFORM_ID_DIR_RELATIVE}\"",
+ "install": "bash -c \"${STAGE_BUNDLE_FOLDER}\"",
+ "uninstall": "bash -c \"rm -rf ${PLATFORM_ID_DIR_RELATIVE}\"",
+ "runDebug": "bash -c \"${HOMESCREEN_EXE}\"",
+ "forwardPort": null,
+ "forwardPortSuccessRegex": null,
+ "screenshot": null
+ }
+}