Skip to content

sony/flutter-elinux

Repository files navigation

Flutter for Embedded Linux (eLinux)

flutter-elinux

Analysis

This software is a non-official extension to the Flutter SDK to build and debug Flutter apps for Embedded Linux devices using flutter-embedded-linux, which is the flutter embedder for eLinux.

Repositories

Contributing

Welcome to this project. We welcome all your contribution and feedback. See: CONTRIBUTING.md.

Features

  • Flutter optimized for Embedded Systems
    • Lightweight than Flutter desktop for Linux (Not using X11 and GTK)
    • arm64/x64 devices support
    • Minimal dependent libraries
  • Embedded software development
    • Cross-building from x64 to arm64 support
    • Install/uninstall/debug to remote target devices
  • Flutter plugins support
  • Display backends
  • Keyboard, mouse and touch inputs support
  • Equivalent quality to Flutter desktops
  • API compatibility with Flutter desktop for Windows and GLFW
    • APIs such as MethodChannel and EventChannel are completely the same with them

If you want to know more details, see also flutter-embedded-linux.

Plugins

Flutter plugins for eLinux such as video_player and camera can be found at flutter-elinux-plugins.

User documentation

User documentation including quick start guides can be found at Wiki.

Quick start

Install flutter-elinux

$ git clone https://github.com/sony/flutter-elinux.git
$ sudo mv flutter-elinux /opt/
$ export PATH=$PATH:/opt/flutter-elinux/bin

Install required tools

$ sudo apt install unzip curl clang cmake pkg-config

Run Flutter sample app on Wayland compositor

You need to install a Wayland compositor such as Sway and Weston, and launch it before launching your Flutter apps. There are some known issues with Weston version 9. Therefore, we recomend using other compositors such as Sway.

$ sudo apt install sway
$ sway &
$ flutter-elinux devices
2 connected devices:

eLinux (desktop) • elinux-wayland • flutter-tester • Ubuntu 20.04.2 LTS 5.8.0-63-generic
eLinux (desktop) • elinux-x11     • flutter-tester • Ubuntu 20.04.2 LTS 5.8.0-63-generic
$ flutter-elinux create sample
$ cd sample
$ flutter-elinux run -d elinux-wayland

If you want to run your flutter app in X11, use elinux-x11 instead of elinux-wayland:

$ flutter-elinux run -d elinux-x11

Forked from flutter-tizen

This software was created by branching from flutter-tizen (branched from this version). Special thanks to the flutter-tizen team.