Skip to main content

What new features about Flutter can we expect in Ubuntu 24.04?

Last December Canonical published their roadmap for the new 24.04 release. In it they discuss a lot of new milestones about the upcoming LTS release but I would like to focus on those relevant to Flutter.

Tux the Linux mascot with the Ubuntu and Flutter logo

GTK4 Migration

This is probably the biggest change we can expect. When a Flutter application is running on Linux what it does underneath is start a GTK 3 window, the toolkit for creating graphical user interfaces. Once the window is opened, the context is passed to Flutter to start the magic of rendering, etc...

Currently the version of GTK used by Flutter is GTK version 3. With the new arrival of Ubuntu 24.04 it is expected to have migrated to the latest version of GTK 4, which brings some disruptive changes that need to be handled before jumping to the new version.
Computer with GTK logo
The list of changes is huge as many parts of GTK have been rewritten from scratch. From a new rendering engine that was initially called NGL and is now called GL, to a lighter form of object handling, etc... Don't think that GTK 4 has just come out of the oven, as the latest version of GTK is 4.12.5 at the time of writing this post but GTK 3 is still being supported by the amount of tools that use it to give them enough time to migrate to it.

Launchpad Translation

Launchpad is a complete system for collecting changes from different types of sources and organising them collaboratively into end-user software packages, delivered as part of a downloadable operating system or already installed on purchased hardware.  In other words, Launchpad is used as a suitcase for open source projects that are later consumed to build the Ubuntu operating system. What happens is that Flutter does not support the available translation system, so in the last 23.10 release they had to resort to Weblate, a SaaS translation service. Unfortunately, during the build process of version 23.10 they were involved in some offensive translations being injected. To mitigate the risk of more offensive translations in the future they will apply: 
  1. Trying to self-host weblate.
  2. Ensuring that each language is gatekept by a trusted translator. 
This should bring their Flutter translations up to the quality seen on Launchpad.

Flutter apps and dependencies

A new section of its application (developed in Flutter) App Center called "Top Charts" to help users discover the best applications. Additionally, they are updating Flutter and Dart dependencies and reworking their repositories to be consistent. Seeing these as necessary steps to make it easier for anyone to get involved.

Conclusions

As you can see, Flutter is a big bet from big companies in the OS field like Canonical and as an Ubuntu user I'm happy to see the milestones for the next version which I'm looking forward to try out. I think GTK 4 is going to allow more Flutter applications to come to Linux, which I'm very excited about.

See you in other posts!

Comments

© 2020 Mobile Dev Hub