yes and yes! Flutter generates a binary for desktop apps, although It's Alpha. In order to generate a binary in Dart (say for something that's serverside) you need to download the flutter SDK and run dart2native. It's rather new so there's still lots of room for performance improvements but it looks very promising.
It makes sense to only use a single UI toolkit. If some of your stuff is cross platform, it's probably easier to write the single-platform stuff on the cross-platform toolkit than it is to have your devs need to know 2 or more toolkits.
I had to make a web app with a friend and I used Flutter which was absolutely amazing. Easier to work in than react native, and now if I want to work on some Linux desktop apps I have the skills to do so.
Not OP, but one rationale would be that there are replacements for Go. Flutter seems to exist in a space where there aren't a ton of solutions, since I don't think react-native works on desktops (yet? Unless that's changed). If you kill Go, you can use Python or C++ or Java or etc. It might not have the exact paradigm you want, but it'll work.
I don't think it's a great justification, though. You could probably add Electron support to react-native for fewer engineer hours than it takes to build and maintain Flutter.
Related to this, has anyone compared the performance of flutter desktop apps to electron apps? I’m not experienced in flutter/dart, but would love to see an accessible & performant alternative to electron on the desktop.
If I can compare to react-native,flutter seems higher.
Electron which is used widely used is the least search term.
Interesting enough, react-native and electron distinguish themselves in the Est coast and always miss the Wyoming or the Dakota's while flutter is more evenly distributed.
Which would mean that the higher flutter level might just be google cannot distinguish between the common name and the framwork.Yet the flutter trend is growing so it's certainly the framework or climate change side effect :D .
Well played. Flutter does seem to be the top-dog in cross-platform development (even when adding Xamarin) but it's a Google product, so use at your own peril.
With well over 100,000 apps in the Play Store alone, from companies like Grab, eBay, Alibaba and Betterment; as well as copious usage by Google's own apps like Google Pay and integration into the Home Hub, this is a pretty low risk even if you have a skeptical eye at Google's track record. It's more than paying for itself in reduced costs internally, even without any regard to its external value to Google.
This might be off-topic but, when can i get cloud-init for physical installs? Without jumping through ten hacks? Isn't that the future for installers given the amount of effort being put into the project and it's cross distro focus?
I'm genuinely curious on each of these questions, thanks for any insights!
What hacks? I mean the only difference between a VM running in Proxmox with cloud-init “support” and your physical host is that Proxmox can virtually insert a CD with the config on it with the label cidata.
As long as you have some method to get your config on the host it “just works.” We’ve used a USB in the past.
I recenly distro hopped around trying to install an encrypted Linux alongside windows.
The installer used by Ubuntu made this completely manual, roll up your sleeves, set all your volumes up in the terminal. It took ages and was precarious as hell.
The installer used by elementaryOS automated it, though it had a tendency to crash.
The gui installer used by Debian and Manjaro was literally a doddle. Select a dual booting encpyped install and off you go.
I was very surprised that installing Debian would be easier than Ubuntu, and pleased to hear Ubuntu is changing their installer.
>The installer used by Ubuntu made this completely manual, roll up your sleeves, set all your volumes up in the terminal. It took ages and was precarious as hell.
The Ubuntu installer has been capable of doing disk encryption for several years now, so I'm confused what you mean by this.
I tried to do the same recently - the roadblock (I recall) having is that encrypting the entire disk is very easy. Encrypting none of an individual partition is very easy. Encrypting just your Ubuntu install and not breaking your windows install is dramatically less plug'n'play.
Honestly, I don't know if it is related but I learned it is way better to keep per-disk configuration instead of dual-boot using exactly the same disk but having multiple partitions. These days the SSD disk are really cheap and the simplest and most maintainable configuration is to keep Linux on the one disk, and Windows on the second. I have never experienced any kind of problem having a LUKS partition is such setup. Worthing noting in such setup is the booting partition resides on the disk, related to its OS (i.e. GRUB on Linuxish disk, Windowish boot on the disk with Windows).
Clean reinstall of Windows/Linux? No problem! Just plug off the other disk and install the OS. You don' need to care about losing any data nor reinstalling the GRUB. No "how to-s" nor googling solutions for the issues related to dual boot (except typical timezone switching).
The blog mentions the installer is a “start over” from the Ubiquity installer, which is now too old, and that they’re not making use of other contemporary installers. Is this a rewrite from scratch mistake?
In my world, there’s been a software package that has been trapped in a rewrite for 11 years. They’ve added many features over the years but still haven’t reproduced the original functionality of the older version. That version was in development for 15 years. The only code shared between the 2 is the code that was not developed in house. It’s made my want to run screaming out of the room whenever I hear the words complete rewrite. We now have one application that does some things well and another that does other things. Investing the same energy in the original could have given us so much more.
I think that the functional aspect of Dart and the near-immediate mode that flutter provides are a godsend. UI in other languages is a sticky mess of callbacks and dealing with anything multithreaded is a chore. Flutter just rebuilds and rebinds everything once the state changes (you'd be surprised how fast it is!)
47 comments
[ 2.8 ms ] story [ 116 ms ] threadI also wonder what this means for cross-toolkit consistency.
Dart is like typescript with actual types, and without JavaScript ecosystem baggage
I had to make a web app with a friend and I used Flutter which was absolutely amazing. Easier to work in than react native, and now if I want to work on some Linux desktop apps I have the skills to do so.
I don't think it's a great justification, though. You could probably add Electron support to react-native for fewer engineer hours than it takes to build and maintain Flutter.
That said, VS Code absolutely shows what can be done in an Electron based app that works well and is very responsive for it's breadth.
hehe ;)
Interesting enough, react-native and electron distinguish themselves in the Est coast and always miss the Wyoming or the Dakota's while flutter is more evenly distributed.
Which would mean that the higher flutter level might just be google cannot distinguish between the common name and the framwork.Yet the flutter trend is growing so it's certainly the framework or climate change side effect :D .
https://trends.google.com/trends/explore?date=today%205-y&ge...
With well over 100,000 apps in the Play Store alone, from companies like Grab, eBay, Alibaba and Betterment; as well as copious usage by Google's own apps like Google Pay and integration into the Home Hub, this is a pretty low risk even if you have a skeptical eye at Google's track record. It's more than paying for itself in reduced costs internally, even without any regard to its external value to Google.
I'm genuinely curious on each of these questions, thanks for any insights!
As long as you have some method to get your config on the host it “just works.” We’ve used a USB in the past.
Check out the NoCloud datastore.
https://cloudinit.readthedocs.io/en/latest/topics/datasource...
The installer used by Ubuntu made this completely manual, roll up your sleeves, set all your volumes up in the terminal. It took ages and was precarious as hell.
The installer used by elementaryOS automated it, though it had a tendency to crash.
The gui installer used by Debian and Manjaro was literally a doddle. Select a dual booting encpyped install and off you go.
I was very surprised that installing Debian would be easier than Ubuntu, and pleased to hear Ubuntu is changing their installer.
The Ubuntu installer has been capable of doing disk encryption for several years now, so I'm confused what you mean by this.
Clean reinstall of Windows/Linux? No problem! Just plug off the other disk and install the OS. You don' need to care about losing any data nor reinstalling the GRUB. No "how to-s" nor googling solutions for the issues related to dual boot (except typical timezone switching).
https://www.joelonsoftware.com/2000/04/06/things-you-should-...
In my world, there’s been a software package that has been trapped in a rewrite for 11 years. They’ve added many features over the years but still haven’t reproduced the original functionality of the older version. That version was in development for 15 years. The only code shared between the 2 is the code that was not developed in house. It’s made my want to run screaming out of the room whenever I hear the words complete rewrite. We now have one application that does some things well and another that does other things. Investing the same energy in the original could have given us so much more.
It seems tied to Dart and UIs tied to specific languages seem to be stuck there (thinking e.g. GT or Morphic from Smalltalk land).