Flutter's future on Ubuntu/Linux?

You are missing like at least Windows 11 new style and the electron/edge based UI. And also some GUI toolkits exists twice, like, there are TWO winforms. I have no clue what’s windows native style at this point.

Btw, I am excited to see what can be done with flutter. And curious about 22.04. Hope to play with the new installer soon!

1 Like

Anybody else having issues with building for linux desktop and launching flutter apps when using flutter snap?

I’ve created an issue a long time ago but the devs went silent :confused:
https://github.com/canonical/flutter-snap/issues/50

Is Canonical still behind this or was this effort axed at some point in between?

FWIW, I don’t think Marcus is working on flutter anymore, not sure who has stepped in their stead though, but it still is supported by Canonical. CC @kenvandine ^

I haven’t been able to reproduce this myself, tested on both impish and 20.04. I’ve assigned the issue to myself to investigate further.

1 Like

As a young very enthusiastic Flutter developer I can say that Ubuntu’s move to Flutter was exciting for me.
I am not just waiting for it to be more integrated into their apps so that I will have a chance to play with it, but also intrigued if they will take it one step forward and use it for the UI of the OS itself XD.

It is so powerful and easy.
That could reduce development time, maintenance costs, will lower the entry threshold for new developers, and open the door for complex UI without limitations.

If the OS UI and the applications are both Flutter then it solves the UI consistency problem :grin:

3 Likes

Sounds fantastic :muscle:

If you are looking for a little bit of help for starting an ubuntu application with flutter that uses our libraries this tutorial might help:

https://github.com/ubuntu-flutter-community/yaru_tutorial#readme

Best regards

Hello and welcome!

You’ll be pleased to hear that there are already areas where Ubuntu uses flutter for its core system apps. Our new installer in Ubuntu 23.04 is built in Flutter, as well as our upcoming new software store in Ubuntu 23.10!

3 Likes

Personally I like the design of the new Ubuntu flutter apps (installer, store, lxd workshops).

I don’t like the direction GTK is going. The design inconsistencies between GTK3 and GTK4 and Non-Adwaita vs. libadwaita have not been resolved to date. GTK5 will appear next year, although many basic apps are still based on GTK3 to this day.

So I can understand that Ubuntu with Flutter makes itself independent of all the GTK confusion. Developing in Flutter is faster, more efficient, more enjoyable and less expensive. If you look at the long time it takes to port an app from GTK2 -> GTK3 -> GTK4 and the low complexity of today’s GTK4 applications, app development with GTK seems to be very cumbersome.

The design inconsistencies between GTK3 and GTK4 and Non-Adwaita vs. libadwaita have not been resolved to date

Well yes. With the move to GTK4 and Libadwaita, Gnome updated their Adwaita theme, so there’s obviously going to be a difference. Gnome isn’t interested in backporting the theme to GTK3 because they’d rather just update the apps to GTK4 and Libadwaita. If that does bother you, a community already has a solution, a theme called adw-gtk3.

You also have to consider that GTK is a toolkit not just for Gnome’s use. Not all third party apps have to follow Gnome’s design. Just like not all Flutter apps will look the same. Some apps like Local Send will look out of place on Ubuntu because they don’t use the Yaru theme and Canonical’s design language.

although many basic apps are still based on GTK3 to this day.

The vast majority of Gnome’s apps have already been updated. The few that haven’t include Terminal (Console was meant to replace it, but since almost no distros chose to ship it, there’s a chance they may make Terminal the main terminal again), Disk Utility, Boxes, System Monitor, Power Statistics, and Videos.

GTK4 apps that don’t use libadwaita use the same theme as GTK3. Transmission is a good example. It was recently ported from GTK3 to GTK4 but still looks like a GTK3 application.

If I develop a GTK4 application without libadwaita, it inevitably looks different than Gnome applications. This is a discrepancy that was introduced starting with GTK4 and has caused more problems than it solved in my opinion.

I’m aware of the libadwaita theme for GTK3, but it’s not used anywhere by default for a reason and it obviates the design principles introduced with GTK4.

LXDE has already switched from GTK to Qt. The Budgie Desktop is planning to migrate from GTK to EFL. Xfce, Cinnamon Desktop and MATE do not appear to be migrating to GTK4.

1 Like

Hm, I am not defending anyone here but if the best practice and recommended libs by gnome developers and designers are two and not one then it’s the way it is. They must have their reasons to make it two libs instead of one.
For our flutter Apps our looks are currently spread across 3 libs (yaru.dart, yaru_widgets.dart and yaru_icons.dart) which is maybe not ideal but currently easier to maintain.

One has to view multiple sides of the story. Users, app Devs and toolkit Devs

2 Likes