It also seems to combine the worst of both platforms: Apps.
Is there any OSDEV work that goes towards a more integrated, component-based architecture? As sad as it seems, Unix tools & pipes seems to be the most successful and enduring attempt in that direction. Systems doing that on a language basis seem mostly dead (Lisps, Smalltalks, Oberons), component architecture isn't doing much (OpenDoc as the prime example, CORBA/COM to a minor degree).
I don't think we'll be breaking much new ground when it just comes down to more efficient runtimes, packaging and ways to launch the same old ultra-tightly focused applications.
Component architecture is everywhere on the desktops, just not on those using UNIX text terminals.
COM has been the underlying driving technology of Windows since Vista, where the Windows team took the Longhorn .NET ideas and redid them with COM, since then we got COM improved as WinRT/UWP. Which despite the common mix with the store (blame marketing teams), is what to this day most Windows 10 APIs make use of, and now even React Native for Windows is built on top of.
On Apple side, we have XPC being increasingly used, while Android uses a mix Binder and Activities, also the same IPC mechanism powering Treble based drivers.
XFCE, GNOME and KDE make heavy use of DBUS.
Then I laugh of joy with hype around gRPC, as everyone is just rediscovering CORBA.
Lisps, Smalltalks, Oberons ideas can be replicated on top of those component stacks, which is what Powershell actually does to certain extent on Windows.
We initially experimented with almost exactly what was described here, but it lacked one thing and that was third party expandablility. Sadly, I see no way for common and modern apps in their current form to be integrated into anything other than the traditional application format. If this changes, I hope to be the first to jump on board and get the ball rolling.
Dbus seems to be doing really well in recent decade. Sound, networking, system management already use it on Linux. It's likely only going to get more common. With the well defined interfaces seems to be a reasonable solution for system and user components.
What does the "unix"ness of stuff have to do with the lack of popularity of linux as a market? Blaming a technical problem for what is actually social does nothing positive for anyone. Certainly, "linux" itself as a free platform is not necessary for liberation, let alone the litany of other brands you mentioned. Linux is unpopular for many, many other reasons than avoiding technical issues.
If "unix" is considered a success, I'm giving up on coding. What's the point? People will just gravitate towards brand loyalty regardless of the technical underpinnings.
These guys used to be on the Fuchsia subreddit fairly frequently. They were definitely far from experienced or professional. IIRC, the founder is very young and was very much a beginner to OS development.
Thankfully that's just around for layout reference, working with the Process class was absolutely infuriating. I have made more effort since then to be more verbose and keeping the code up to a decent quality.
Hi, even if it's very early, congrats for starting such an ambitious project!
Instead of aiming the moon today, I may suggest to focus on only one thing and do it very well now.
My suggestion is to target mobile / desktop (convergent) linux. The story today is not good, and you seems to have achieved some interesting things with your UI shell that may take years to achieve with the usual linux technologies: Gnome or KDE.
You may even be able to quickly make a business by selling pre-flashed linux devices like raspberry pis, pinephones, pinebooks... with your beautiful and easy to use UI.
Why does a new open source OS project have to always shoehorn the entire GNU/Linux ecosystem with X11/Wayland, GTK, DBus and GNOME onto a totally different system?
The only positive takeaway from this is perhaps the learning experience in OS development. Other than that is there a point to this?
For the same reason UNIX actually won against much better OSes, copy paste of freely available source code, C is the JavaScript/PHP of systems programming languages and there were much better and secure platforms out there, including Multics.
Not sure exactly what it has to do with gnome or dbus, the desktop is backed by X11 (Migration to Wayland is underway but it's a pain to work with), the Flutter embedder itself renders with GTK. The project was started as a Fuchsia fork, and we intend to continue working hard on getting that ready, but sadly a lack of access to compatible modern hardware forced our hand to temporarily switch over to Linux as the development platform, so our layers of project would not stagnate while we wait for more polishing on Google's end.
For one thing, Fuchsia itself has had support built in for running Linux as a guest OS since roughly two years ago. [0]
For Dahlia specifically, it looks to ship a Linux kernel out of the box to extend its hardware compatibility. Relevant section below:
> Our dual kernel approach allows users with new(er) hardware to take advantage of the Zircon Kernel, while maintaining support for older devices using the Linux Kernel.
I opened the link. The only thing spoken to my screen reader was "enable accessibility". I pressed the button (it didn't accept space bar, but only enter) and it just announced an empty page.
I can't speak to the qualities of the os, but hopefully this won't be the entire a11y experience both on the website and on the os itself if both use flutter.
On Firefox, its struggling to keep this page alive such that the browser controls are locking everything up. I don't think its quite ready yet if browsers can't keep up with correctly rendering websites using Flutter.
Do you have an example of a complicated code base that uses flutter? I've never seen an interface designed with it that makes me think "wow. Great interface.", let alone the feeling that it can handle the functionality I would port to it.
To me this looks like the worst of both worlds. Poor UI choice, poor apps and loss of Linux hardware support. Sorry to be negative, but I just don't see where this fits.
How can they release it under the Apache license (which I applaud) if they use the Linux kernel which is GPL- I always thought those two licenses are incompatible (because of the restrictiveness of the GPL)
The core benefits of fuchsia are the kernel architecture and the security model it allows. If you're using linux for the kernel you have inherently done away with the primary advantage of fuchsia.
I looked briefly at the homepage but the actual architecture was not obvious even though their webpage was "pretty".
Can someone explain what it is they've done in a nice easy TLDR form?
With those benefits, there are also some major caveats that temporarily put a wrench in development. Fuchsia demands a system with a Kaby Lake CPU or newer, which were fairly hard to come by. Thanks to recent innovations in Fuchsia's emulator, it is easier to work on the UI and lower layers of the system, but it is still much easier to develop on and distribute Linux images for the time being.
"dahliaOS provides a fast and stable experience on nearly every computer, from a 2004 desktop tower to the latest generation of mobile notebooks. Our dual kernel approach allows users with new(er) hardware to take advantage of the Zircon Kernel, while maintaining support for older devices using the Linux Kernel."
It uses virtualization to run most/all Linux tools, I'm not quite sure if the functionality is bridged between the UI in Fuchsia yet, but the end product will likely end up looking something look Crostini on Chrome OS.
You can't install it, and this early on you shouldnt. My word alone probably does not carry much weight, but it is relatively safe, likely safer for usage than most current distributions where the only form of security is an up to date kernel. We opted to use a sort of stateful/stateless security model, where the system is stateless and varified on boot, and user files are stored inside an encrypted partition with relatively strict permissions for now.
I'm not convinced google learned anything with android WRT pushing GPU vendors to release driver source. Fuschia looks like it will only be a repeat of these problems.
I think they have learned the lesson that GPU venders will never release their source code. Fuchsia seems to be designed precisely to accomodate that fact - drivers are well isolated and speak to the kernel through a well defined (and hopefully stable!) interface (I think this is FIDL).
But I don't see how that is relevant here because this thing is based on Linux and X11.
[+] [-] mhd|5 years ago|reply
Is there any OSDEV work that goes towards a more integrated, component-based architecture? As sad as it seems, Unix tools & pipes seems to be the most successful and enduring attempt in that direction. Systems doing that on a language basis seem mostly dead (Lisps, Smalltalks, Oberons), component architecture isn't doing much (OpenDoc as the prime example, CORBA/COM to a minor degree).
I don't think we'll be breaking much new ground when it just comes down to more efficient runtimes, packaging and ways to launch the same old ultra-tightly focused applications.
[+] [-] pjmlp|5 years ago|reply
COM has been the underlying driving technology of Windows since Vista, where the Windows team took the Longhorn .NET ideas and redid them with COM, since then we got COM improved as WinRT/UWP. Which despite the common mix with the store (blame marketing teams), is what to this day most Windows 10 APIs make use of, and now even React Native for Windows is built on top of.
On Apple side, we have XPC being increasingly used, while Android uses a mix Binder and Activities, also the same IPC mechanism powering Treble based drivers.
XFCE, GNOME and KDE make heavy use of DBUS.
Then I laugh of joy with hype around gRPC, as everyone is just rediscovering CORBA.
Lisps, Smalltalks, Oberons ideas can be replicated on top of those component stacks, which is what Powershell actually does to certain extent on Windows.
The tools are there, learn to use them Luke.
[+] [-] DannyB2|5 years ago|reply
Example: if one tool outputs JSON, another tool, like grep, would recognize that is a subtype TEXT, and be able to process it.
Example: a more sophisticated hypothetical grep tool, would recognize that it might grep JSON differently than it greps TEXT.
Example: Tool 1 exporting JPEG might be incompatible with Tool 2 that only accepts JSON. A nice shell error message could result.
[+] [-] nmcain|5 years ago|reply
[+] [-] viraptor|5 years ago|reply
[+] [-] thdolskfjtjd|5 years ago|reply
If "unix" is considered a success, I'm giving up on coding. What's the point? People will just gravitate towards brand loyalty regardless of the technical underpinnings.
When will it implement plan9's bind?
[+] [-] Cloudef|5 years ago|reply
[+] [-] zeusk|5 years ago|reply
https://github.com/dahlia-os/system-recovery/commit/49336659...
[+] [-] skavi|5 years ago|reply
[+] [-] ampdepolymerase|5 years ago|reply
[+] [-] nmcain|5 years ago|reply
[+] [-] sylvain_kerkour|5 years ago|reply
Instead of aiming the moon today, I may suggest to focus on only one thing and do it very well now.
My suggestion is to target mobile / desktop (convergent) linux. The story today is not good, and you seems to have achieved some interesting things with your UI shell that may take years to achieve with the usual linux technologies: Gnome or KDE.
You may even be able to quickly make a business by selling pre-flashed linux devices like raspberry pis, pinephones, pinebooks... with your beautiful and easy to use UI.
[+] [-] rvz|5 years ago|reply
Why does a new open source OS project have to always shoehorn the entire GNU/Linux ecosystem with X11/Wayland, GTK, DBus and GNOME onto a totally different system?
The only positive takeaway from this is perhaps the learning experience in OS development. Other than that is there a point to this?
[+] [-] pjmlp|5 years ago|reply
However the power of free beer....
[+] [-] nmcain|5 years ago|reply
[+] [-] chaosharmonic|5 years ago|reply
For Dahlia specifically, it looks to ship a Linux kernel out of the box to extend its hardware compatibility. Relevant section below:
> Our dual kernel approach allows users with new(er) hardware to take advantage of the Zircon Kernel, while maintaining support for older devices using the Linux Kernel.
[0] https://9to5google.com/2018/06/15/fuchsia-friday-machina-bri...
[+] [-] devxpy|5 years ago|reply
https://web.dahliaos.io/#/
This has the power to accelerate flutter desktop development in general. Really excited for both these projects.
[+] [-] gostsamo|5 years ago|reply
I can't speak to the qualities of the os, but hopefully this won't be the entire a11y experience both on the website and on the os itself if both use flutter.
[+] [-] monkin|5 years ago|reply
[+] [-] rvz|5 years ago|reply
On Firefox, its struggling to keep this page alive such that the browser controls are locking everything up. I don't think its quite ready yet if browsers can't keep up with correctly rendering websites using Flutter.
[+] [-] Narishma|5 years ago|reply
[+] [-] furjdjslskfnfjr|5 years ago|reply
[+] [-] ponderingfish|5 years ago|reply
Thanks!
[+] [-] hardwaresofton|5 years ago|reply
So in a browser/web context, all you need (roughly) is a canvas, and to compile the relevant Dart to JS and you're off to the races.
[+] [-] lupinglade|5 years ago|reply
[+] [-] hans_castorp|5 years ago|reply
[+] [-] olliej|5 years ago|reply
The core benefits of fuchsia are the kernel architecture and the security model it allows. If you're using linux for the kernel you have inherently done away with the primary advantage of fuchsia.
I looked briefly at the homepage but the actual architecture was not obvious even though their webpage was "pretty".
Can someone explain what it is they've done in a nice easy TLDR form?
[+] [-] nmcain|5 years ago|reply
[+] [-] StreamBright|5 years ago|reply
[+] [-] jfdi|5 years ago|reply
[+] [-] afrojack123|5 years ago|reply
[+] [-] legulere|5 years ago|reply
[+] [-] hundchenkatze|5 years ago|reply
"dahliaOS provides a fast and stable experience on nearly every computer, from a 2004 desktop tower to the latest generation of mobile notebooks. Our dual kernel approach allows users with new(er) hardware to take advantage of the Zircon Kernel, while maintaining support for older devices using the Linux Kernel."
https://dahliaos.io/#features
[+] [-] Wezl|5 years ago|reply
[+] [-] skyde|5 years ago|reply
Is the compatibility just broken because it’s not running a standard X (server/Wayland) or is it deeper ?
[+] [-] nmcain|5 years ago|reply
[+] [-] unknown|5 years ago|reply
[deleted]
[+] [-] furjdjslskfnfjr|5 years ago|reply
[+] [-] WhyNotHugo|5 years ago|reply
Anyone else?
[+] [-] rcdwealth|5 years ago|reply
[+] [-] nmcain|5 years ago|reply
[+] [-] swiley|5 years ago|reply
[+] [-] IshKebab|5 years ago|reply
But I don't see how that is relevant here because this thing is based on Linux and X11.