meta-agl-flutter refactor 58/27858/1
authorJoel Winarske <joel.winarske@gmail.com>
Thu, 4 Aug 2022 01:19:31 +0000 (18:19 -0700)
committerJoel Winarske <joel.winarske@gmail.com>
Thu, 4 Aug 2022 01:19:31 +0000 (18:19 -0700)
- application rename -> flutter-auto

- adopts upstream (meta-flutter) bbclass for runtime selection
  runtimedebug -> runtime=debug
  runtimeprofile -> runtime=profile
  runtimerelease -> runtime=release
  *This also affects image names*

- A discrete json files for each runtime configuration
  demuxing of runtime config happens in bbappend.

- prevent dev host conflict with flutter-auto.service in case
  of debug and profile.  The dev host machine controls
  homescreen in these scenarios.

- simplifies inc and recipes

Dependent on https://gerrit.automotivelinux.org/gerrit/c/AGL/AGL-repo/+/27850

Bug-AGL: SPEC-4326

Signed-off-by: Joel Winarske <joel.winarske@gmail.com>
Change-Id: I877811417e3befab4d48a906058dcb52c81be4ce

25 files changed:
meta-agl-flutter/classes/flutterdebug.bbclass [deleted file]
meta-agl-flutter/classes/flutterprofile.bbclass [deleted file]
meta-agl-flutter/classes/flutterrelease.bbclass [deleted file]
meta-agl-flutter/recipes-graphics/toyota/files/0001-Allow-the-embedder-to-run-as-a-regular-normal-applic.patch [deleted file]
meta-agl-flutter/recipes-graphics/toyota/files/0002-shell-configuration-Obey-json-configuration-file.patch [deleted file]
meta-agl-flutter/recipes-graphics/toyota/files/0003-shell-configuration-Fixes-to-general-options.patch [deleted file]
meta-agl-flutter/recipes-graphics/toyota/files/0004-Add-app-id-command-line-argument.patch [deleted file]
meta-agl-flutter/recipes-graphics/toyota/files/flutter-auto.service [new file with mode: 0644]
meta-agl-flutter/recipes-graphics/toyota/files/gallery_on_bg-debug.json [new file with mode: 0644]
meta-agl-flutter/recipes-graphics/toyota/files/gallery_on_bg-profile.json [new file with mode: 0644]
meta-agl-flutter/recipes-graphics/toyota/files/gallery_on_bg-release.json [moved from meta-agl-flutter/recipes-graphics/toyota/files/config.json with 73% similarity]
meta-agl-flutter/recipes-graphics/toyota/flutter-auto%.bbappend [new file with mode: 0644]
meta-agl-flutter/recipes-graphics/toyota/flutter-auto_aglflutter.inc [new file with mode: 0644]
meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-debug_%.bbappend [deleted file]
meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-debug_aglflutter.inc [deleted file]
meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-profile_%.bbappend [deleted file]
meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-profile_aglflutter.inc [deleted file]
meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-release_%.bbappend [deleted file]
meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen_aglflutter.inc [deleted file]
meta-agl-flutter/recipes-platform/images/agl-image-flutter-debug.bb [deleted file]
meta-agl-flutter/recipes-platform/images/agl-image-flutter-profile.bb [deleted file]
meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimedebug.bb [new file with mode: 0644]
meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimeprofile.bb [new file with mode: 0644]
meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimerelease.bb [new file with mode: 0644]
meta-agl-flutter/recipes-platform/images/agl-image-flutter.bb [deleted file]

