GithubHelp home page GithubHelp logo

jwinarske / meta-flutter Goto Github PK

View Code? Open in Web Editor NEW
44.0 7.0 22.0 2.91 MB

Yocto meta layer for recipes related to using Google Flutter Engine

License: MIT License

BitBake 68.84% NASL 31.16%
flutter bitbake yocto-layer yocto flutter-engine meta-flutter yocto-meta-layer wayland pugixml

meta-flutter's Introduction

meta-flutter

Notice: Layer has moved to https://github.com/meta-flutter/meta-flutter. Redirection will be automatic in the next couple of weeks.

Yocto Layer for Flutter related artifacts.

Recommended development flow starts with making an embedder run on desktop, then target. This approach will save you a good deal of time and aggrevation.

Note: In theory Swift Shader (CPU render) engine builds should work with the right build flags. Be warned it won't work out of the box. Select a SoC with a GPU that supports OpenGL 3.0+ and save yourself the Engineering NRE.

Note: If you get a gray screen running the Gallery app, chances are you don't have LC_ALL set. Check /usr/share/locale/ on your target for available locale, and set LC_ALL appropriately. Example: export LC_ALL=en_GB

Layers dependencies

  • meta-clang Toyota and Sony embedders

Overview

Target BSP is expected to have a GPU with OpenGLES v3.0+ support.

This layer includes recipes to build

  • flutter-engine (channel selection, default is beta)
  • flutter-sdk (channel selection, default is beta)
  • fltter-gallery Application (interpreted and AOT - requires master channel override)
  • flutter-pi (DRM w/VSync)
  • flutter-wayland (basic POC) / waylandpp/ipugxml (archived)
  • Toyota ivi-homescreen (Recommended)
  • Sony embedders

Notes

Targets flutter-engine is known to work on

  • AGL QEMU images - x86_64
  • DragonBoard 410c - aarch64
  • Intel MinnowBoard Max (BayTrail) - intel-icore7-64
  • NVIDIA Nano Dev Kit - aarch64
  • NVIDIA Xavier NX Dev Kit - aarch64
  • Raspberry Pi 3 / Compute - aarch64 / armv7hf
  • Raspberry Pi 4 / Compute - aarch64
  • Renesas R-Car m3ulcb - aarch64
  • STM32MP157x - cortexa7t2hf
  • etc, etc

Building for ARM (32-bit) has an outstanding P4 bug on this: flutter/flutter#83765

NVIDIA Xavier/Nano

local.conf changes

TARGET_GCC_VERSION = "8.3.0"
FLUTTER_CHANNEL = "master"
IMAGE_INSTALL_append = " flutter-drm-eglstream-backend"
IMAGE_INSTALL_append = " flutter-gallery"

OR

TARGET_GCC_VERSION = "8.3.0"
FLUTTER_CHANNEL = "master"
CORE_IMAGE_EXTRA_INSTALL += "\
    flutter-drm-eglstream-backend \
    flutter-gallery \
"

Build EGL image

bitbake demo-image-egl

Run Flutter application on target (defaults to AOT)

FLUTTER_DRM_DEVICE=/dev/dri/card0 flutter-drm-eglstream-backend -b /usr/share/flutter-gallery/sony

NXP i.MX 8QuadXPlus MEK

repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-gatesgarth -m imx-5.10.9-1.0.0.xml
repo sync -j20
DISTRO=fslc-wayland MACHINE=imx8qxpmek source setup-environment build
pushd ../sources
git clone -b dunfell https://github.com/jwinarske/meta-flutter.git
popd
bitbake-layers add-layer ../sources/meta-clang ../sources/meta-flutter
echo -e 'TARGET_GCC_VERSION = "10.2.0"' >> conf/local.conf
echo -e 'FLUTTER_CHANNEL = "dev"' >> conf/local.conf
echo -e 'IMAGE_INSTALL_append = " flutter-wayland"' >> conf/local.conf
echo -e 'IMAGE_INSTALL_append = " flutter-gallery"' >> conf/local.conf
bitbake fsl-image-multimedia
...
Build Configuration:
BB_VERSION           = "1.48.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "aarch64-fslc-linux"
MACHINE              = "imx8qxpmek"
DISTRO               = "fslc-wayland"
DISTRO_VERSION       = "3.2-snapshot-20210616"
TUNE_FEATURES        = "aarch64 armv8a crc cortexa35 crypto"
TARGET_FPU           = ""

Raspberry PI 3/4 (aarch64)

export MACHINE=raspberrypi4-64

or

export MACHINE=raspberrypi3-64
mkdir rpi_yocto && cd rpi_yocto
repo init -u https://github.com/jwinarske/manifests.git -m rpi64.xml -b dunfell
repo sync -j20
source ./setup-environment $MACHINE
bitbake-layers add-layer ../sources/meta-clang ../sources/meta-flutter
echo -e 'FLUTTER_CHANNEL = "dev"' >> conf/local.conf
echo -e 'IMAGE_INSTALL_append = " flutter-pi"' >> conf/local.conf
echo -e 'IMAGE_INSTALL_append = " flutter-gallery"' >> conf/local.conf
bitbake core-image-minimal

Note: you may want/need to increase the GPU_MEM value. It's defaulting to 64.

