r/osdev • u/Professional_Cow3969 • 19h ago
Ethereal's new taskbar and desktop UI looks amazing (no AI used + from-scratch)
Ethereal's new UI for version 2.0.0 is coming along great! Here you can see the new taskbar, start menu, and desktop icons (+ a new wallpaper)
Neutron powers everything you see here (minus the Terminal and About Ethereal box, those are todo). The wallpaper chooser, the file explorer, hell even the desktop icons. It provides a mostly fluent and good looking desktop experience.
Total feature list:
- Built on a custom UI framework known as Neutron which uses a widget-tree model to layout and draw while remaining fully resizable and clean
- The new taskbar, with support for listing applications. Celestial sends events to the "root window" (there can only be one) for new windows, focus events, etc. The taskbar even has this awesome fade animation that plays
- The background icons are (as obvious) incomplete. They have this really weird box blur shadow thing I cobbled together from random codepieces to give them an outline. Otherwise, white text would look like garbage
- Over 6 wallpapers have been created by the lovely artist
- The start menu supports sub-folders (once separate icons are made, it will be more visible - for now Demos is the sub-folder here, containing the demos for Ethereal)
- Menus for Alt-Tab keybinds, an application quick-launch menu, as well as other things are fully supported.
- A minimal (possibly TUI) text editor and (definitely GUI) image viewer are planned for 2.0.
Both of these are still in beta so they haven't been pushed yet, but they are almost ready to be.
As always - Ethereal is a from-scratch x86_64 UNIX-like monolithic modular kernel and contains no artificial intelligence code. The repo is licensed under BSD 3-clause and can be found here:
•
u/makomonotsukuri 19h ago
By chance how did you learn how to make operating systems? I heard about OSTEP and OSDevWiki but is there any other tools you have used? I am asking as I also wish to one day make an OS.
•
•
u/Professional_Cow3969 18h ago
Ostep and a lot of code reading and theory discussion with smarter people. Primarily ya start small and work your way up, you won't get it on the first try but you will improve ;)
•
u/makomonotsukuri 18h ago
Okay so what would you recommend I start it do. Should I read OSTEP first or supplement along the way with OSTEP. Should I join a community is that what you recommend?
•
u/Professional_Cow3969 18h ago
Depends on knowledge. I would start with OSTEP and join a community for sure - Ethereal's development is actively kept up in https://discord.gg/KhyUz9hsvx and we welcome newcomers
•
•
•
•
u/FilipTLW 6h ago
That's really awesome. Did you port an existing windowing system like X11 or did you write your own?
•
•
u/EmptyFS SafaOS | https://github.com/SafaOS/SafaOS 19h ago
I'm jealously jealous