About
If you can't edit this page please file issues at:
And let it know to @pcoval (@rzr):
Note this page should be relocated to match a project (ie: core-os or blueprints?)
Status
- Investigation: meta-flutter has been maintained at various places, the most active repo if for Automotive Grade Linux (on dunfell branch)
-
Rebuild layer
- qemux86-64
-
Seco C61 support
- https://edge.seco.com/en/astrid.html# GC320 2D accelerator + GCNanoUltra 3D accelerator
- Seco b68 support (currently FTBFS on compiler-rt)
- RPi BSP (test using pi3)
-
Test demo app: homescreen
- qemux86-64
- C61 support (@nat said it's working)
-
Pi3
- eclipse/oniro-core/oniro#220 (closed) (kirkstone TODO)
-
Pi4 (need device)
- Enable vulkan bits for Rpi VC
-
dragonboard-410c with GpU : Adreno 306 (same as quectel?) :
- blueprint-flutter-image-dragonboard-410c-20220405043152.rootfs.wic.gz
-
STM32MP1 with vivante GPU (using etnaviv driver)
- blueprint-flutter-image-stm32mp1-av96-20220405131504.rootfs.wic.bz2
-
Patches to upstream: https://github.com/meta-flutter/meta-flutter/pulls
- @nat patches for oniro compilers (no more needed)
- @pcoval: overrides, SystemD
- Sample meta-oniro-blueprint-flutter layer for distro:
- Integrate meta-flutter in oniro on supported branch
- Create example application
- video support (need ffmpeg? legal?)
- RO rootfs
- opt: compare to android base (boot in 20secs, android 24 sec , app = 3 sec)
- Oniro initiative:
Usage
Download
Latest image:
curl -O "https://siasky.net/CAATC1yPp6i8o4wZkKLXht2hGvRQJVaETUrigVkS7VDgeA/#./file/blueprint-flutter-image-raspberrypi3-64-20220404121845.rootfs.wic.bz2" # 217Mi720Ki965o = 0228279237c ~= 222928 Ki ~= 217 Mi ~= 0 Gi
md5sum blueprint-flutter-image-raspberrypi3-64-20220404121845.rootfs.wic.bz2 | grep "86d9a5914c19c8b21e9f9dd45d500447"
curl -O "https://siasky.net/EACpZpxonpSYdOJ-PCp9_sxGMv83SKFLZwdIGW_PXpErBw/#./file/blueprint-flutter-image-raspberrypi4-64-20220404215135.rootfs.wic.bz2" # 420Mi591Ki632o = 0441007736c ~= 430671 Ki ~= 420 Mi ~= 0 Gi
md5sum blueprint-flutter-image-raspberrypi4-64-20220404215135.rootfs.wic.bz2 | grep "2a5f5791a0597149b87f95377889d1f1"
curl -O "https://siasky.net/CAD3fFjVq1pJ2lD0rnB4AN3axHVEgG8m9Ggl57saiSo3qA/#./file/blueprint-flutter-image-dragonboard-410c-20220405043152.rootfs.wic.gz" # 219Mi14Ki863o = 0229653343c ~= 224270 Ki ~= 219 Mi ~= 0 Gi
md5sum blueprint-flutter-image-dragonboard-410c-20220405043152.rootfs.wic.gz | grep "1ff2976c06e92c7ea69cfcc2c3ec002c"
curl -O "https://siasky.net/EACude4u7fXx5IeFIqqQojtPes5w-2YmpKsz4qKs_juvJg/#./file/blueprint-flutter-image-stm32mp1-av96-20220405131504.rootfs.wic.bz2" # 348Mi823Ki62o = 0365747262c ~= 357175 Ki ~= 348 Mi ~= 0 Gi
md5sum blueprint-flutter-image-stm32mp1-av96-20220405131504.rootfs.wic.bz2 | grep "7b382ec874625107a4db037f3d8fe857"
curl -O "https://siasky.net/EABeO-8BDvucSK00Qlre0lHQeX8ecGXAhKoW8Wbu8ialzw/#./file/blueprint-flutter-image-seco-imx8mm-c61-20220421155218.rootfs.wic.gz" # 458Mi222Ki681o = 0480475817c ~= 469214 Ki ~= 458 Mi ~= 0 Gi
md5sum blueprint-flutter-image-seco-imx8mm-c61-20220421155218.rootfs.wic.gz | grep "3a2c823c3f9824058bd4062cf54fd590"
Rebuild
# Set some variables specific to this blueprint
url='https://booting.oniroproject.org/rzr/meta-oniro-blueprint-flutter'
branch='dunfell' # Oniro stable (jasmine)
layer="meta-oniro-blueprint-flutter"
export DISTRO="oniro-linux-blueprint-flutter"
image="blueprint-flutter-image"
# Default machine can be replaced eg: "raspberrypi4-64"
export MACHINE=qemux86-64
mkdir -p "$DISTRO" ; cd "$DISTRO"
git clone --branch "$branch" "$url"
mkdir oniroproject ; cd oniroproject
export ONIRO_DIR="$PWD"
repo init ../$layer
repo sync --no-clone-bundle
# For kirkstone branch
sed -e 's|TCLIBC = "musl"|TCLIBC ?= "musl"|g' \
-i oniro/meta-oniro-core/conf/distro/oniro-linux.conf
export TEMPLATECONF=../oniro/flavours/linux
. ./oe-core/oe-init-build-env
bitbake-layers add-layer "$ONIRO_DIR/meta-flutter"
bitbake-layers add-layer "$ONIRO_DIR/../$layer"
bitbake "$image"
# Allocate more RAM to emulator for demo
sed -e 's|qb_mem = -m 256|qb_mem = -m 4G|g' -i \
build/tmp/deploy/images/${MACHINE}/${image}-${MACHINE}.qemuboot.conf
runqemu $MACHINE $image wic kvm
Meetings
YYYY-MM-DD : Next meeting
- @pcoval back on 2022-03-21
- Shared flutter blueprint layer (instructions above)
- Shared RPi images (see download)
- WIP: Hardware accel:
2022-03-08 : Meeting
- homescreen demo for RPi3 (1GB) (WIP)
- some patches upstreamed on meta-flutter honister branch
- TODO: bbappends into oniro
- HW SoM:
- Reqs: USAR, WiFi, BT, GPU (VPU TBC)
- Question: What VPU is using used?
- SC20(msm8909)supports yocto (old release)
- Seco boards:
2022-02-22 : Meeting
Status shared, RPi4
Question:
- SoM based on NXP SC61: bellow 20 USD
- to compare with:
- Quetel sc20
- Quetel sc200 (TBC?) (qcom/android) ~ (WiFi 4Core 8GB + 1GB) 16 USD
- https://quectel.com/product-category/smart-modules/
- Adreno™ 308 GPU
2022-02-08 : Meeting
- multiplatform --> mobile, desktop, touchscreen,...
- both in terms of graphics as well as chipset portability and device size
- reactivity and performance --> from graphics to hardware acceleration
- quantify this by comparing with silicon vendor / hw vendor provided original SDK)
- BOM / performance --> integrated graphics onto SOC
- sub 20 $ hw BOM
- benchmark with target portable graphical libraries such as design systems, or us horonix or alternatives
- UI design tool / IDE needs to generate production ready code
- https://en.wikipedia.org/wiki/Design_system
- for reference --> https://material.io/ (micro animations)
- flutter is a good solution to use as well as JS
TODO
So the plan for this week would be to evaluate integration of :
on oniro
and if not possible eventually (for JS?)
Linux packages
KNOWLEDGE BASE
FLUTTER
Is shipped into OH Ubuntu is also supporting it
Effort ToBe tracked (@pcoval/TODO)
Flutter for Linux is α version now (2020):
- https://static.sched.com/hosted_files/osseu2020/e0/# Oct 27_Graphical User Interface Using Flutter in Embedded Systems_Hidenori Matsubayashi.pdf
- https://news.ycombinator.com/item?id=24921031
- Musl port
Portability provided by:
Community:
- https://pub.dev/
- https://pub.dev/publishers/developer.huawei.com/packages
- https://ulusoyca.medium.com/why-is-flutter-fast-part-1-sublinear-building-317572cd6b47
Next: common API to be enabled to oniro eg:
FRAMEWORK7
Qt
QML is JS and can be deployed to MCUs too
No more open development, community TBC
NATIVE SCRIPT
No GNU/Linux support yet
- https://github.com/NativeScript/rfcs/discussions/11#discussioncomment-2057875
- https://github.com/NativeScript/NativeScript/issues/27#issuecomment-1023095347
REACT JS
Will depends on browser or electron (bloatware)
REACT NATIVE
Not yet supported Linux, some community efforts listed:
@pcoval evaluated native-gtk (GTK3)
ELECTRON
Alternative project for webviews: