Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Essence – An Operating System (gitlab.com/nakst)
133 points by nonbirithm on Aug 10, 2021 | hide | past | favorite | 42 comments


Looks nice.

My question about totally new operating systems is: does any "end-user" software work on it? Can I run Python? A Bash-like shell and some approximation to GNU coreutils? Will audio output actually work? Will my monitor work at a sensible resolution?

It seems like such a tremendous effort just to get to the point where anyone other than a serious OS developer can use it. I wonder if there's any way to reduce the effort required, or if that's just how things have to be.


What's the point at all if you're just trying to get another linux?


To run useful software.


I think the question is "how is this better or different than Linux or Windows", which it aims to replace? What are its design choices? Does it introduce any new concepts? For an example, see https://fuchsia.dev/fuchsia-src/concepts


I'm not asking for another Linux, just basic hardware support and a set of programs that I don't have to learn entirely from scratch.


What's the point of rewriting the whole stack?


There's a difference between making a Unix-compatible/Unix-like (a la Redox, Minix, Linux, the BSDs, macOS, etc) and having POSIX-compatibility + interfaces (a la Haiku, Serenity, Windows + Cygwin or WSL, etc).

One is just reinventing the wheel, even if it means "having useful software"; the other is attempting something new while offering tools to make porting useful OSS simpler.


As far as I see, Windows has always been different for the sake of it; it is a prime example of reinventing the wheel. What makes it good is its market share means things are almost always guaranteed to run on it, otherwise it is terrible and always has been since MS-DOS. If it didn't have "useful software", what else would it have going for it?


I think "POSIX subsystem" plus GCC and Binutils covers most of what you ask about?


Interestingly the commit history goes back 2 years and the first commit looks like it's already a somewhat working OS. All commits by one person.


Impressive, this looks more feature complete than a mere toy while the source code is succinct enough to be understood.


You could sum up most hobby OSes in this manner. My main metric for when it's moved from simply hobby to a potential functional OS is a) are there additional contributors and b) does it have a USB stack.

Quite a few alternative OSes check A, very-VERY few also check B. And only one, that I know of, checks B but not A.


Seems "essence" checks at least B, from the README of what's working:

> USB: XHCI, bulk storage devices, human interface devices.


> And only one, that I know of, checks B but not A.

;)


Looks nice.

The trapezium shaped tabs are ineffecient in terms of space management, Chrome had them at beginning but eventually got rid of them.


How does this aim to be different from other OSes? What are the motivations of its creator(s) & intended users?


From the link someone else posted: Although it's a long shot (and very optimistic), I ultimately intend it to replace Linux and Windows as a desktop operating system.


Why mention Linux and Windows but not macOS, out of curiosity?


Probably because macOS don’t need replacing :^)

No, my real guess is that the author is using Windows and Linux and not macOS in the first place.


Funny i have the same feeling when using macOS, i just want to replace it.


Apple operating systems are not intended to be replaced, and design choices make it more difficult to do so than Windows or Linux.


Unless you also have the means to manufacture your own end-user devices that have feature parity with Apple devices, there is no practical way to replace MacOS. Getting non-Apple OEMs to ship your OS with their PCs is probably not happening but at least in the realm of being conceivable.


I still don't get it. How does it intend to do it?


I do not see any impressive innovation in its design and the OS doesn't introduce any new concepts or paradigms, which makes it, in essence, no different from regular monolithic operating systems, implementing POSIX API with regular system calls. Just a monolithic kernel crudely implementing some well known device drivers as well as already existing filesystems with a block cache, and a POSIX-based userspace with GCC and binutils.

That is said, it doesn't mean this isn't an incredible piece of work, especially if written by a single author!! That is definitely a huge amount of engineering that needs some good skills and persistence. I believe it is a very rewarding experience. The product also seems to be really working fine with very impressive stuff.


Always interesting to see a non-linx os around, I guess next goals could be getting it self-hosted. Also the source code of a modest enough size that it's not impossible to actually get your head around it.


No docs? Don't see any, other than the readme.


I may be missing something, but it seems they are distributing a ported/patched GCC, which is GPL-licensed, under the MIT license?


When you run the .start.sh file, You're greeted with this message:

    This project also include the work of other projects.
    All trademarks are registered trademarks of their respective owners.

    They licenses may be found in the following files:
            - util/nanosvg.h
            - shared/stb_image.h, shared/stb_sprintf.h, shared/stb_ds.h and util/stb_truetype.h
            - res/Fonts/Hack License.txt, res/Fonts/Inter License.txt
            - res/Icons/elementary Icons License.txt
            - res/Media/Licenses.txt
            - Ported applications have their licenses in their respective folders.


It's not clear where the allegation "distributing a ported/patched GCC[...] under the MIT license" even comes from. That same notice appears in the file LICENSE.md (not that it would matter much even if it didn't).


I like it. Reminds me of Windows 7 mixed with old google chrome because of the tabs. I'm interested to hear more about this!


> Reminds me of Windows 7

and Vista


Seems like a great hobby! I like it.


No technical details of the kernel or userland, ie. monolithic kernel, microkernel?


The URL should probably be changed to https://essence.handmade.network/


Why? The current GitLab link has tons of information and multiple screenshots. The link you're suggesting has one tiny paragraph + one screenshot.


Friends don't let friends write new operating systems in unsafe programming languages.


Show us the functionally equivalent OS that you and/or your friends have written in a safe programming please?


This advice is meaningless coming from people who lack friends. And it is clear why you do not.


So a toy OS like Android. You need linux to compile it. An it says nothing about the goals, what is different compared to other OSs, why would i want to use it.


Nobody asked you to use it. It’s just someone sharing something cool they did. Lighten up a little.


> So a toy OS like Android.

Riiiight, a toy. Forget how it's probably the most run OS in the world from the abundance of cell phones right now.


[flagged]


someone call the firefighters.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: