3 ms·
Are there some insights on why they chose the rather unusual stack of using rust and flutter for the new UI? To the outside observer, it seems like it's not a c
by nikeee 2y ago
Are there some insights on why they chose the rather unusual stack of using rust and flutter for the new UI? To the outside observer, it seems like it's not a carefully taken business decision but some random engineer who wanted to learn rust and flutter.
Firstly rust for an installer UI? Does it need to be especially fast or memory safe? Maybe. Does it have nice bindings for a UI layer? Maybe, or did they create the bindings for flutter (a UI framework designed for object-oriented Dart) by themselves?
So why flutter? I guess it can do some pretty animations. Being maintained by Google and designed for Dart, it may just get abandoned in some time, amplified by the fact that noone uses Dart, except for flutter.
- oooyay 2y agoCanonical made an announcement some time ago when Flutter started supporting desktop usecases that they were all in on Flutter: https://snapcraft.io/blog/canonical-enables-linux-desktop-app-support-with-flutter?_ga=2.130672647.968809281.1615741199-1046984023.1615195227 https://snapcraft.io/blog/canonical-enables-linux-desktop-ap... This is them actually discussing the installer: https://ubuntu.com/blog/flutter-and-ubuntu-so-far https://ubuntu.com/blog/flutter-and-ubuntu-so-far
- kyrofa 2y agoIt's top-down engineering. Mark commanded the desktop team to go all-in on Flutter. This is how Canonical functions.
- wmf 2y agoSo he's learned nothing from Unity and Mir.
- jeroenhd 2y agoUnity and Mir were ready and usable years before Wayland was usable in practice, though. It's still used on Ubuntu Touch because it allows for reuse of the existing Android graphics acceleration stack in a way that Wayland doesn't. Canonical often invents things that other parties like Red Hat then reinvent, often learning from the mistakes Canonical makes, leading to a better end result for everyone. I dread to think what systemd would've looked like had upstart not laid the foundations for a normal service management system on Linux.
- edwinjm 2y agoHaha. It indeed seems a bit overkill. I can image you don't want you animations to be stuttering while downloading and installing tens of packages so Rust seems like a good solution. The advantage of Flutter is that you have full control of the UI no matter which device you use. Why not use GNOME? Maybe GNOME only works good after everything is installed? They might have good reasons but maybe they got sick of C++ and GNOME and wanted to try something else.
- Quekid5 2y agoSomething something Snap. Something something Mir. Something something Upstart. ... it's just Shuttleworth's latest fancy, I expect.
- foul 2y agoAlbeit NIH and Silicon Valley behaviour, I like how Canonical however ships things coming from their R&D and M&A. Probably most of the Linux userspace is mantained jointly by IBM and Microsoft nowadays, it's not bad to hear outsider work.
- cycomanic 2y agoI am always amazed how the red hat crowd managed to change the narrative around Ubuntu always starting their own thing instead of using something established. Reality is that both snap (2014) and upstart (2006) came before flatpak (2015) and systemd (2010). Now there might be valid reason why the later options are superior, however accusing Ubuntu to just do something different out of "fancy" seems quite unfair. They did develop a solution for things theat where widely regarded as problems (as evidenced by others later doing the same thing), where they failed (and there are multiple reasons IMO) is getting their solutions adopted by the wider community.
- popey 2y agoRHEL even shipped upstart before systemd was a thing.
- Quekid5 2y agoI feel obligated to mention that I run Arch and have done for a long time :). About the upstart thing... even the creator of Upstart acknowledged that systemd's design is more sound -- on Canonical's bug tracker no less -- and kudos to him for doing that. TL;DR: Upstart was essentially callback hell in a different form. ... but to GP: my point wasn't really about when projects were started per se, but they should have been ended much sooner than they were. I absolutely support innovation around the platform, but maybe we shouldn't be too stubborn.
- QuercusMax 2y agoGoogle just laid off some large portion of the Flutter team: https://news.ycombinator.com/item?id=40184763 https://news.ycombinator.com/item?id=40184763
- addicted 2y agoBecause it’s Canonical and they wouldn’t be Canonical if they didn’t do something randomly and unnecessarily different only to collapse under the weight of maintaining their own unique bespoke technology and then go right back to what everyone else was doing, creating a whole lot of confusion and wasted effort in the interim.
- m463 2y agoDidn't know what flutter was. Flutter is an open-source UI software development kit created by Google. It can be used to develop cross platform applications from a single codebase for the web,[4] Fuchsia, Android, iOS, Linux, macOS, and Windows.[5] https://en.wikipedia.org/wiki/Flutter_(software) https://en.wikipedia.org/wiki/Flutter_(software)
- 1oooqooq 2y agoit compiles code into dart and then add helpers to further release a desktop/Android/ios shell-app that have a dart interpreter or a helper that compiles dart into java/objc on top of a shell app project. it's a freaking mess but ambitious if you want a single code based (with 10 code bases hidden)
- voidr 2y agoThe Cosmic Desktop Environment is built with Rust and that seems to work fine, so likely the issue is with flutter, which I don't really understand why chose that over Qt or GTK. Apparently Microsoft writes their installer in HTML, CSS and JavaScript and that also works fine. It is very embarrassing they Canonical somehow manages to screw up something as simple as an installer.