Flutter is an open-source UI SDK (software development kit) created by Google to helps those who want to build quick and modern applications for a wide-range of operating systems, including Android, Linux, Mac, iOS, Windows, Google Fuchsia, that work across desktop, mobile, and the Web.
A year ago, Canonical teamed up with Google to make Flutter SDK available in Linux as a button, a universal software deployment and package management system for Ubuntu OS and other GNU/Linux-based distributions without allowing those interested in creating beautiful desktop applications in Linux.
Ubuntu has High Hopes for Flutter
Ken VanDine from Canonical runs on the Ubuntu desktop. He appeared during a recent Google Flutter Engage online event that took place on March 3rd, 2021 convey the message of his company’s full support for the technology:
We [Canonical] not only enabled Flutter for Linux we also worked with the Flutter team to publish the Flutter SDK as a Snap on the Snap Store, the app store for Linux
By publishing the Fluter SDK as a Snap we’ve made it very easy to install and set-up your development environment to build mobile, web, and desktop apps with Flutter on Ubuntu. Flutter is the default choice for future mobile and desktop apps created by Canonical
Speaking about Canonical’s contribution to Flutter, Ken also noted that the Ubuntu team will work to provide full multi-window support for Flutter on all desktop platforms. This will give developers a rich set of Windows-type tools to build an effective user interface platform. Even for plugins, the team is already working on creating popular Flutter plugins for Linux, such as support for Firebase, Bluetooth, network connectivity, and desktop notifications.
In addition, Canonical also brings the unique Yaru Ubuntu style to Flutter apps, encouraging app developers to port their apps to the Linux desktop. Those, who are interested in trying out Flutter for creating apps for Ubuntu can download the Flutter SDK from the Snap Store.
Canonical Implemented the Ability to Create Desktop Applications for Linux in Flutter
Despite the presence of the Flutter SDK for Linux, it has so far only been used for mobile application development and does not support building desktop applications for Linux. Last year, Google announced its intention to add the ability to develop full-fledged desktop programs to Flutter and introduced an alpha release for developing such programs for macOS. Now Flutter is extended with the ability to develop desktop applications for Linux. Support for Windows application development is still at the initial prototype stage.
For drawing the interface in Linux, a binding based on the GTK library is used (support for Qt and other toolkits is promised to be added later). In addition to Flutter’s native Dart language, which is used to create widgets, applications can use the Dart Foreign Function interface to call C/C++ code and access all the features of the Linux platform.
Ken ended his speech saying that the desktop development team is working not only on making Linux a first-class citizen of Flutter, but also to make Flutter the default choice for future desktop and mobile applications created by Canonical.