Google has hauled in Canonical to help extend the search giant's Flutter development framework to support Linux desktop applications.
The Linux alpha SDK introduced today leaves Windows as the least well-supported, although there is an "early technical preview" of Windows support, according to the Flutter wiki.
According to Google, adding desktop support is a substantial challenge. "This work includes extensive refactoring of the engine to support desktop-style mouse and keyboard input as well as resizeable top-level windows," said Google's Chris Sells and Canonical's Ken VanDine in a joint statement.
There is support for Google's Material Design and access to OS features like the system menu bar and standard dialogs. The Linux support uses GTK.
Canonical's primary goal is to persuade developers of existing Flutter applications to port them to Linux. "We are not choosing Flutter over any other existing framework or ecosystem," Martin Wimpress, Engineering Director for Ubuntu Desktop, told The Reg. "We see lots of momentum in the Flutter developer community and around 80,000 Flutter apps published in other app stores.
"We want to invite those developers to bring their applications to desktop Linux and Ubuntu, just as we have done with GTK, Qt and Electron in the past. Our objective here is to further close the application parity gap for desktop Linux users and broaden the developer audience."
One potentially contentious point is that Canonical will focus on building and packaging applications for its Snap Store. "Flutter developers are already familiar with publishing apps via an "app store" paradigm," Wimpress told us.
"Snapcraft is the app store for Linux and this is a comfortable way for Flutter developers to reach a Linux audience. We add a Flutter extension to snapcraft to make building and publishing Flutter apps as frictionless as possible. The Flutter SDK is distributed as a snap and integrates with Visual Studio Code.
"We've worked with the developer of the Flutter extension for Visual Studio Code and that now features snap integration."
An early example of a Flutter application for Linux is Flokk, an application for managing Google contacts and linking them with GitHub and Twitter identities, developed by the Canada-based developers and designers gskinner. Gskinner specialise in interactive media, confessing on its blog they are "old school Flash devs", with Flutter the natural modern successor as a cross-platform and designer-focused framework.
Flutter appears to be a strategic project for Google and is linked to Fuschia, Google's forthcoming new operating system, though the company has yet to commit to any specific plans for it. Flutter is the official UI toolkit for Fuchsia.®
Facebook's man told: 'OK, now you are just trolling us'
'Most companies' want to make code 'completely transparent' SonarSource claims - but not outside the firewall
Gotta catch 'em all
Game developers face local license law that could 'devastate' iOS revenues
This should have been started a year ago, Solihull council docs say
Lots of love for AMD and POWER 10 and a hint of some Google's operational code making it into future releases
'Appreciates President Trump's personal involvement' and promises so much security, you'll be tired of securing