diff --git a/meta-agl-flutter/classes/flutterdebug.bbclass b/meta-agl-flutter/classes/flutterdebug.bbclass
deleted file mode 100644 (file)
index 158ddb3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-FLUTTER_RUNTIME = "debug"
diff --git a/meta-agl-flutter/classes/flutterprofile.bbclass b/meta-agl-flutter/classes/flutterprofile.bbclass
deleted file mode 100644 (file)
index 38d114e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-FLUTTER_RUNTIME = "profile"
diff --git a/meta-agl-flutter/classes/flutterrelease.bbclass b/meta-agl-flutter/classes/flutterrelease.bbclass
deleted file mode 100644 (file)
index cf75bc1..0000000
+++ /dev/null
@@ -1 +0,0 @@
-FLUTTER_RUNTIME = "release"
diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/0001-Allow-the-embedder-to-run-as-a-regular-normal-applic.patch b/meta-agl-flutter/recipes-graphics/toyota/files/0001-Allow-the-embedder-to-run-as-a-regular-normal-applic.patch
deleted file mode 100644 (file)
index 5b63e20..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-From 7f3f913ec5bea1d94c04f8a029db659c33e56dbf Mon Sep 17 00:00:00 2001
-From: Marius Vlad <mv0@users.noreply.github.com>
-Date: Sun, 24 Jul 2022 21:15:54 +0300
-Subject: [PATCH 1/3] Allow the embedder to run as a regular/normal application
- (#71)
-
-* shell: Do not issue always the ready request
-
-Rather than sending the ready request always, just do it when we've
-found at least a background type of surface.
-
-This way we can have a flutter instance as a regular application but
-also as a shell client.
-
-This is a work-around for the time being, a much more suitable approach
-would be to have a mechanism that tells us when the client has finished
-loading or has it's first frame swapped (or something similar to that).
-
-Note that we need at least a background surface so not finding one
-assumes that we're a regular application (WINDOW_NORMAL).
-
-Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
-* shell: Do not attempt always bind to agl-shell interface
-
-This helps up running as a regular application in
-situations where we already have a client bound to the agl-shell
-interface.
-
-We can't really accept more than one client to bind to the interface and
-without a change in the protocol to avoid racy situations, it seems more
-natural for the embedder to infer if it actually needs to do that.
-
-When the protocol has been updated to include additional events to let
-clients that they've lost the race, we can remove this change.
-
-Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-
-Co-authored-by: Marius Vlad <marius.vlad@collabora.com>
----
- shell/app.cc             | 13 +++++++++++--
- shell/wayland/display.cc | 18 +++++++++++++++---
- shell/wayland/display.h  |  8 +++++++-
- shell/wayland/window.h   |  2 +-
- 4 files changed, 34 insertions(+), 7 deletions(-)
-
-diff --git a/shell/app.cc b/shell/app.cc
-index 03c33ff..3ca183b 100644
---- a/shell/app.cc
-+++ b/shell/app.cc
-@@ -25,8 +25,10 @@
- App::App(const std::vector<Configuration::Config>& configs)
-     : m_wayland_display(std::make_shared<Display>(!configs[0].disable_cursor,
--                                                  configs[0].cursor_theme)) {
-+                                                  configs[0].cursor_theme,
-+                                                  configs)) {
-   FML_DLOG(INFO) << "+App::App";
-+  bool found_view_with_bg = false;
-   size_t index = 0;
-   m_views.reserve(configs.size());
-@@ -35,9 +37,16 @@ App::App(const std::vector<Configuration::Config>& configs)
-     view->Initialize();
-     m_views.emplace_back(std::move(view));
-     index++;
-+
-+    if (WaylandWindow::get_window_type(cfg.view.window_type) ==
-+        WaylandWindow::WINDOW_BG)
-+      found_view_with_bg = true;
-   }
--  m_wayland_display->AglShellDoReady();
-+  // check that if we had a BG type and issue a ready() request for it,
-+  // otherwise we're going to assume that this is a NORMAL/REGULAR application.
-+  if (found_view_with_bg)
-+    m_wayland_display->AglShellDoReady();
-   FML_DLOG(INFO) << "-App::App";
- }
-diff --git a/shell/wayland/display.cc b/shell/wayland/display.cc
-index 06eba8c..5d78471 100644
---- a/shell/wayland/display.cc
-+++ b/shell/wayland/display.cc
-@@ -27,7 +27,9 @@
- #include "constants.h"
- #include "engine.h"
--Display::Display(bool enable_cursor, std::string cursor_theme_name)
-+Display::Display(bool enable_cursor,
-+                 std::string cursor_theme_name,
-+                 const std::vector<Configuration::Config>& configs)
-     : m_xkb_context(xkb_context_new(XKB_CONTEXT_NO_FLAGS)),
-       m_buffer_scale(1),
-       m_last_buffer_scale(m_buffer_scale),
-@@ -35,6 +37,15 @@ Display::Display(bool enable_cursor, std::string cursor_theme_name)
-       m_cursor_theme_name(std::move(cursor_theme_name)) {
-   FML_DLOG(INFO) << "+ Display()";
-+  for (auto const& cfg : configs) {
-+    // check if we actually need to bind to agl-shell
-+    auto window_type = WaylandWindow::get_window_type(cfg.view.window_type);
-+    if (window_type != WaylandWindow::WINDOW_NORMAL) {
-+      m_bind_to_agl_shell = true;
-+      break;
-+    }
-+  }
-+
-   m_display = wl_display_connect(nullptr);
-   if (m_display == nullptr) {
-     FML_LOG(ERROR) << "Failed to connect to Wayland display. "
-@@ -46,7 +57,7 @@ Display::Display(bool enable_cursor, std::string cursor_theme_name)
-   wl_registry_add_listener(m_registry, &registry_listener, this);
-   wl_display_dispatch(m_display);
--  if (!m_agl_shell) {
-+  if (!m_agl_shell && m_bind_to_agl_shell) {
-     FML_LOG(INFO) << "agl_shell extension not present";
-   }
-@@ -152,7 +163,8 @@ void Display::registry_handle_global(void* data,
-         wl_registry_bind(registry, name, &wl_seat_interface,
-                          std::min(static_cast<uint32_t>(5), version)));
-     wl_seat_add_listener(d->m_seat, &seat_listener, d);
--  } else if (strcmp(interface, agl_shell_interface.name) == 0) {
-+  } else if (strcmp(interface, agl_shell_interface.name) == 0 &&
-+             d->m_bind_to_agl_shell) {
-     d->m_agl_shell = static_cast<struct agl_shell*>(
-         wl_registry_bind(registry, name, &agl_shell_interface,
-                          std::min(static_cast<uint32_t>(1), version)));
-diff --git a/shell/wayland/display.h b/shell/wayland/display.h
-index af3d460..bf05b27 100644
---- a/shell/wayland/display.h
-+++ b/shell/wayland/display.h
-@@ -32,11 +32,15 @@
- #include "static_plugins/text_input/text_input.h"
- #include "xdg-shell-client-protocol.h"
-+#include "configuration/configuration.h"
-+
- class Engine;
- class Display {
-  public:
--  explicit Display(bool enable_cursor, std::string cursor_theme_name);
-+  explicit Display(bool enable_cursor,
-+                   std::string cursor_theme_name,
-+                   const std::vector<Configuration::Config>& configs);
-   ~Display();
-@@ -96,6 +100,8 @@ class Display {
-   struct wl_shm* m_shm{};
-   struct wl_surface* m_base_surface{};
-+  bool m_bind_to_agl_shell = false;
-+
-   std::map<wl_surface*, Engine*> m_surface_engine_map;
-   wl_surface* m_active_surface{};
-   Engine* m_active_engine{};
-diff --git a/shell/wayland/window.h b/shell/wayland/window.h
-index c4fe5e6..4b5c726 100644
---- a/shell/wayland/window.h
-+++ b/shell/wayland/window.h
-@@ -79,6 +79,7 @@ class WaylandWindow {
-   wl_surface* GetBaseSurface() { return m_base_surface; }
-   uint32_t m_fps_counter;
-+  static window_type get_window_type(const std::string& type);
-  private:
-   struct shm_buffer {
-@@ -157,5 +158,4 @@ class WaylandWindow {
-   static const struct wl_callback_listener frame_listener;
--  static window_type get_window_type(const std::string& type);
- };
--- 
-2.35.3
-
diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/0002-shell-configuration-Obey-json-configuration-file.patch b/meta-agl-flutter/recipes-graphics/toyota/files/0002-shell-configuration-Obey-json-configuration-file.patch
deleted file mode 100644 (file)
index b9a864c..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-From 36c7deb35719d2219dc6e868ab14d9a4ce984d1f Mon Sep 17 00:00:00 2001
-From: Marius Vlad <marius.vlad@collabora.com>
-Date: Mon, 25 Jul 2022 15:51:06 +0300
-Subject: [PATCH 2/3] shell/configuration: Obey json configuration file
-
-Setting the name of the application to kApplicationName, by default,
-would cause the check in getCliOverrides to always be true, which in
-turn will ignore whatever the user specified in the configuration file.
-
-Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
----
- shell/configuration/configuration.cc | 2 ++
- shell/main.cc                        | 2 +-
- 2 files changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/shell/configuration/configuration.cc b/shell/configuration/configuration.cc
-index f8b1e13..616de48 100644
---- a/shell/configuration/configuration.cc
-+++ b/shell/configuration/configuration.cc
-@@ -220,6 +220,8 @@ std::vector<struct Configuration::Config> Configuration::ParseConfig(
-     if (cfg.view.height == 0) {
-       cfg.view.height = kDefaultViewHeight;
-     }
-+    if (cfg.app_id.empty())
-+      cfg.app_id = kApplicationName;
-     res.emplace_back(cfg);
-   }
-diff --git a/shell/main.cc b/shell/main.cc
-index 65c3f37..6fdd907 100644
---- a/shell/main.cc
-+++ b/shell/main.cc
-@@ -44,7 +44,7 @@ void RemoveArgument(std::vector<std::string>& args, const std::string& arg) {
- int main(int argc, char** argv) {
-   struct Configuration::Config config {
--    .app_id = kApplicationName, .json_configuration_path{}, .cursor_theme{},
-+    .app_id = {}, .json_configuration_path{}, .cursor_theme{},
-     .disable_cursor{}, .debug_backend{}, .view {}
-   };
--- 
-2.35.3
-
diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/0003-shell-configuration-Fixes-to-general-options.patch b/meta-agl-flutter/recipes-graphics/toyota/files/0003-shell-configuration-Fixes-to-general-options.patch
deleted file mode 100644 (file)
index f06d454..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-From a3a1421c3986bbafd9f91997eec7f2606ef67fc3 Mon Sep 17 00:00:00 2001
-From: Marius Vlad <marius.vlad@collabora.com>
-Date: Mon, 25 Jul 2022 15:53:17 +0300
-Subject: [PATCH 3/3] shell/configuration: Fixes to general options
-
-This patch avoids an automatic overwrite of the debug_backend and
-disable_cursor entries. If enabled in the configuration file, the test
-will always return true, basically overwriting to false.
-
-Also, use the correct entry in the README file for debug_backend.
-
-Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
----
- README.md                            | 2 +-
- shell/configuration/configuration.cc | 6 ++++--
- 2 files changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/README.md b/README.md
-index 7c162eb..d459f4c 100644
---- a/README.md
-+++ b/README.md
-@@ -175,7 +175,7 @@ Loads Single View
- {
-    "disable_cursor":true,
--   "backend_debug":true,
-+   "debug_backend":true,
-    "accessibility_features":31,
-    "view":{
-       "bundle_path":"/home/joel/development/gallery/.homescreen/x86/release",
-diff --git a/shell/configuration/configuration.cc b/shell/configuration/configuration.cc
-index 616de48..773724c 100644
---- a/shell/configuration/configuration.cc
-+++ b/shell/configuration/configuration.cc
-@@ -152,10 +152,12 @@ void Configuration::getCliOverrides(Config& instance, Config& cli) {
-   if (!cli.cursor_theme.empty()) {
-     instance.cursor_theme = cli.cursor_theme;
-   }
--  if (cli.disable_cursor != instance.disable_cursor) {
-+  if (cli.disable_cursor == true &&
-+      cli.disable_cursor != instance.disable_cursor) {
-     instance.disable_cursor = cli.disable_cursor;
-   }
--  if (cli.debug_backend != instance.debug_backend) {
-+  if (cli.debug_backend == true &&
-+      cli.debug_backend != instance.debug_backend) {
-     instance.debug_backend = cli.debug_backend;
-   }
-   if (!cli.view.vm_args.empty()) {
--- 
-2.35.3
-
diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/0004-Add-app-id-command-line-argument.patch b/meta-agl-flutter/recipes-graphics/toyota/files/0004-Add-app-id-command-line-argument.patch
deleted file mode 100644 (file)
index 6b9d4c3..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-From 6a62efbebcdf17e3af57f04603aa5f0d61b0c1e2 Mon Sep 17 00:00:00 2001
-From: Scott Murray <scott.murray@konsulko.com>
-Date: Wed, 27 Jul 2022 18:23:32 -0400
-Subject: [PATCH] Add app-id command-line argument
-
-Add a command-line argument for specifying the app id, so that basic
-applications do not need to supply a full JSON configuration just to
-do so.
-
-Signed-off-by: Scott Murray <scott.murray@konsulko.com>
----
- shell/main.cc | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/shell/main.cc b/shell/main.cc
-index 6fdd907..662b7d1 100644
---- a/shell/main.cc
-+++ b/shell/main.cc
-@@ -151,6 +151,16 @@ int main(int argc, char** argv) {
-       FML_DLOG(INFO) << "Cursor Theme: " << config.cursor_theme;
-       RemoveArgument(config.view.vm_args, "--t=" + config.cursor_theme);
-     }
-+    if (cl.HasOption("app-id")) {
-+      cl.GetOptionValue("app-id", &config.app_id);
-+      if (config.app_id.empty()) {
-+        FML_LOG(ERROR)
-+            << "--app-id option requires an argument (e.g. --app-id=gallery)";
-+        return EXIT_FAILURE;
-+      }
-+      FML_DLOG(INFO) << "Application ID: " << config.app_id;
-+      RemoveArgument(config.view.vm_args, "--app-id=" + config.app_id);
-+    }
-   }
-   auto vm_arg_count = config.view.vm_args.size();
--- 
-2.35.3
-
diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/flutter-auto.service b/meta-agl-flutter/recipes-graphics/toyota/files/flutter-auto.service
new file mode 100644 (file)
index 0000000..71ab791
--- /dev/null
@@ -0,0 +1,10 @@
+[Unit]
+Requires=agl-compositor.service
+After=agl-compositor.service
+
+[Service]
+ExecStart=/usr/bin/flutter-auto --j=/usr/share/flutter/default.json
+Restart=on-failure
+
+[Install]
+WantedBy=agl-session.target
diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/gallery_on_bg-debug.json b/meta-agl-flutter/recipes-graphics/toyota/files/gallery_on_bg-debug.json
new file mode 100644 (file)
index 0000000..5a84a0b
--- /dev/null
@@ -0,0 +1,11 @@
+{
+        "view" : [ {
+                "window_type" : "BG",
+                "bundle_path" : "/usr/share/flutter/gallery",
+                "vm_args":["--observatory-host", "0.0.0.0", "--observatory-port", "1234"],
+                "width" : 1920,
+                "height": 1080,
+                "fullscreen": true
+                }
+        ]
+}
diff --git a/meta-agl-flutter/recipes-graphics/toyota/files/gallery_on_bg-profile.json b/meta-agl-flutter/recipes-graphics/toyota/files/gallery_on_bg-profile.json
new file mode 100644 (file)
index 0000000..3309fde
--- /dev/null
@@ -0,0 +1,11 @@
+{
+        "view" : [ {
+                "window_type" : "BG",
+                "bundle_path" : "/usr/share/flutter/gallery",
+                "vm_args":["--observatory-host", "0.0.0.0", "--observatory-port", "1234", "--start-paused"],
+                "width" : 1920,
+                "height": 1080,
+                "fullscreen": true
+                }
+        ]
+}
@@ -3,7 +3,8 @@
                 "window_type" : "BG",
                 "bundle_path" : "/usr/share/flutter/gallery",
                 "width" : 1920,
-                "height": 1080
+                "height": 1080,
+                "fullscreen": true
                 }
         ]
 }
diff --git a/meta-agl-flutter/recipes-graphics/toyota/flutter-auto%.bbappend b/meta-agl-flutter/recipes-graphics/toyota/flutter-auto%.bbappend
new file mode 100644 (file)
index 0000000..dbc82bc
--- /dev/null
@@ -0,0 +1 @@
+require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', 'flutter-auto_aglflutter.inc', '', d)}
diff --git a/meta-agl-flutter/recipes-graphics/toyota/flutter-auto_aglflutter.inc b/meta-agl-flutter/recipes-graphics/toyota/flutter-auto_aglflutter.inc
new file mode 100644 (file)
index 0000000..4baaa51
--- /dev/null
@@ -0,0 +1,47 @@
+# For now disable gstreamer to avoid needing to enable "commercial"
+# licenses for the stated ffmpeg dependency.
+PACKAGECONFIG:remove = "gstreamer"
+
+# Enable verbose logging on runtimedebug image
+PACKAGECONFIG:append:runtimedebug = "verbose"
+
+
+USER_SERVICE = "flutter-auto.service"
+
+FILESEXTRAPATHS:append := "${THISDIR}/files:"
+SRC_URI += "\
+    file://${USER_SERVICE} \
+    file://gallery_on_bg-debug.json \
+    file://gallery_on_bg-profile.json \
+    file://gallery_on_bg-release.json \
+    file://0002-shell-configuration-Obey-json-configuration-file.patch \
+    file://0003-shell-configuration-Fixes-to-general-options.patch \
+    file://0004-Add-app-id-command-line-argument.patch \
+    "
+
+
+cmake_do_install:append() {
+
+    install -d ${D}${systemd_user_unitdir}/agl-session.target.wants
+    install -D -m0644 ${WORKDIR}/${USER_SERVICE} ${D}${systemd_user_unitdir}/${USER_SERVICE}
+
+    install -D -m0644 ${WORKDIR}/gallery_on_bg-release.json ${D}${datadir}/flutter/default.json
+}
+
+cmake_do_install:append:runtimedebug() {
+
+    # the dev host controls starting/stopping the flutter-auto process when runtime=debug
+    install -D -m0644 ${WORKDIR}/gallery_on_bg-debug.json ${D}${datadir}/flutter/default.json
+}
+
+cmake_do_install:append:runtimeprofile() {
+
+    # the dev host controls starting/stopping the flutter-auto process when runtime=profile
+    install -D -m0644 ${WORKDIR}/gallery_on_bg-profile.json ${D}${datadir}/flutter/default.json
+}
+
+
+FILES:${PN} += "\
+    ${systemd_user_unitdir} \
+    ${datadir} \
+    "
diff --git a/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-debug_%.bbappend b/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-debug_%.bbappend
deleted file mode 100644 (file)
index ea695b9..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', 'ivi-homescreen_aglflutter.inc', '', d)}
-require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', '${BPN}_aglflutter.inc', '', d)}
diff --git a/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-debug_aglflutter.inc b/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-debug_aglflutter.inc
deleted file mode 100644 (file)
index ebc1806..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-# debug package specifics
-SERVICE_EXEC_START_PARAMS = "--observatory-host 0.0.0.0 --observatory-port 1234"
diff --git a/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-profile_%.bbappend b/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-profile_%.bbappend
deleted file mode 100644 (file)
index ed5c880..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', 'ivi-homescreen_aglflutter.inc', '', d)}
-require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', '${BPN}_aglflutter.inc', '', d)}
-
diff --git a/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-profile_aglflutter.inc b/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-profile_aglflutter.inc
deleted file mode 100644 (file)
index 0d3176a..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-# profile specific commands
-SERVICE_EXEC_START_PARAMS = "--observatory-host 0.0.0.0 --observatory-port 1234 --start-paused"
-
-
diff --git a/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-release_%.bbappend b/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen-release_%.bbappend
deleted file mode 100644 (file)
index 05cac72..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', 'ivi-homescreen_aglflutter.inc', '', d)}
-# not used atm
-#require ${@bb.utils.contains('AGL_FEATURES', 'agl-flutter', '${BPN}_aglflutter.inc', '', d)}
diff --git a/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen_aglflutter.inc b/meta-agl-flutter/recipes-graphics/toyota/ivi-homescreen_aglflutter.inc
deleted file mode 100644 (file)
index 3fea926..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-FILESEXTRAPATHS:append := "${THISDIR}/files:"
-
-SRC_URI += " \
-    file://0001-Allow-the-embedder-to-run-as-a-regular-normal-applic.patch \
-    file://0002-shell-configuration-Obey-json-configuration-file.patch \
-    file://0003-shell-configuration-Fixes-to-general-options.patch \
-    file://0004-Add-app-id-command-line-argument.patch \
-    file://config.json \
-"
-
-# Upstream is now pinning ivi-homescreen, but if it did need to be pinned
-# it can be done here.
-#SRCREV = ""
-
-# For now disable gstreamer to avoid needing to enable "commercial"
-# licenses for the stated ffmpeg dependency.
-PACKAGECONFIG:remove = "gstreamer"
-
-#
-# AGL specifics
-#
-
-IVI_HOMESCREEN_APP_OVERRIDE = "--b=/usr/share/flutter/gallery --j=/usr/share/flutter/config.json"
-
-SERVICE_UNIT        = "Requires=agl-compositor.service\nAfter=agl-compositor.service"
-SERVICE_INSTALL     = "WantedBy=agl-session.target"
-
-# The "homescreen" naming of the embedder binary conflicts with the
-# Qt homescreen in meta-agl-demo.  At least for now, rename it to
-# allow running Flutter apps in an image that uses the Qt homescreen
-# and launcher for testing.
-SERVICE_EXEC_START  = "ExecStart=/usr/bin/flutter --f ${IVI_HOMESCREEN_APP_OVERRIDE} ${SERVICE_EXEC_START_PARAMS}"
-
-# we have a regular/agl-driver user, so avoid setting one
-SERVICE_ENVIRONMENT = ""
-SERVICE_USER_GROUP  = ""
-SERVICE_RESTART            = "Restart=on-failure"
-
-# we need to install as user session, not root.
-do_install:append() {
-    # The system level systemd unit is not required in AGL
-    rm -f ${D}{systemd_system_unitdir}/homescreen.service
-
-    install -d ${D}${systemd_user_unitdir}/agl-session.target.wants
-    install -D -m 0644 ${WORKDIR}/config.json ${D}${datadir}/flutter/config.json
-    install -m 0644 ${WORKDIR}/homescreen.service ${D}${systemd_user_unitdir}/homescreen.service
-    ln -s ../homescreen.service ${D}${systemd_user_unitdir}/agl-session.target.wants/homescreen.service
-
-    # Rename embedder binary, see explanation above
-    mv ${D}${bindir}/homescreen ${D}${bindir}/flutter
-}
-
-# Split the embedder binary into a separate package to allow reusing it
-# without the generated upstream systemd unit that ATM is still useful
-# for testing with the agl-image-flutter image.  AGL will use either
-# the applaunchd systemd template or custom units in meta-agl-demo.
-PACKAGE_BEFORE_PN = "flutter-embedder-${FLUTTER_RUNTIME}"
-
-FILES:flutter-embedder-${FLUTTER_RUNTIME} = "${bindir}"
-
-FILES:${PN} += "${systemd_user_unitdir} ${datadir}/flutter/config.json"
-
-RDEPENDS:${PN} += "flutter-embedder-${FLUTTER_RUNTIME}"
-
-RDEPENDS:flutter-embedder-${FLUTTER_RUNTIME} += "flutter-engine-${FLUTTER_RUNTIME}"
diff --git a/meta-agl-flutter/recipes-platform/images/agl-image-flutter-debug.bb b/meta-agl-flutter/recipes-platform/images/agl-image-flutter-debug.bb
deleted file mode 100644 (file)
index 2c24699..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "Baseline Flutter Image for Development"
-
-LICENSE = "MIT"
-
-require agl-image-flutter.inc
-
-IMAGE_INSTALL:append = "\
-    weston-ini-conf-landscape \
-    \
-    ivi-homescreen-debug \
-    flutter-engine-debug \
-    \
-    flutter-gallery-debug \
-    flutter-test-secure-storage-debug \
-    flutter-test-texture-egl-debug \
-    flutter-test-video-player-debug \
-    \
-    flutter-app-igalia-homescreen-debug \
-    flutter-app-pumped-fuel-ped-debug \
-    "
diff --git a/meta-agl-flutter/recipes-platform/images/agl-image-flutter-profile.bb b/meta-agl-flutter/recipes-platform/images/agl-image-flutter-profile.bb
deleted file mode 100644 (file)
index 33ae39c..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "Baseline Flutter Image for Profiling"
-
-LICENSE = "MIT"
-
-require agl-image-flutter.inc
-
-IMAGE_INSTALL:append = "\
-    weston-ini-conf-landscape \
-    \
-    ivi-homescreen-profile \
-    flutter-engine-profile \
-    \
-    flutter-gallery-profile \
-    flutter-test-secure-storage-profile \
-    flutter-test-texture-egl-profile \
-    flutter-test-video-player-profile \
-    \
-    flutter-app-igalia-homescreen-profile \
-    flutter-app-pumped-fuel-ped-profile        \
-    "
diff --git a/meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimedebug.bb b/meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimedebug.bb
new file mode 100644 (file)
index 0000000..6c41259
--- /dev/null
@@ -0,0 +1,21 @@
+SUMMARY = "Baseline Flutter Image for Development"
+
+LICENSE = "MIT"
+
+require agl-image-flutter.inc
+
+IMAGE_INSTALL:append = "\
+    weston-ini-conf-landscape \
+    \
+    flutter-auto-runtimedebug \
+    \
+    flutter-engine-runtimedebug-sdk-dev \
+    \
+    flutter-gallery-runtimedebug \
+    flutter-test-texture-egl-runtimedebug \
+    flutter-test-secure-storage-runtimedebug \
+    flutter-test-localization-runtimedebug \
+    \
+    flutter-app-igalia-homescreen-runtimedebug \
+    flutter-app-pumped-fuel-ped-runtimedebug \
+    "
diff --git a/meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimeprofile.bb b/meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimeprofile.bb
new file mode 100644 (file)
index 0000000..a69302b
--- /dev/null
@@ -0,0 +1,19 @@
+SUMMARY = "Baseline Flutter Image for Profiling"
+
+LICENSE = "MIT"
+
+require agl-image-flutter.inc
+
+IMAGE_INSTALL:append = "\
+    weston-ini-conf-landscape \
+    \
+    flutter-auto-runtimeprofile \
+    \
+    flutter-gallery-runtimeprofile \
+    flutter-test-texture-egl-runtimeprofile \
+    flutter-test-secure-storage-runtimeprofile \
+    flutter-test-localization-runtimeprofile \
+    \
+    flutter-app-igalia-homescreen-runtimeprofile \
+    flutter-app-pumped-fuel-ped-runtimeprofile \
+    "
diff --git a/meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimerelease.bb b/meta-agl-flutter/recipes-platform/images/agl-image-flutter-runtimerelease.bb
new file mode 100644 (file)
index 0000000..cf60e8b
--- /dev/null
@@ -0,0 +1,19 @@
+SUMMARY = "Baseline Flutter Image for Release"
+
+LICENSE = "MIT"
+
+require agl-image-flutter.inc
+
+IMAGE_INSTALL:append = "\
+    weston-ini-conf-landscape \
+    \
+    flutter-auto-runtimerelease \
+    \
+    flutter-gallery-runtimerelease \
+    flutter-test-texture-egl-runtimerelease \
+    flutter-test-secure-storage-runtimerelease \
+    flutter-test-localization-runtimerelease \
+    \
+    flutter-app-igalia-homescreen-runtimerelease \
+    flutter-app-pumped-fuel-ped-runtimerelease \
+    "
diff --git a/meta-agl-flutter/recipes-platform/images/agl-image-flutter.bb b/meta-agl-flutter/recipes-platform/images/agl-image-flutter.bb
deleted file mode 100644 (file)
index 8380942..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "Baseline Flutter Image for Release"
-
-LICENSE = "MIT"
-
-require agl-image-flutter.inc
-
-IMAGE_INSTALL:append = "\
-    weston-ini-conf-landscape \
-    \
-    ivi-homescreen-release \
-    flutter-engine-release \
-    \
-    flutter-gallery-release \
-    flutter-test-secure-storage-release \
-    flutter-test-texture-egl-release \
-    flutter-test-video-player-release \
-    \
-    flutter-app-igalia-homescreen-flutterrelease \
-    flutter-app-pumped-fuel-ped-flutterrelease \
-    "