STM32MP157x Discovery Board (doesn't include build hack)

Setup Ubuntu 16.04 for building Yocto images. envsetup.sh will complain if you're missing a package.

mkdir openstlinux-5.10-dunfell-mp1-21-03-31 && cd openstlinux-5.10-dunfell-mp1-21-03-31
repo init -u https://github.com/STMicroelectronics/oe-manifest.git -b refs/tags/openstlinux-5.10-dunfell-mp1-21-03-31
repo sync -j20
DISTRO=openstlinux-eglfs MACHINE=stm32mp1-disco source layers/meta-st/scripts/envsetup.sh
pushd ../layers
git clone -b dunfell https://github.com/jwinarske/meta-flutter.git
git clone -b dunfell https://github.com/kraj/meta-clang.git
popd
bitbake-layers add-layer ../layers/meta-flutter ../layers/meta-clang
echo -e 'MACHINE_FEATURES_remove = "fip"\n' >> conf/local.conf
echo -e 'DISTRO_FEATURES_remove = "wayland"\n' >> conf/local.conf
echo -e 'DISTRO_FEATURES_remove = "x11"\n' >> conf/local.conf
echo -e 'FLUTTER_CHANNEL = "master"\n' >> conf/local.conf
echo -e 'CORE_IMAGE_EXTRA_INSTALL += " \' >> conf/local.conf
echo -e '  flutter-pi \' >> conf/local.conf
echo -e '  flutter-drm-gbm-backend \' >> conf/local.conf
echo -e '  flutter-gallery \' >> conf/local.conf
echo -e '"' >> conf/local.conf
cat conf/local.conf
bitbake st-image-core
...
TARGET_SYS      = "arm-ostl-linux-gnueabi"
MACHINE         = "stm32mp1-disco"
DISTRO          = "openstlinux-eglfs"
DISTRO_VERSION  = "3.1-snapshot-20210602"
TUNE_FEATURES   = "arm vfp cortexa7 neon vfpv4 thumb callconvention-hard"
TARGET_FPU      = "hard"

See release notes regarding "fip": https://wiki.st.com/stm32mpu/wiki/STM32MP15_OpenSTLinux_release_note

Build EGL image

bitbake demo-image-egl

Run Flutter application on target (defaults to AOT)

FLUTTER_DRM_DEVICE=/dev/dri/card0 flutter-drm-eglstream-backend -b /usr/share/flutter-gallery/sony

General Yocto Notes

When building on systems with GCC version > than uninative in Yocto distro add the following to conf/local.conf

INHERIT_remove = "uninative"

meta-flutter's People

Contributors

dsa-t avatar jwinarske avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

meta-flutter's Issues

flutter-engine: vpython leaks out of sysroot

vpython appears to use the user's home directory, which causes it to break out of the bitbake sysroot. This could cause clashes between parallel builders, or version issues between different sysroots.

Steps to reproduce

  1. Remove ~/.vpython-root -- sudo rm -rf ~/.vpython-root
  2. Create it as a file: touch ~/.vpython-root
  3. Attempt to build flutter-engine

Results:

ERROR: flutter-engine-git-r0 do_patch: Execution of '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/temp/run.do_patch.7676' failed with exit code 1:
Python 2.7.17+chromium.22
[E2021-07-16T15:30:52.430598Z 8951 0 annotate.go:273] original error: not a directory

goroutine 1:
#0 go.chromium.org/luci/common/system/filesystem/filesystem.go:37 - filesystem.MakeDirs()
#1 go.chromium.org/luci/vpython/venv/config.go:199 - venv.(*Config).makeEnv()
  reason: could not create environment root: /home/user/.vpython-root

#2 go.chromium.org/luci/vpython/venv/venv.go:150 - venv.With()
  reason: failed to initialize empty probe environment

#3 go.chromium.org/luci/vpython/run.go:62 - vpython.Run()
#4 go.chromium.org/luci/vpython/application/application.go:320 - application.(*application).mainImpl()
#5 go.chromium.org/luci/vpython/application/application.go:408 - application.(*Config).Main.func1()
#6 go.chromium.org/luci/vpython/application/support.go:46 - application.run()
#7 go.chromium.org/luci/vpython/application/application.go:407 - application.(*Config).Main()
#8 vpython/main.go:110 - main.mainImpl()
#9 vpython/main.go:116 - main.main()
#10 runtime/proc.go:225 - runtime.main()
#11 runtime/asm_amd64.s:1371 - runtime.goexit()
WARNING: exit code 1 from a shell command.

running flutter-gallery on rpi 3

Hey I was wondering if you could tell me how to run the gallery app on the raspberry pi

I followed the readme and setup everything to make the DRM version work.
The flutter-pi command itself is working however I'm not sure how to run the gallery-app

running "flutter-pi /usr/share/flutter-gallery/sony/data/flutter_assets leaves me with an error telling me that there's
no icutl.dat file inside /usr/share/flutter/

and running "flutter-pi /usr/share/flutter-gallery/sony/data/" tells me that there's no kernel.blob file inside "/usr/share/flutter-gallery/sony/data/" for debug mode

trying to run in release mode is telling me that there's no app.so inside the data folder

Flutter v1.17+

What changes in the flutter-engine recipe file would I have to make so that it builds successfully for the latest flutter-stable engine?

flutter_wayland start failed on core-image-weston

env already set
XDG_RUNTIME_DIR=/run/user/0/ ,
and weston-terminal or gtk3-demos works well

but flutter_wayland crash
flutter_wayland /usr/share/flutter-gallery/sony/data

logs:
LOG: /usr/src/debug/flutter-wayland/git-r0/git/src/main.cc:65: Arg: /usr/share/flutter-gallery/sony/data/flutter_assets/
Keyboard Present
assets_path: /usr/share/flutter-gallery/sony/data/flutter_assets/
load_aot: 0
[ERROR:flutter/runtime/dart_vm_data.cc(18)] VM snapshot invalid and could not be inferred from settings.
[ERROR:flutter/runtime/dart_vm.cc(256)] Could not set up VM data to bootstrap the VM from.
[ERROR:flutter/runtime/dart_vm_lifecycle.cc(84)] Could not create Dart VM instance.
[FATAL:flutter/shell/common/shell.cc(143)] Check failed: vm. Must be able to initialize the VM.
Aborted

vc4graphics and core-image-weston

vc4graphics as MACHINE_FEATURES is actually one of the hard dependencies for core-image-weston. If you disable vc4graphics, the image wouldn't be the same. Is it possible to make the flutter_wayland work with vc4graphics graphics disabled?
It is disabled by adding

MACHINE_FEATURES_remove = " vc4graphics"

Can you check on this or atleast provide me some guidance on how to make flutter_wayland work without vc4graphics?

Support on raspberrypi3

I see that you have made this layer such that it supports rpi-64, won't this work with a normal raspberrypi3?,
ie, when machine is set as raspberrypi3

do_patch tries to stat the wrong crtbeginS.o

Something in the do_patch routine has begun to try to read the wrong version of crtbeginS.o.

[...]
|
| ________ running 'git init --bare /opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/src/third_party/dart/third_party/pkg/_gclient_gittmp_yamlqktd6Y' in '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0'
|
| [0:00:51] Initialized empty Git repository in /opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/src/third_party/dart/third_party/pkg/_gclient_gittmp_yamlqktd6Y/
| [0:00:58]
| ________ running 'git -c core.deltaBaseCacheLimit=2g clone --no-checkout --progress --verbose https://dart.googlesource.com/yaml.git --template=/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/src/third_party/dart/third_party/pkg/_gclient_gittmp_yamlqktd6Y /opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/src/third_party/dart/third_party/pkg/_gclient_yaml_8ECSbK' in '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0'
|
| [0:00:58] Cloning into '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/src/third_party/dart/third_party/pkg/_gclient_yaml_8ECSbK'...
| [0:00:58] POST git-upload-pack (gzip 1143 to 620 bytes)
| [0:00:58] remote: Counting objects: 1
| [0:00:58] remote: Counting objects: 855, done
| [0:00:58] remote: Finding sources:   1% (9/855)
| [0:00:58] remote: Finding sources:  10% (86/855)
| [0:00:58] remote: Finding sources: 100% (855/855)
| [0:00:58] Receiving objects:   0% (1/855)
| [0:00:58] Receiving objects:  10% (86/855)
| [0:00:58] remote: Total 855 (delta 503), reused 846 (delta 503)
| [0:00:58] Receiving objects: 100% (855/855)
| [0:00:58] Resolving deltas:   0% (0/503)
| [0:00:58] Resolving deltas:  10% (53/503)
| [0:00:58] Resolving deltas: 100% (503/503)
| [0:01:02]
| ________ running 'git -c core.deltaBaseCacheLimit=2g fetch origin --verbose --no-tags' in '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/src/third_party/dart/third_party/pkg/yaml'
|
| [0:01:02] From https://dart.googlesource.com/yaml
| [0:01:02]  = [up to date]      master     -> origin/master
| [0:01:02] Finished running: git checkout --quiet b4c4411631bda556ce9a45af1ab0eecaf9f3ac53
| [0:01:02] Finished running: git rev-parse --abbrev-ref=strict HEAD
| [0:01:02] Checked out b4c4411631bda556ce9a45af1ab0eecaf9f3ac53 to a detached HEAD. Before making any commits
| in this repo, you should use 'git checkout <branch>' to switch to
| an existing branch or use 'git checkout origin -b <branch>' to
| create a new branch for your work.
| [0:01:02] Finished running: git -c core.quotePath=false ls-files
| [0:01:02] Finished running: git rev-parse --verify HEAD
| [0:01:02] Finished.
| ----------------------------------------
| ________ running 'vpython src/build/landmines.py' in '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0'
| ________ running 'vpython src/tools/remove_stale_pyc_files.py src/tools' in '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0'
| ________ running 'vpython src/flutter/tools/pub_get_offline.py' in '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0'
| Hook 'vpython src/flutter/tools/pub_get_offline.py' took 16.95 secs
| install: cannot stat '/opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/recipe-sysroot/usr/lib/aarch64-poky-linux/9.3.0/crtbeginS.o': No such file or directory
| WARNING: exit code 1 from a shell command.
|
ERROR: Task (/opt/Ion/y/sources/meta-flutter/recipes-graphics/flutter-engine/flutter-engine_git.bb:do_patch) failed with exit code '1'
NOTE: Tasks Summary: Attempted 7447 tasks of which 7347 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /opt/Ion/y/sources/meta-flutter/recipes-graphics/flutter-engine/flutter-engine_git.bb:do_patch
Summary: There was 1 WARNING message shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
$

Note that the actual error is very long: https://gist.github.com/xobs/efc5b065ab1fab79d439b7072a4fbaaa

The error is correct -- 9.3.0 doesn't exist. However, 10.2.0 does, and /opt/Ion/y/ion-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/recipe-sysroot/usr/lib/aarch64-poky-linux/10.2.0/crtbeginS.o is a file that exists.

I will try to symlink 10.2.0 to 9.3.0 to see if that at least gets it building.

Note that there's a possibility that the environment is leaking again, and it's caching 9.3.0 from a different yocto root. For example, I notice ~/.vpython-root exists in my home directory.

Rasperry Pi example does not work as is

First: Thanks for the great effort to bring flutter to embedded devices.

I tried to build & run the example for the raspberry-pi 4 given in the README and ran into some issues:

First I did not know how to actually run the flutter-gallery. It would be nice to add this to the readme:

flutter-pi /usr/share/flutter-gallery/flutter-assets

When running this, flutter-pi was unable to enumerate the DRI devices. The reason was that all kernel modules (expect i2c) were missing. I fixed that in local.conf with:

IMAGE_INSTALL_append = " kernel-modules"

After that flutter-pi could not find /usr/share/flutter/icudtl.dat. I fixed that issue with:

IMAGE_INSTALL_append = " flutter-engine"

The issue then was that flutter-engine was in release-mode while the gallery was in debug. I could not figure out how to put the gallery into release, but I was able to change the engine with

PACKAGECONFIG_pn-flutter-engine = "disable-desktop-embeddings embedder-for-target fontconfig full-dart-sd
k mode-debug"

I also stumbled across #33 (comment) and applied the changes provided there to the flutter-gallery recipe, but I am not sure if that was actually needed.

support for gatesgarth

The flutter-sdk_git.bb recipe leaks out of the sysroot and attempts to read files in the user's home directory.

$ rm -rf ~/.pub-cache
$ touch ~/.pub-cache
$ Loading cache: 100% |##############################################################################################| Time: 0:00:00
Loaded 4859 entries from dependency cache.
Parsing recipes: 100% |############################################################################################| Time: 0:00:03
Parsing of 3296 .bb files complete (3286 cached, 10 parsed). 4871 targets, 499 skipped, 1 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "1.48.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "ubuntu-20.04"
TARGET_SYS           = "aarch64-poky-linux"
MACHINE              = "imx8qxpmek"
DISTRO               = "fsl-imx-wayland"
DISTRO_VERSION       = "5.10-gatesgarth"
TUNE_FEATURES        = "aarch64 armv8a crc cortexa35 crypto"
TARGET_FPU           = ""
meta
meta-poky            = "HEAD:943ef2fad8428f002850e3655a3312e13d0dcb2c"
meta-oe
meta-multimedia
meta-python          = "HEAD:ac4ccd2fbbb599d75ca4051911fcbaca39dbe6d7"
meta-freescale       = "HEAD:41d4f625c6db7a778f0f9a735c2cb48e023bc49b"
meta-freescale-3rdparty = "HEAD:b85d08a55cb833bfc4e8b5034ff804286c67620e"
meta-freescale-distro = "HEAD:11be3f01962df8436c5c7b0d61cd3dbd1b872905"
meta-bsp
meta-sdk
meta-ml              = "HEAD:478d788fc1ecb4783a2702752a61f1035fe9ab9f"
meta-nxp-demo-experience = "HEAD:c7263d9f3cc7bbf44e7164ffeda494cf283d3dec"
meta-browser         = "HEAD:ee3be3b5986a4aa0e73df2204a625ae1fe5df37e"
meta-rust            = "HEAD:53bfa324891966a2daf5d36dc13d4a43725aebed"
meta-clang           = "HEAD:61faae011fb95712064f2c58abe6293f0daeeab5"
meta-gnome
meta-networking
meta-filesystems     = "HEAD:ac4ccd2fbbb599d75ca4051911fcbaca39dbe6d7"
meta-qt5             = "HEAD:8d5672cc6ca327576a814d35dfb5d59ab24043cb"
meta-python2         = "HEAD:c43c29e57f16af4e77441b201855321fbd546661"
meta-flutter         = "dunfell:9d50ce85de4d249d3bdf194753d38276c567b949"

Initialising tasks: 100% |#########################################################################################| Time: 0:00:02
Sstate summary: Wanted 421 Found 397 Missed 24 Current 2850 (94% match, 99% complete)
NOTE: Executing Tasks
ERROR: flutter-gallery-git-r0 do_compile: Execution of '/opt/Ion/yocto/imx-yocto-bsp/mek-build/tmp/work/cortexa35-poky-linux/flutter-gallery/git-r0/temp/run.do_compile.31770' failed with exit code 66:
Running "flutter pub get" in flutter_tools...
Creation failed, path = '/home/user/.pub-cache' (OS Error: Not a directory, errno = 20)
pub get failed (66; Creation failed, path = '/home/user/.pub-cache' (OS Error: Not a directory, errno = 20))
WARNING: exit code 66 from a shell command.
...

Regarding flutter-pi_git.bb

Hi. I was able to get flutter-pi set up correctly and run flutter apps. Although I had to make the following changes to the flutter-pi recipe in a .bbappend:

SRCREV = "${AUTOREV}"

unset RDEPENDS

RDEPENDS_${PN} += "\
    fontconfig \
    liberation-fonts \
    ttf-liberation-sans-narrow \
   "

Unsetting and setting RDEPENDS with _${PN} helped to solve a bitbake error Variable RDEPENDS is set as not being package specific, please fix this. Maybe you could fix this in the .bb.

And the issue of apps not responding to any touches was solved by making the recipe use the latest commit using ${AUTOREV}

Also, added the liberation-fonts and ttf-liberation-sans-narrow packages as without these, no text was visible in flutter apps.

Btw, I was wondering why the flutter-pi recipe is set to use an old commit. The image built fine with the latest commit.

basehash error

I am getting the following error when trying to build the flutter engine.
../meta-flutter/recipes-graphics/flutter-engine/flutter-engine_git.bb.do_patch, the basehash value changed from 4f886e719814a8446c77473cb60ba0ae to eadf02f4c8f15522f3b90f8a2b4833ca. The metadata is not deterministic and this needs to be fixed.

How do I fix this.

===== CRASH ===== while building flutter engine for arm

Trying to build the flutter-engine recipe for qemuarm machine leads to this crash error:

FAILED: gen/strong.sum
| python ../../third_party/dart/build/gn_run_binary.py compiled_action clang_x64/dart -Dsdk_hash=7c8c6b3053 --packages=/mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/third_party/dart/.packages /mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/third_party/dart/pkg/analyzer/tool/summary/build_sdk_summaries.dart build /mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/out/linux_release_arm/gen/strong.sum /mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/out/linux_release_arm/dart-sdk
| Command failed: ./clang_x64/dart -Dsdk_hash=7c8c6b3053 --packages=/mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/third_party/dart/.packages /mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/third_party/dart/pkg/analyzer/tool/summary/build_sdk_summaries.dart build /mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/out/linux_release_arm/gen/strong.sum /mnt/poky/build/tmp/work/armv7vet2hf-neon-poky-linux-gnueabi/flutter-engine/git-r0/src/out/linux_release_arm/dart-sdk
| output:
| ===== CRASH =====
| si_signo=Segmentation fault(11), si_code=1, si_addr=0x7fc0fae5ceac
|
| [2421/2536] ACTION //flutter/lib/snapshot:isolate_snapshot_data_linkable(//build/toolchain/custom:custom)
| [2422/2536] ACTION //flutter/lib/snapshot:platform_strong_dill_linkable(//build/toolchain/custom:custom)
| [2423/2536] ACTION //third_party/dart/runtime/bin:kernel_service_dill_linkable(//build/toolchain/custom:custom)
| [2424/2536] ACTION //third_party/dart/utils/dds:generate_dds_snapshot_dill(//build/toolchain/custom:custom)
| [2425/2536] ACTION //third_party/dart/utils/dart2native:generate_dart2native_snapshot_dill(//build/toolchain/custom:custom)
| [2426/2536] ACTION //third_party/dart/utils/gen_kernel:gen_kernel_dill(//build/toolchain/custom:custom)
| [2427/2536] ACTION //third_party/dart/utils/dartfmt:dartfmt_dill(//build/toolchain/custom:custom)
| [2428/2536] ACTION //flutter/flutter_frontend_server:frontend_server_dill(//build/toolchain/custom:custom)
| [2429/2536] ACTION //third_party/dart/utils/pub:pub_dill(//build/toolchain/custom:custom)
| [2430/2536] ACTION //third_party/dart/utils/dartanalyzer:generate_dartanalyzer_snapshot_dill(//build/toolchain/custom:custom)
| [2431/2536] ACTION //third_party/dart/utils/dartdoc:dartdoc_dill(//build/toolchain/custom:custom)
| ninja: build stopped: subcommand failed.
| WARNING: exit code 1 from a shell command.
|
ERROR: Task (/mnt/poky/meta-flutter/recipes-graphics/flutter-engine/flutter-engine_git.bb:do_compile) failed with exit code '1'

How do I run some flutter example?

Can you please tell me how to run some example?
I tried to make a bundle as described in https://github.com/ardera/flutter-pi
However, it did not work that way:

root@raspberrypi4-64:~# flutter_wayland ~/my_app 
LOG: /usr/src/debug/flutter-wayland/git-r0/git/src/main.cc:61: Arg: /home/root/my_app
error: XDG_RUNTIME_DIR not set in the environment.
terminate called after throwing an instance of 'std::runtime_error'
Bus error

Error: Command 'cipd ensure -log-level error -root

Hi,

I am getting the below error when building the meta-flutter (originally downloaded from https://github.com/pub10cloud/meta-flutter, branch : develop/thud).

wget: --user-agent: Invalid value โ€˜depot_tools/HEAD\n???โ€™.
Error: Command 'cipd ensure -log-level error -root /home/yvelumani/code/rcar/build/tmp/work/aarch64-poky-linux/flutter-engine/git-r0/git -ensure-file /tmp/tmpjHd8PA.ensure' returned non-zero exit status 2
ERROR: Function failed: do_patch 'exit 1 from 'gclient.py sync --nohooks --no-history --revision 9e5072f0ce81206b99db3598da687a19ce57a863 -j 12 -v'

My build environment is setup on ubuntu 16.04 LTS and the I am using the flutter layer on the Poky revision: thud.
My intension to build and run flutter on the renesas-rcar-gen3 chipset which is based on meta-renesas revision: refs/tags/thud-Yocto-v3.21.0.

Python version: 2.7.12 and 3.5.2
Default: python 2

In addition to renesas-rcar-gen3, I need to build for qualcomm-snapdragon-sa8155p platform as well.
Kindly let me know if there is any additional step or packages that I need to install to build the image successfully.

Thanks in advance.

Build error vpython3: No such file or directory

Hi,

when building with meta-flutter I get the following error:

ERROR: depot-tools-native-git-r0 do_compile: Execution of '/var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/temp/run.do_compile.35155' failed with exit code 127:
/var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/git/vpython3: line 52: /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/git/.cipd_bin/vpython3: No such file or directory
WARNING: /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/temp/run.do_compile.35155:1 exit 127 from 'gclient --version'

ERROR: Logfile of failure stored in: /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/temp/log.do_compile.35155
Log data follows:
| DEBUG: Executing shell function do_compile
| /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/git/vpython3: line 52: /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/git/.cipd_bin/vpython3: No such file or directory
| WARNING: /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/temp/run.do_compile.35155:1 exit 127 from 'gclient --version'
| ERROR: Execution of '/var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/temp/run.do_compile.35155' failed with exit code 127:
| /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/git/vpython3: line 52: /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/git/.cipd_bin/vpython3: No such file or directory
| WARNING: /var/data/flutter/flutter-build/build/tmp/work/x86_64-linux/depot-tools-native/git-r0/temp/run.do_compile.35155:1 exit 127 from 'gclient --version'
| 
NOTE: recipe depot-tools-native-git-r0: task do_compile: Failed
ERROR: Task (virtual:native:/var/data/flutter/flutter-build/sources/poky/../meta-flutter/recipes-devtools/depot-tools/depot-tools_git.bb:do_compile) failed with exit code '1'
NOTE: recipe icu-native-66.1-r0: task do_unpack: Succeeded

`arm_tune` argument not present in Gatesgarth on aarch64

The arm_tune parameter does not appear to work with the version of the compiler generated by Dunfell. Or rather, I'm not sure if it's the compiler version or something Flutter related:

ERROR: flutter-engine-git-r0 do_compile: Execution of '/opt/Ion/yocto/imx-yocto-bsp/mek-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/temp/run.do_compile.5061' failed with exit code 1:
ninja: Entering directory `out/linux_release_arm64'
[1/1] Regenerating ninja files
FAILED: build.ninja
../../flutter/third_party/gn/gn --root=../.. -q --check --export-compile-commands gen .
ERROR at build arg file (use "gn args <out_dir>" to edit):43:2: Undefined identifier
-e arm_tune = "armv8a+crc+cortexa35+crypto"
 ^
ninja: error: rebuilding 'build.ninja': subcommand failed
WARNING: exit code 1 from a shell command.

ERROR: Logfile of failure stored in: /opt/Ion/yocto/imx-yocto-bsp/mek-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/temp/log.do_compile.5061
Log data follows:
| DEBUG: Executing python function extend_recipe_sysroot
| NOTE: Direct dependencies are ['/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-devtools/quilt/quilt-native_0.66.bb:do_populate_sysroot', 'virtual:native:/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot', '/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-devtools/gcc/gcc-cross_10.2.bb:do_populate_sysroot', 'virtual:native:/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-devtools/pseudo/pseudo_git.bb:do_populate_sysroot', '/opt/Ion/yocto/imx-yocto-bsp/sources/meta-flutter/recipes-devtools/depot-tools/depot-tools-native_git.bb:do_populate_sysroot', 'virtual:native:/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-devtools/python/python3_3.8.5.bb:do_populate_sysroot', 'virtual:native:/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-extended/zip/zip_3.0.bb:do_populate_sysroot', '/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb:do_populate_sysroot', '/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-devtools/gcc/gcc-runtime_10.2.bb:do_populate_sysroot', '/opt/Ion/yocto/imx-yocto-bsp/sources/poky/meta/recipes-core/glibc/glibc_2.32.bb:do_populate_sysroot']
| NOTE: Installed into sysroot: []
| NOTE: Skipping as already exists in sysroot: ['quilt-native', 'patch-native', 'gcc-cross-aarch64', 'pseudo-native', 'depot-tools-native', 'python3-native', 'zip-native', 'fontconfig', 'gcc-runtime', 'glibc', 'autoconf-native', 'libtool-native', 'automake-native', 'gnu-config-native', 'attr-native', 'binutils-cross-aarch64', 'gmp-native', 'xz-native', 'texinfo-dummy-native', 'libmpc-native', 'linux-libc-headers', 'flex-native', 'mpfr-native', 'zlib-native', 'libtirpc-native', 'util-linux-native', 'libnsl2-native', 'libffi-native', 'sqlite3-native', 'pkgconfig-native', 'bzip2-native', 'gdbm-native', 'readline-native', 'openssl-native', 'util-linux', 'freetype', 'zlib', 'expat', 'libgcc', 'm4-native', 'gettext-minimal-native', 'libpcre2-native', 'ncurses-native', 'libcap-ng-native', 'opkg-utils', 'libpam', 'bash-completion', 'libxcrypt', 'ncurses', 'libcap-ng', 'libpng', 'cracklib', 'flex']
| DEBUG: Python function extend_recipe_sysroot finished
| DEBUG: Executing shell function do_compile
| ninja: Entering directory `out/linux_release_arm64'
| [1/1] Regenerating ninja files
| FAILED: build.ninja
| ../../flutter/third_party/gn/gn --root=../.. -q --check --export-compile-commands gen .
| ERROR at build arg file (use "gn args <out_dir>" to edit):43:2: Undefined identifier
| -e arm_tune = "armv8a+crc+cortexa35+crypto"
|  ^
| ninja: error: rebuilding 'build.ninja': subcommand failed
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/opt/Ion/yocto/imx-yocto-bsp/mek-build/tmp/work/cortexa35-poky-linux/flutter-engine/git-r0/temp/run.do_compile.5061' failed with exit code 1:
| ninja: Entering directory `out/linux_release_arm64'
| [1/1] Regenerating ninja files
| FAILED: build.ninja
| ../../flutter/third_party/gn/gn --root=../.. -q --check --export-compile-commands gen .
| ERROR at build arg file (use "gn args <out_dir>" to edit):43:2: Undefined identifier
| -e arm_tune = "armv8a+crc+cortexa35+crypto"
|  ^
| ninja: error: rebuilding 'build.ninja': subcommand failed
| WARNING: exit code 1 from a shell command.
|
ERROR: Task (/opt/Ion/yocto/imx-yocto-bsp/sources/meta-flutter/recipes-graphics/flutter-engine/flutter-engine_git.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 4345 tasks of which 4310 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /opt/Ion/yocto/imx-yocto-bsp/sources/meta-flutter/recipes-graphics/flutter-engine/flutter-engine_git.bb:do_compile
Summary: There were 3 WARNING messages shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
user@Cuboid:/opt/Ion/yocto/imx-yocto-bsp/mek-build$

Regardless, this patch fixes the compile issue:

diff --git a/recipes-graphics/flutter-engine/flutter-engine_git.bb b/recipes-graphics/flutter-engine/flutter-engine_git.bb
index dcf7e7a..553f949 100644
--- a/recipes-graphics/flutter-engine/flutter-engine_git.bb
+++ b/recipes-graphics/flutter-engine/flutter-engine_git.bb
@@ -91,7 +91,7 @@ GN_ARGS_append_armv7a = " --arm-float-abi ${TARGET_FPU}"
 GN_ARGS_append_armv7ve = " --arm-float-abi ${TARGET_FPU}"

 ARGS_GN = ""
-ARGS_GN_append_aarch64 = "arm_tune = \"${@gn_get_tune_features(d)}\""
+#ARGS_GN_append_aarch64 = "arm_tune = \"${@gn_get_tune_features(d)}\""
 ARGS_GN_append_armv7 = "arm_tune = \"${@gn_get_tune_features(d)}\""
 ARGS_GN_append_armv7a = "arm_tune = \"${@gn_get_tune_features(d)}\""
 ARGS_GN_append_armv7ve = "arm_tune = \"${@gn_get_tune_features(d)}\""

armv7 tuning

Tuning parameter needs to be filtered to prevent softfp, such as: -march=armv7-a -mfloat-abi=softfp -mtune=generic-armv7-a -mthumb -mfpu=neon. For now tuning parameter is being set empty to prevent this.

AOT / frontend_server

AOT image creation depends on frontend_server. front_end server moved or is not generated by default. Need to investigate.

Video Player Plugin Support

flutter-wayland segfaults

Reported as issue on i.MX target

bash-5.0# gdb --args flutter_wayland /usr/share/flutter-gallery/sony/data/flutter_assets/
GNU gdb (GDB) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "aarch64-poky-linux".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from flutter_wayland...
Reading symbols from /usr/bin/.debug/flutter_wayland...
(gdb) run
Starting program: /usr/bin/flutter_wayland /usr/share/flutter-gallery/sony/data/flutter_assets/
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
LOG: /usr/src/debug/flutter-wayland/git-r0/git/src/main.cc:65: Arg: /usr/share/flutter-gallery/sony/data/flutter_assets/

Program received signal SIGSEGV, Segmentation fault.
std::function<void (wayland::seat_capability)>::swap(std::function<void (wayland::seat_capability)>&) (__x=..., this=0xffffffffeee8)
    at /usr/include/c++/10.2.0/bits/std_function.h:483
483             std::swap(_M_functor, __x._M_functor);
(gdb) bt
#0  std::function<void (wayland::seat_capability)>::swap(std::function<void (wayland::seat_capability)>&) (__x=...,
    this=0xffffffffeee8) at /usr/include/c++/10.2.0/bits/std_function.h:483
#1  std::function<void(wayland::seat_capability)>::operator=<flutter::WaylandDisplay::WaylandDisplay(size_t, size_t, const std::vector<std::__cxx11::basic_string<char> >&)::<lambda(wayland::seat_capability)> > (__f=..., __f=..., this=0x8)
    at /usr/include/c++/10.2.0/bits/std_function.h:459
#2  flutter::WaylandDisplay::WaylandDisplay (this=0xffffffffefd0, width=<optimized out>, height=<optimized out>, args=...)
    at /usr/src/debug/flutter-wayland/git-r0/git/src/wayland_display.cc:196
#3  0x0000aaaaaaabce04 in flutter::Main (args=...) at /usr/src/debug/flutter-wayland/git-r0/git/src/main.cc:68
#4  0x0000aaaaaaaa59e0 in main (argc=<optimized out>, argv=<optimized out>) at /usr/include/c++/10.2.0/bits/stl_vector.h:102
(gdb)

Erro when building image: pythonโ€™: No such file or directory

Apologies. I'm rather new to yocto/OE and feel a little like I'm fumbling around. I've attempted to run the flutter example app build and get the following.

NOTE: Executing Tasks
ERROR: flutter-engine-git-r0 do_patch: Execution of '/home/luke/Projects/JTE/stm32-testing/poky/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/flutter-engine/git-r0/temp/run.do_patch.3405252' failed with exit code 127:
/usr/bin/env: โ€˜pythonโ€™: No such file or directory
WARNING: /home/luke/Projects/JTE/stm32-testing/poky/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/flutter-engine/git-r0/temp/run.do_patch.3405252:1 exit 127 from 'gclient.py config --spec 'solutions = [
        {
            "managed" : False,
            "name" : "src/flutter",
            "url" : "[email protected]:flutter/engine.git",
            "custom_vars" : {
                "download_android_deps" : False,
                "download_windows_deps" : False,
            }
        }
    ]''

ERROR: Logfile of failure stored in: /home/luke/Projects/JTE/stm32-testing/poky/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/flutter-engine/git-r0/temp/log.do_patch.3405252
Log data follows:
| DEBUG: Executing python function extend_recipe_sysroot
| NOTE: Direct dependencies are ['/home/luke/Projects/JTE/stm32-testing/poky/meta/recipes-devtools/quilt/quilt-native_0.66.bb:do_populate_sysroot', 'virtual:native:/home/luke/Projects/JTE/stm32-testing/poky/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot', 'virtual:native:/home/luke/Projects/JTE/stm32-testing/poky/meta-flutter/recipes-support/depot-tools/depot-tools_git.bb:do_populate_sysroot']
| NOTE: Installed into sysroot: []
| NOTE: Skipping as already exists in sysroot: ['quilt-native', 'patch-native', 'depot-tools-native', 'libtool-native', 'gnu-config-native', 'autoconf-native', 'attr-native', 'automake-native', 'texinfo-dummy-native', 'm4-native', 'gettext-minimal-native']
| DEBUG: Python function extend_recipe_sysroot finished
| DEBUG: Executing shell function do_patch
| /usr/bin/env: โ€˜pythonโ€™: No such file or directory
| WARNING: /home/luke/Projects/JTE/stm32-testing/poky/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/flutter-engine/git-r0/temp/run.do_patch.3405252:1 exit 127 from 'gclient.py config --spec 'solutions = [
|         {
|             "managed" : False,
|             "name" : "src/flutter",
|             "url" : "[email protected]:flutter/engine.git",
|             "custom_vars" : {
|                 "download_android_deps" : False,
|                 "download_windows_deps" : False,
|             }
|         }
|     ]''
| ERROR: Execution of '/home/luke/Projects/JTE/stm32-testing/poky/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/flutter-engine/git-r0/temp/run.do_patch.3405252' failed with exit code 127:
| /usr/bin/env: โ€˜pythonโ€™: No such file or directory
| WARNING: /home/luke/Projects/JTE/stm32-testing/poky/build/tmp/work/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/flutter-engine/git-r0/temp/run.do_patch.3405252:1 exit 127 from 'gclient.py config --spec 'solutions = [
|         {
|             "managed" : False,
|             "name" : "src/flutter",
|             "url" : "[email protected]:flutter/engine.git",
|             "custom_vars" : {
|                 "download_android_deps" : False,
|                 "download_windows_deps" : False,
|             }
|         }
|     ]''
| 

example of running flutter application wayland

I have built an image with the following setup added to my local.conf

DISTRO_FEATURES_append = " opengl wayland"
IMAGE_INSTALL_append = " flutter-gallery flutter-wayland-client flutter-wayland"

How do I run the flutter-gallery App ? I couldn't find a lead

the follwoing isn't working:

# flutter_wayland /usr/share/flutter-gallery/sony/data/flutter_assets/
LOG: /usr/src/debug/flutter-wayland/git-r0/git/src/main.cc:65: Arg: /usr/share/flutter-gallery/sony/data/flutter_assets/
terminate called after throwing an instance of 'std::runtime_error'
Bus error

Missing libsystemd when building from custom image recipe.

Hi @jwinarske.

Firstly thank you for the work you have put into this repo. I am relatively new to Yocto, I have been building a solution based off your work here for the past few weeks. Up until now the majority of my configuration exists within local.conf, adding my own recipes and building using bitbake core-image-base.

It's come to a point where I want to make my own image recipe based off core-image-base. And move most of the config out of local.conf before things get to unmanageable.

Broadly speaking, I created my a new layer with an image recipe that pulls in core-image-base via require. Moved a lot of the specific configuration (originally from this repo) into that recipe, adjusted references to CORE-IMAGE-EXTRA etc, removed references to the specific configuration details from local.conf and rebuilt using the custom image recipe. However the flutter-pi and sony embedder build tasks fail with cmake unable to locate libsystemd.

It however works if the specific config is instead inside local.conf and I build using bitbake core-image-base.

Below I have included the custom image recipe, the original working local.conf and finally the build output from bitbake when trying to build from the custom image recipe.

Does anything stand out to you that would be causing the build failure?

Custom Image Recipe

SUMMARY = "Castboard image for Development purposes"

LICENSE="MIT"

require recipes-core/images/core-image-base.bb

IMAGE_FEATURES += "splash debug-tweaks ssh-server-dropbear"

# Jwinarske stuff - https://github.com/jwinarske/meta-flutter
BBMASK = "meta-networking/recipes-kernel/wireguard"
DISTRO_FEATURES_remove = " sysvinit"
DISTRO_FEATURES_append = " alsa bluetooth usbhost opengl vulkan systemd wifi"
INIT_MANAGER = "systemd"
VIRTUAL-RUNTIME_init_manager = "systemd"
VIRTUAL-RUNTIME_initscripts = ""
DISTRO_FEATURES_append=" pam selinux"
DISTRO_FEATURES_BACKFILL_CONSIDERED = ""
COMBINED_FEATURES += "alsa "
MACHINE_FEATURES_remove = "apm"
PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
PREFERRED_PROVIDER_jpeg-native = "libjpeg-turbo-native"
IMAGE_INSTALL += " packagegroup-core-selinux   avahi-daemon   vulkan-loader vulkan-tools   adwaita-icon-theme-cursors   xdg-user-dirs "
PREFERRED_VERSION_pipewire = "0.3.22"

# RPI Specific Configuration
DISABLE_OVERSCAN = "1"
DISABLE_RPI_BOOT_LOGO = "1"
DISABLE_SPLASH = "1"
ENABLE_SPI_BUS = "1"
ENABLE_I2C = "1"
ENABLE_UART = "0"
SERIAL_CONSOLES = ""

GPU_MEM = "128"
KERNEL_MODULE_AUTOLOAD_raspberrypi4-64 += "i2c-dev i2c-bcm2708"
DISPMANX_OFFLINE = "1"
LINUX_KERNEL_TYPE = "preempt-rt"
CMDLINE_DEBUG = "quiet"
PREFERRED_VERSION_linux-raspberrypi = "5.4.%"

# Flutter
FLUTTER_CHANNEL = "dev"

#
# User Facing Software
#

# Flutter Embedders
IMAGE_INSTALL_append = " flutter-pi"

# Flutter Applications
IMAGE_INSTALL_append = " castboard-player"

Original Working local.conf

#
# This file is your local configuration file and is where all local user settings
# are placed. The comments in this file give some guide to the options a new user
# to the system might want to change but pretty much any configuration option can
# be set in this file. More adventurous users can look at local.conf.extended
# which contains other examples of configuration which can be placed in this file
# but new users likely won't need any of them initially.
#
# Lines starting with the '#' character are commented out and in some cases the
# default values are provided as comments to show people example syntax. Enabling
# the option is a question of removing the # character and making any change to the
# variable as required.

#
# Machine Selection
#
# You need to select a specific machine to target the build with. There are a selection
# of emulated machines available which can boot and run in the QEMU emulator:
#
#MACHINE ?= "qemuarm"
#MACHINE ?= "qemuarm64"
#MACHINE ?= "qemumips"
#MACHINE ?= "qemumips64"
#MACHINE ?= "qemuppc"
#MACHINE ?= "qemux86"
#MACHINE ?= "qemux86-64"
#
# There are also the following hardware board target machines included for 
# demonstration purposes:
#
#MACHINE ?= "beaglebone-yocto"
#MACHINE ?= "genericx86"
#MACHINE ?= "genericx86-64"
#MACHINE ?= "edgerouter"
#
# This sets the default machine to be qemux86-64 if no other machine is selected:
MACHINE ?= "raspberrypi4-64"

#
# Where to place downloads
#
# During a first build the system will download many different source code tarballs
# from various upstream projects. This can take a while, particularly if your network
# connection is slow. These are all stored in DL_DIR. When wiping and rebuilding you
# can preserve this directory to speed up this part of subsequent builds. This directory
# is safe to share between multiple builds on the same machine too.
#
# The default is a downloads directory under TOPDIR which is the build directory.
#
DL_DIR ?= "/media/usb/yocto-cache/downloads"

#
# Where to place shared-state files
#
# BitBake has the capability to accelerate builds based on previously built output.
# This is done using "shared state" files which can be thought of as cache objects
# and this option determines where those files are placed.
#
# You can wipe out TMPDIR leaving this directory intact and the build would regenerate
# from these files if no changes were made to the configuration. If changes were made
# to the configuration, only shared state files where the state was still valid would
# be used (done using checksums).
#
# The default is a sstate-cache directory under TOPDIR.
#
SSTATE_DIR ?= "/media/usb/yocto-cache/sstate-cache"

#
# Where to place the build output
#
# This option specifies where the bulk of the building work should be done and
# where BitBake should place its temporary files and output. Keep in mind that
# this includes the extraction and compilation of many applications and the toolchain
# which can use Gigabytes of hard disk space.
#
# The default is a tmp directory under TOPDIR.
#
#TMPDIR = "${TOPDIR}/tmp"

#
# Default policy config
#
# The distribution setting controls which policy settings are used as defaults.
# The default value is fine for general Yocto project use, at least initially.
# Ultimately when creating custom policy, people will likely end up subclassing 
# these defaults.
#
DISTRO ?= "poky"
# As an example of a subclass there is a "bleeding" edge policy configuration
# where many versions are set to the absolute latest code from the upstream 
# source control systems. This is just mentioned here as an example, its not
# useful to most new users.
# DISTRO ?= "poky-bleeding"

#
# Package Management configuration
#
# This variable lists which packaging formats to enable. Multiple package backends
# can be enabled at once and the first item listed in the variable will be used
# to generate the root filesystems.
# Options are:
#  - 'package_deb' for debian style deb files
#  - 'package_ipk' for ipk files are used by opkg (a debian style embedded package manager)
#  - 'package_rpm' for rpm style packages
# E.g.: PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk"
# We default to rpm:
PACKAGE_CLASSES ?= "package_rpm"

#
# SDK target architecture
#
# This variable specifies the architecture to build SDK items for and means
# you can build the SDK packages for architectures other than the machine you are
# running the build on (i.e. building i686 packages on an x86_64 host).
# Supported values are i686 and x86_64
#SDKMACHINE ?= "i686"

#
# Extra image configuration defaults
#
# The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated
# images. Some of these options are added to certain image types automatically. The
# variable can contain the following options:
#  "dbg-pkgs"       - add -dbg packages for all installed packages
#                     (adds symbol information for debugging/profiling)
#  "src-pkgs"       - add -src packages for all installed packages
#                     (adds source code for debugging)
#  "dev-pkgs"       - add -dev packages for all installed packages
#                     (useful if you want to develop against libs in the image)
#  "ptest-pkgs"     - add -ptest packages for all ptest-enabled packages
#                     (useful if you want to run the package test suites)
#  "tools-sdk"      - add development tools (gcc, make, pkgconfig etc.)
#  "tools-debug"    - add debugging tools (gdb, strace)
#  "eclipse-debug"  - add Eclipse remote debugging support
#  "tools-profile"  - add profiling tools (oprofile, lttng, valgrind)
#  "tools-testapps" - add useful testing tools (ts_print, aplay, arecord etc.)
#  "debug-tweaks"   - make an image suitable for development
#                     e.g. ssh root access has a blank password
# There are other application targets that can be used here too, see
# meta/classes/image.bbclass and meta/classes/core-image.bbclass for more details.
# We default to enabling the debugging tweaks.
EXTRA_IMAGE_FEATURES ?= "debug-tweaks"

#
# Additional image features
#
# The following is a list of additional classes to use when building images which
# enable extra features. Some available options which can be included in this variable
# are:
#   - 'buildstats' collect build statistics
#   - 'image-mklibs' to reduce shared library files size for an image
#   - 'image-prelink' in order to prelink the filesystem image
# NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink
# NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended
USER_CLASSES ?= "buildstats image-mklibs image-prelink"

#
# Runtime testing of images
#
# The build system can test booting virtual machine images under qemu (an emulator)
# after any root filesystems are created and run tests against those images. It can also
# run tests against any SDK that are built. To enable this uncomment these lines.
# See classes/test{image,sdk}.bbclass for further details.
#IMAGE_CLASSES += "testimage testsdk"
#TESTIMAGE_AUTO_qemuall = "1"

#
# Interactive shell configuration
#
# Under certain circumstances the system may need input from you and to do this it
# can launch an interactive shell. It needs to do this since the build is
# multithreaded and needs to be able to handle the case where more than one parallel
# process may require the user's attention. The default is iterate over the available
# terminal types to find one that works.
#
# Examples of the occasions this may happen are when resolving patches which cannot
# be applied, to use the devshell or the kernel menuconfig
#
# Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none
# Note: currently, Konsole support only works for KDE 3.x due to the way
# newer Konsole versions behave
#OE_TERMINAL = "auto"
# By default disable interactive patch resolution (tasks will just fail instead):
PATCHRESOLVE = "noop"

#
# Disk Space Monitoring during the build
#
# Monitor the disk space during the build. If there is less that 1GB of space or less
# than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully
# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort
# of the build. The reason for this is that running completely out of space can corrupt
# files and damages the build in ways which may not be easily recoverable.
# It's necesary to monitor /tmp, if there is no space left the build will fail
# with very exotic errors.
BB_DISKMON_DIRS ??= "\
    STOPTASKS,${TMPDIR},1G,100K \
    STOPTASKS,${DL_DIR},1G,100K \
    STOPTASKS,${SSTATE_DIR},1G,100K \
    STOPTASKS,/tmp,100M,100K \
    ABORT,${TMPDIR},100M,1K \
    ABORT,${DL_DIR},100M,1K \
    ABORT,${SSTATE_DIR},100M,1K \
    ABORT,/tmp,10M,1K"

#
# Shared-state files from other locations
#
# As mentioned above, shared state files are prebuilt cache data objects which can
# used to accelerate build time. This variable can be used to configure the system
# to search other mirror locations for these objects before it builds the data itself.
#
# This can be a filesystem directory, or a remote url such as http or ftp. These
# would contain the sstate-cache results from previous builds (possibly from other
# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the
# cache locations to check for the shared objects.
# NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH
# at the end as shown in the examples below. This will be substituted with the
# correct path within the directory structure.
#SSTATE_MIRRORS ?= "\
#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \
#file://.* file:///some/local/dir/sstate/PATH"

#
# Yocto Project SState Mirror
#
# The Yocto Project has prebuilt artefacts available for its releases, you can enable
# use of these by uncommenting the following line. This will mean the build uses
# the network to check for artefacts at the start of builds, which does slow it down
# equally, it will also speed up the builds by not having to build things if they are
# present in the cache. It assumes you can download something faster than you can build it
# which will depend on your network.
#
#SSTATE_MIRRORS ?= "file://.* http://sstate.yoctoproject.org/2.5/PATH;downloadfilename=PATH"

#
# Qemu configuration
#
# By default native qemu will build with a builtin VNC server where graphical output can be
# seen. The line below enables the SDL UI frontend too.
PACKAGECONFIG_append_pn-qemu-system-native = " sdl"
# By default libsdl2-native will be built, if you want to use your host's libSDL instead of 
# the minimal libsdl built by libsdl2-native then uncomment the ASSUME_PROVIDED line below.
#ASSUME_PROVIDED += "libsdl2-native"

# You can also enable the Gtk UI frontend, which takes somewhat longer to build, but adds
# a handy set of menus for controlling the emulator.
#PACKAGECONFIG_append_pn-qemu-system-native = " gtk+"

#
# Hash Equivalence
#
# Enable support for automatically running a local hash equivalence server and
# instruct bitbake to use a hash equivalence aware signature generator. Hash
# equivalence improves reuse of sstate by detecting when a given sstate
# artifact can be reused as equivalent, even if the current task hash doesn't
# match the one that generated the artifact.
#
# A shared hash equivalent server can be set with "<HOSTNAME>:<PORT>" format
#
#BB_HASHSERVE = "auto"
#BB_SIGNATURE_HANDLER = "OEEquivHash"

# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
# track the version of this file when it was generated. This can safely be ignored if
# this doesn't mean anything to you.
CONF_VERSION = "1"


# SPECIFIC CONFIGURATION

# HOST MACHINE BUILD
BB_NUMBER_THREADS ?= "6"
PARALLEL_MAKE = "-j 6"

# OUTPUT IMAGE TYPE
IMAGE_FSTYPES = "ext3.xz rpi-sdimg"

# jwinarske Stuff
INHERIT += "rm_work"

BBMASK = "meta-networking/recipes-kernel/wireguard"

DISTRO_FEATURES_remove = " sysvinit"
DISTRO_FEATURES_append = " alsa bluetooth usbhost opengl vulkan systemd wifi"

INIT_MANAGER = "systemd"
VIRTUAL-RUNTIME_init_manager = "systemd"
VIRTUAL-RUNTIME_initscripts = ""

DISTRO_FEATURES_append=" pam selinux"
DISTRO_FEATURES_BACKFILL_CONSIDERED = ""

COMBINED_FEATURES += "alsa "
MACHINE_FEATURES_remove = "apm"

PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
PREFERRED_PROVIDER_jpeg-native = "libjpeg-turbo-native"

# DRM Fixes
#IMAGE_INSTALL_append = " kernel-modules"


# RPI Specific Configuration
DISABLE_OVERSCAN = "1"
DISABLE_RPI_BOOT_LOGO = "1"
DISABLE_SPLASH = "1"
ENABLE_SPI_BUS = "1"
ENABLE_I2C = "1"
ENABLE_UART = "0"
SERIAL_CONSOLES = ""

GPU_MEM = "128"
KERNEL_MODULE_AUTOLOAD_raspberrypi4-64 += "i2c-dev i2c-bcm2708"
DISPMANX_OFFLINE = "1"
LINUX_KERNEL_TYPE = "preempt-rt"
CMDLINE_DEBUG = "quiet"
PREFERRED_VERSION_linux-raspberrypi = "5.4.%"

CORE_IMAGE_EXTRA_INSTALL += "   packagegroup-core-selinux   avahi-daemon   vulkan-loader vulkan-tools   adwaita-icon-theme-cursors   xdg-user-dirs "

PREFERRED_VERSION_pipewire = "0.3.22"
FLUTTER_CHANNEL = "dev"

# SSH Server
IMAGE_FEATURES_append = " ssh-server-dropbear"

#
# User Facing Software
#

# Flutter Embedders
IMAGE_INSTALL_append = " flutter-pi"
IMAGE_INSTALL_append = " flutter-drm-gbm-backend"

# Flutter Applications
IMAGE_INSTALL_append = " castboard-player"

Output from bitbake cb-image-dev (Custom Image recipe)

Loading cache...done.
Loaded 3754 entries from dependency cache.
Parsing recipes...WARNING: /media/usb/rpi_64_yocto/sources/meta-flutter/recipes-graphics/flutter-apps/flutter-sdk-native_git.bb: Unable to get checksum for flutter-sdk-native-native SRC_URI entry ca-certificates.crt: file could not be found
done.
Parsing of 2530 .bb files complete (2526 cached, 4 parsed). 3760 targets, 149 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
NOTE: Multiple providers are available for runtime refpolicy (refpolicy-mcs, refpolicy-minimum, refpolicy-mls, refpolicy-standard, refpolicy-targeted)
Consider defining a PREFERRED_RPROVIDER entry to match refpolicy

Build Configuration:
BB_VERSION           = "1.46.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "aarch64-poky-linux"
MACHINE              = "raspberrypi4-64"
DISTRO               = "poky"
DISTRO_VERSION       = "3.1.9"
TUNE_FEATURES        = "aarch64 cortexa72 crc crypto"
TARGET_FPU           = ""
meta                 
meta-poky            
meta-yocto-bsp       = "HEAD:12725e44c1f6217f9d1b337e2d7c0094bd96017b"
meta-raspberrypi     = "HEAD:59c2d6f7a8b1239bd7b587b9180c2a55f9c695a2"
meta-filesystems     
meta-oe              
meta-multimedia      
meta-networking      
meta-python          
meta-perl            
meta-webserver       = "HEAD:7bd47ef6c98323c95a9e527129dca98c9a65ee08"
meta-security        = "HEAD:6466c6fb02f36f459b06d434484df26e083f3489"
meta-selinux         = "HEAD:c9de7989464c7cd774e25d23496ed63ffc4ecdf6"
meta-qt5             = "HEAD:b4d24d70aca75791902df5cd59a4f4a54aa4a125"
meta-jumpnow         = "HEAD:b3995636741be0d219a50035c98ded8b48590888"
meta-clang           = "HEAD:e63d6f9abba5348e2183089d6ef5ea384d7ae8d8"
meta-rust            = "HEAD:494d879a1d337cda5b3a19406cabe46fcd3aee76"
meta-flutter         = "HEAD:a794c540ea61d1b48613a4c28105d109e061a339"
meta-autorun         = "master:763bd80348f7a8f2cc69bb14d6189dff49681177"
meta-cb-networking   = "<unknown>:<unknown>"
meta-castboardimage  = "master:64fc1d80d1a252a5b4c34a584c9ff94d5b3b32f8"

Initialising tasks...done.
Sstate summary: Wanted 28 Found 21 Missed 7 Current 2020 (75% match, 99% complete)
NOTE: Executing Tasks
NOTE: Running task 3665 of 5328 (/media/usb/rpi_64_yocto/sources/meta-flutter/recipes-graphics/flutter-pi/flutter-pi_git.bb:do_configure)
NOTE: recipe flutter-pi-git-r0: task do_configure: Started
Log data follows:
| DEBUG: Executing shell function do_configure
| -- CMAKE_BUILD_TYPE not set, defaulting to Release.
| -- The C compiler identification is GNU 9.3.0
| -- Check for working C compiler: /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc
| -- Check for working C compiler: /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc -- works
| -- Detecting C compiler ABI info
| -- Detecting C compiler ABI info - done
| -- Detecting C compile features
| -- Detecting C compile features - done
| -- Generator .............. Ninja
| -- Build Type ............. Release
| -- Flutter Channel not set, defaulting to stable
| -- Flutter Channel ........ stable
| -- Engine SHA1 ............ 241c87ad800beeab545ab867354d4683d5bfb6ce
| -- PKG_CONFIG_PATH ........
| -- Found PkgConfig: /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/bin/pkg-config (found version "0.29.2")
| -- Checking for module 'libdrm'
| --   Found libdrm, version 2.4.101
| -- Checking for module 'gbm'
| --   Found gbm, version 20.0.2
| -- Checking for module 'egl'
| --   Found egl, version 20.0.2
| -- Checking for module 'glesv2'
| --   Found glesv2, version 20.0.2
| -- Checking for module 'libsystemd'
| --   No package 'libsystemd' found
| CMake Error at /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:467 (message):
|   A required package was not found
| Call Stack (most recent call first):
|   /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:647 (_pkg_check_modules_internal)
|   CMakeLists.txt:95 (pkg_check_modules)
| 
| 
| -- Configuring incomplete, errors occurred!
| See also "/media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/build/CMakeFiles/CMakeOutput.log".
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/temp/run.do_configure.80930' failed with exit code 1:
| -- CMAKE_BUILD_TYPE not set, defaulting to Release.
| -- The C compiler identification is GNU 9.3.0
| -- Check for working C compiler: /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc
| -- Check for working C compiler: /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/bin/aarch64-poky-linux/aarch64-poky-linux-gcc -- works
| -- Detecting C compiler ABI info
| -- Detecting C compiler ABI info - done
| -- Detecting C compile features
| -- Detecting C compile features - done
| -- Generator .............. Ninja
| -- Build Type ............. Release
| -- Flutter Channel not set, defaulting to stable
| -- Flutter Channel ........ stable
| -- Engine SHA1 ............ 241c87ad800beeab545ab867354d4683d5bfb6ce
| -- PKG_CONFIG_PATH ........
| -- Found PkgConfig: /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/bin/pkg-config (found version "0.29.2")
| -- Checking for module 'libdrm'
| --   Found libdrm, version 2.4.101
| -- Checking for module 'gbm'
| --   Found gbm, version 20.0.2
| -- Checking for module 'egl'
| --   Found egl, version 20.0.2
| -- Checking for module 'glesv2'
| --   Found glesv2, version 20.0.2
| -- Checking for module 'libsystemd'
| --   No package 'libsystemd' found
| CMake Error at /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:467 (message):
|   A required package was not found
| Call Stack (most recent call first):
|   /media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/recipe-sysroot-native/usr/share/cmake-3.16/Modules/FindPkgConfig.cmake:647 (_pkg_check_modules_internal)
|   CMakeLists.txt:95 (pkg_check_modules)
| 
| 
| -- Configuring incomplete, errors occurred!
| See also "/media/usb/rpi_64_yocto/raspberrypi4-64/tmp/work/aarch64-poky-linux/flutter-pi/git-r0/build/CMakeFiles/CMakeOutput.log".
| WARNING: exit code 1 from a shell command.
| 
NOTE: recipe flutter-pi-git-r0: task do_configure: Failed
NOTE: Tasks Summary: Attempted 5309 tasks of which 5308 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /media/usb/rpi_64_yocto/sources/meta-flutter/recipes-graphics/flutter-pi/flutter-pi_git.bb:do_configure
Summary: There was 1 WARNING message shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.

TARGET_GCC_VERSION

Hi in the README.md there is:

TARGET_GCC_VRSION = "8.3.0"

this is not the default gcc version in dunfell, is it a typo ?

Keyboard Support

Does your version of flutter_wayland have keyboard support? When I tried a sample application in flutter_wayland, I could navigate properly using mouse but couldn't navigate using keyboard. Both on Ubuntu Linux and Pi. Could this be anything wrong from my side?

bitbake failed

Hi, I tried bitbake depot-tools-native, but the following error occurs:

ERROR: depot-tools-native-git-r0 do_compile: Execution of '/ubinux-dev/ubinux-build/build-ubinux-armv8/tmp/work/x86_64-linux/depot-tools-native/git-r0/temp/run.do_compile.612648' failed with exit code 127:
Your copy of depot_tools is configured to fetch from an obsolete URL:

  https://chromium.googlesource.com/chromium/tools/depot_tools


Timeout; not updating remote URL.
CIPD selfupdate failed. Trying to bootstrap the CIPD client from scratch...
[P622047 07:17:57.572 client.go:306 W] RPC failed transiently. Will retry in 1s    {"error":"rpc error: code = Internal desc = prpc: when sending request: Post \"https://chrome-infra-packages.appspot.com/prpc/cipd.Repository/ResolveVersion\": dial tcp 172.217.175.244:443: i/o timeout", "host":"chrome-infra-packages.appspot.com", "method":"ResolveVersion", "service":"cipd.Repository", "sleepTime":"1s"}
[P622047 07:18:28.599 client.go:306 W] RPC failed transiently. Will retry in 2s    {"error":"rpc error: code = Internal desc = prpc: when sending request: Post \"https://chrome-infra-packages.appspot.com/prpc/cipd.Repository/ResolveVersion\": dial tcp 172.217.175.244:443: i/o timeout", "host":"chrome-infra-packages.appspot.com", "method":"ResolveVersion", "service":"cipd.Repository", "sleepTime":"2s"}
......

Do you know what's the matter?

Hardware acceleration in flutter-wayland

Does flutter-wayland provide hardware acceleration by default, I had observed a delay while running the flutter gallery app provided by the flutter team on flutter-wayland. Do you have an idea about those?

STM32MP157x yocto build fails

I used the commands you have for the STM32MP157x Discovery Board, but the build fails:
ERROR: Task (/home/poky/openstlinux/openstlinux-5.10-dunfell-mp1-21-03-31/layers/meta-flutter/recipes-graphics/flutter-engine/flutter-engine_git.bb:do_patch) failed with exit code '1'

Error: Command 'python3 src/flutter/tools/download_dart_sdk.py --fail-loudly' returned non-zero exit status 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.