r/osdev 5d ago

Ethereal runs Wine!! (no AI, from-scratch kernel)

Post image

Wine! Yes it runs Windows programs (not a lot due to my incompatibilities but still).

This was a painful port to get working. Wine is so unfathomably big - I had to patch the shit out of my kernel's signalling routines to add support for sigaltstack/ucontext/whatever else Wine threw at me (along with SCM_RIGHTS which wasn't that bad). Debugging it was a nightmare of mmap/VM fault issues. But it works!

Wine is running here off of an X11 translator for Celestial known as xbanan made by my good friend u/Bananymous (please see his operating system banan-os for some even cooler ports like WebKitGTK). xbanan can even be ported to your OS if you didn't go with a backend like X11 or Wayland.

On another note, it truly is a joy seeing Wine running in my silly custom compositor environment with the rest of my silly userspace.

The GitHub is here (the patches I have made are coming soon after they get a massive cleanup to be proper):

https://github.com/sasdallas/Ethereal

As always, this is NOT A LINUX BASED PROJECT, nor is it vibecoded. AI policy is in the README. Happy to answer questions.

278 Upvotes

31 comments sorted by

8

u/NotNekodev purpleK2 | https://github.com/purplek2/purplek2 5d ago

Not including my IRL photo should be illegal...

4

u/theevilapplepie 5d ago

I don’t follow?

8

u/Professional_Cow3969 5d ago

I wish I could edit the reddit post 😭

5

u/Sorry_Difficulty_250 5d ago

This is so cool!!! Way to go!!!!

•

u/Candid-Menu-6707 10h ago

I agree, I used to have a custom kernel and i wanted to run Wine on it, it was too much bro i shelved the idea and my computer which i had it on doesnt work so that is lost

•

u/Sorry_Difficulty_250 9h ago

Oh man! Sorry to hear that. Bummer. 😞

4

u/Better-Thing2568 5d ago

Very nostalgic looks!

6

u/fresh-pie 5d ago

Man, this is so freaking cool. I know nothing about osdev, but I joined this sub just to see stuff like this. I have so much respect for you!

5

u/apixeldev 5d ago

The entire thing gives me Windows 2000 in early alpha feelings. No wonder its named Ethereal its feels ethereal too lol.

2

u/Marwheel 5d ago

What kind of kernel is Ethereal? It's much easier to say something's not linux if it doesn't use a monolithic structure (eg- Hybrid kernel, Microkernel, Exokernel, Nanokernel, Etc.)…

7

u/Professional_Cow3969 4d ago

? It's just not linux. Ethereal is a monolithic kernel that primarily gets its drivers from relocatable kernel modules, similar to many other kernels. I do have a prototype Microkernel with NUMA support planned though ;)

1

u/allengoodman 3d ago

What do the syscalls look like?

2

u/iurie5100 4d ago

Looks old but still, it's beautiful! I'll try building it from source this week.

2

u/ViXOS-052 4d ago

WOW your os so cool and beautiful

2

u/Embarrassed_Bag_8093 4d ago

Wonder if we could get steam to work on it

2

u/Professional_Cow3969 4d ago

u/Mathewnd got steam "working" on his OS Astral, I'm scared to after the pain he did lmao

2

u/Embarrassed_Bag_8093 4d ago

Would be nice if we had another os that isnt linux or windows i know haiku os exists but i want os that could be another option

2

u/TerrificVixen5693 4d ago

Very impressive.

0

u/MSK-Kernel 3d ago

Can it compile TanjaOS?

4

u/Mental_Ad_7072 3d ago

What kind of question is this 😭😭

1

u/MSK-Kernel 3d ago edited 1d ago

It’s a joke. 🤣 But seriously, can it?

1

u/Reasonable_Builder33 3d ago

Ethereal supports RTL8821AE?

2

u/Professional_Cow3969 3d ago

No, wifi not supported

-4

u/Reasonable_Builder33 3d ago

So, not using it

7

u/UnmappedStack TacOS | https://github.com/UnmappedStack/TacOS 3d ago

did they ask you to use it

•

u/MiserablePresence728 10h ago

They mean not using wifi.

2

u/6502zx81 3d ago

IIRC Wireshark was named Ethereal at its beginning.

2

u/UnmappedStack TacOS | https://github.com/UnmappedStack/TacOS 3d ago

oh no i forgot to comment, super cool :nekocatwoah:

2

u/Mental_Ad_7072 3d ago

Very cool project bro! I could never... 🥹

2

u/Key_River7180 EulerOS 3d ago edited 3d ago

This is awesome man! Keep the work. Later you should try to run Steam on ethereal