{ "id": "desktop-auto", "load": true, "supported_archs": [ "x86_64" ], "supported_host_types": [ "ubuntu", "fedora" ], "flutter_runtime": "debug", "type": "host", "env": { "FLUTTER_AUTO_SRC_DIR": "${FLUTTER_WORKSPACE}/app/ivi-homescreen", "FLUTTER_AUTO_BUILD_DIR": "${FLUTTER_WORKSPACE}/app/ivi-homescreen/build", "FLUTTER_AUTO_CMAKE_ARGS": "-DCMAKE_BUILD_TYPE=Debug -DBUILD_PLUGIN_SECURE_STORAGE=ON", "COMP_SURF_PBR_SRC_DIR": "${FLUTTER_WORKSPACE}/app/comp_surf_pbr", "COMP_SURF_PBR_BUILD_DIR": "${FLUTTER_WORKSPACE}/app/comp_surf_pbr/build", "COMP_SURF_PBR_CMAKE_ARGS": "-DCMAKE_BUILD_TYPE=Debug", "FLUTTER_AUTO_EXE": "LD_LIBRARY_PATH=${COMP_SURF_PBR_BUILD_DIR} ${FLUTTER_AUTO_BUILD_DIR}/shell/flutter-auto --j=${PLATFORM_ID_DIR_RELATIVE}/default_config.json --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}/default_config.json ${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": { "view": [ { "width": 1920, "height": 1080, "cursor_theme": "DMZ-White", "fullscreen": false } ] }, "pre-requisites": { "x86_64": { "ubuntu": { "cmds": [ "sudo snap install cmake --classic", "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-file update", "wget https://apt.llvm.org/llvm.sh", "chmod +x ./llvm.sh", "sed -i 's|add-apt-repository \"${REPO_NAME}\"|add-apt-repository -y \"${REPO_NAME}\"|g' ./llvm.sh", "sudo ./llvm.sh 14", "rm ./llvm.sh", "sudo apt install -y clang-14 lldb-14 lld-14 clangd-14 clang-tidy-14 clang-format-14 clang-tools-14 llvm-14-dev lld-14 lldb-14 llvm-14-tools libomp-14-dev libc++-14-dev libc++abi-14-dev libclang-common-14-dev libclang-14-dev libclang-cpp14-dev libunwind-14-dev", "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", "sudo apt autoremove -y", "sudo apt clean -y", "cmake --version", "clang++ --version", "apt-file search cmake", "apt-file search clang++" ] }, "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 clang clang-analyzer clang-devel clang-libs clang-resource-filesystem llvm-devel clang-tools-extra lld lld-libs lldb libcxx libcxx-devel libcxx-static libcxxabi libcxxabi-devel libcxxabi-static 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 libtool", "sudo dnf -y autoremove", "cmake --version", "clang++ --version", "dnf provides cmake", "dnf provides clang++" ] } } }, "post_cmds": [ { "ubuntu": { "env": { "CC": "/usr/bin/clang", "CXX": "/usr/bin/clang++" } }, "fedora": { "env": { "CC": "/usr/lib64/ccache/clang", "CXX": "/usr/lib64/ccache/clang++" } }, "cwd": "${FLUTTER_AUTO_BUILD_DIR}", "cmds": [ "cmake ${FLUTTER_AUTO_SRC_DIR} ${FLUTTER_AUTO_CMAKE_ARGS}", "make flutter-auto -j" ] }, { "ubuntu": { "env": { "CC": "/usr/bin/clang", "CXX": "/usr/bin/clang++" } }, "fedora": { "env": { "CC": "/usr/lib64/ccache/clang", "CXX": "/usr/lib64/ccache/clang++" } }, "cwd": "${COMP_SURF_PBR_BUILD_DIR}", "cmds": [ "cmake ${COMP_SURF_PBR_SRC_DIR} ${COMP_SURF_PBR_CMAKE_ARGS}", "make comp_surf_pbr -j" ] } ] }, "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 \"${FLUTTER_AUTO_EXE}\"", "forwardPort": null, "forwardPortSuccessRegex": null, "screenshot": null } }