-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add missing headers to the audio-players and keyboard-manager plugin #133
base: main
Are you sure you want to change the base?
Conversation
Much like flutter-pi, this package is a Flutter embedder used to run Flutter applications. However, unlike Flutter-pi, this package requires a Wayland compositor to run, which flutter-pi does not support. Furthermore, flutter-pi lacks several plugins and features that ivi-homescreen supports, such as: - Dart VM console redirection - DLT logging - Accessibility - Compositor region - Compositor surface - Desktop Window - Go Router - Isolate - Keyboard Manager - Layer Playground - Mouse Cursor - PackageInfo - Platform - Platform Views - Restoration The following plugins and options are hardcoded to off: - Crash handler: Requires a newer version of sentry-native. - File selector: Requires the zenity package. - Firebase-core: Requires the firebase-cpp-sdk package. - URL Launcher: Requires a runtime-dependency on xdg-open. - BUILD_TEXTURE_NAVI_RENDER_EGL: Failes to build. - BUILD_TEXTURE_TEST_EGL: Fails to build. - ENABLE_AGL_CLIENT: Used for Automitve Grade Linux (AGL). The ENABLE_XDG_CLIENT=ON option is a requirement to run Flutter apps. If this option is disabled, ivi-homescreen segfaults when starting an application. Finally, there is a need for a patch that fixes the audio-players plugin: If the audio-players plugin is the only plugin selected, several compilation errors occure because of undeclared definitions, as the standard_method_codec.h header file is missing. Upstream-status: toyota-connected/ivi-homescreen#133 This package has been tested on a x86_64 host with an AMD Ryzen 9 6900HS with Docker 24.0.5: - The following distributions: - Fedora 39: Host system - Ubuntu 22.04: Docker - Debian 11: Docker - The following targets: - BR2_aarch64 - BR2_arm - BR2_x86_64 Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com> [yann.morin.1998@free.fr: - propagate BR2_PACKAGE_HOST_FLUTTER_SDK_BIN_ARCH_SUPPORTS to comments - drop NPTL, implied by glibc - reorder dependencies in a more logical way - reorder comments - drop undefined BR2_PACKAGE_IVI_HOMESCREEN_HAS_CLIENT - grammar ("for to change") ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
@aduskett Hi Adam, |
Oh man, I should have included that information in the original post. Sorry about that! Build setup:
The version of ivi-homescreen: 5ab78a1 Below are instructions on how to reproduce the error:
Notes:
Buildroot also provides a docker container based on Debian 11. To use that, run: In this example, the only option enabled for ivi-homescreen is the audio-players plugin. |
Fixes flutter::StandardMethodCodec not being declared on the following lines: plugins/audio_players/audio_players_registry.cc:83 plugins/audio_players/audio_players_registry.cc:94 plugins/audio_players/audio_players_registry.cc:152 plugins/audio_players/audio_player.cc:257 plugins/audio_players/audio_player.cc:623 plugins/keyboard_manager/keyboard_manager.cc:25
7e35ea4
to
490cdd2
Compare
I found out that the keyboard-manager plugin also has the same issue, so I rebased and fixed that as well! |
Oh, I changed the patch name to package/ivi-homescreen/0001-add-missing-headers-to-the-audio-players-and-keyboar.patch in Buildroot, as the keyboard_manager plugin also has a missing flutter/standard_method_codec.h header! |
Fixes flutter::StandardMethodCodec not being declared on the following lines: plugins/audio_players/audio_players_registry.cc:83 plugins/audio_players/audio_players_registry.cc:94 plugins/audio_players/audio_players_registry.cc:152 plugins/audio_players/audio_player.cc:257
plugins/audio_players/audio_player.cc:623
plugins/keyboard_manager/keyboard_manager.cc:25