summaryrefslogtreecommitdiffstats
path: root/meta-agl-flutter/tools/configs/desktop-auto.json
blob: cb3b9e688ad0020307e3b11e10a61d0bd2f581ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
{
  "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 -DENABLE_DLT=OFF",
    "HOMESCREEN_EXE": "${HOMESCREEN_BUILD_DIR}/shell/homescreen --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",
            "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",
            "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 libtool",
            "sudo dnf -y autoremove",
            "cmake --version",
            "dnf provides cmake"
          ]
        }
      }
    },
    "post_cmds": [
      {
        "cwd": "${HOMESCREEN_BUILD_DIR}",
        "cmds": [
          "cmake ${HOMESCREEN_SRC_DIR}  ${HOMESCREEN_CMAKE_ARGS}",
          "make homescreen -j"
        ]
      }
    ]
  },
  "overwrite-existing": true,
  "custom-device": {
    "id": "desktop-auto",
    "label": "Toyota Homescreen for AGL",
    "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
  }
}