Last year, Bill Hayden resumed development of Cosmoe after a 17-year hiatus. After almost a year of work the author split it into two projects: Cosmoe on Wayland and Cosmoe Classic. Cosmoe goal is not a binary compatibility with Haiku, but according to Bill: “any Haiku application should recompile on Cosmoe with minimal or no changes”.
The current iteration of Cosmoe is a shared library which implements the BeOS class library on top of Wayland. There are no supporting programs, e.g. app_server or registrar, needed to use it. All the necessary functionality is rolled into the library. Apps linked with the library run natively on Linux via Wayland.
The previous iteration of Cosmoe (now known as “Cosmoe Classic”) is a full port of the Haiku to the Linux kernel. It runs inside an SDL window on Linux. It would be possible to develop graphics drivers to allow it to run as its own standalone Linux-based OS, but those have not been developed.
Moving forward, my focus is on the shared library version since I believe it has the most practical benefit.
Both versions of Cosmoe descend from the Haiku operating system, which itself is an open-source re-implementation of BeOS. Cosmoe differs from Haiku in that it uses the Linux kernel instead of the Haiku kernel, and can run on any filesystem (not just BeFS).
I think this is great to give the BeOS/Haiku API more mind space. More people might actually write Native apps. And I imagine apps written for Cosmoe can be compiled for Haiku or even BeOS.
I’d imagine more the oposite, that it’s be easier to port native haiku apps to cosmoe and then also run them on linux for “free” somewhat.
It could be a better avenue than the qt backend for wonderbrush3 for example to make it run on linux, would be funky. :3
(I’m not sure how much complexity the qt backend actually adds however)
Would be great if he used something other than Linux underneath the hood. I love Linux as much as the next person but I get more excited when BSD or something else not Linux is used under the hood of an operating system.
Might be interesting to compile the classic one on Haiku to serve as a testbed for apps. Yes, I know you can use QEMU but this might have less overhead.
But the Wayland version? Sure we could run Genio and Wonderbrush on Linux. But who would do that? Us. It would be great for us to run the tools we already know and love on Linux. But Linux isn’t exactly crying out for more IDEs and graphics editors. The die-hard Linux crowd will just keep on using the tools they know and love.
Still, he’s got an itch to scratch. More power to him.
It’s not exactly an operating system any more, though, is it? It’s either an SDL app running on an actual operating system, or it is Yet Another Widget Toolkit.
The original goal for the classic version was to be a full-on operating system. You could do it either by using sdl’s framebuffer driver, or maybe by writing a directfb driver for Cosmoe and replacing the sdl part. I guess sdl in a window is just a more convenient way to test and debug it, until it runs well enough to be self-hosting.
The new Wayland version removes the need for all that, and the lines between an ui toolkit, a desktop environment, a linux distribution, and an operating system can get quite blurry these days. As it stands now, it’s just a toolkit like Qt or GTK. But all it would take is making Deskbar and Tracker run, and then make a prebuilt install image with the entire system?
Imagine if you could run something like BeOS Personal Edition but more like a super application full screen and fully integrated with the host operating system.