Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

A lot of these questions are answered here: https://ravynos.com/faq

To summarize...

There is a WINE-analogous project, called Darling: https://www.darlinghq.org/

The goal for ravynOS is to be analogous to ReactOS. Much like ReactOS and WINE, ravynOS and Darling share a lot of Cocoa code.

For the problem of OpenStep implementations specifically, a bespoke software stack has the benefit of being able to put Mach messaging into the kernel, where it is much more performant.

They chose the FreeBSD kernel over Darwin for the sake of hardware compatibility (though of course NeXT Mach is one of the most widely-ported kernels of all time...)

There is also overlap with GNUstep, helloSystem, and other projects in the broader "open-source Mac/NeXT" space, though ravynOS (obviously) prefers BSD/MIT/Apache-style licensing over GNU-style licensing. Nevertheless, ravynOS currently uses the GNUstep libobjc2 runtime, a bit like how most of the Unix world used to depend on gcc.



> There is a WINE-analogous project, called Darling: https://www.darlinghq.org/

Missed opportunity to call it Cider.


There's already been a Cider; it used some Wine code to ease porting games to MacOS.


For reasons that I do not understand, the company behind Cider pivoted to real estate investing, and got out of the tech field entirely


Hard Cider


They had chosen a FreeBSD base. The most recent forum posts suggest throwing away most of the FreeBSD base and going with Mach-o. That actually makes their goals of getting to macOS compatibility a bit simpler but it’s less interesting to me.


> of course NeXT Mach is one of the most widely-ported kernels of all time...

actually the broader Mach kernel, not specifically the NeXT variant, is the one with a documented history of extensive portability


The NeXT variant did run on the following architectures:

1. Motorola 68k (the original NeXT hardware had 68030 and 68040 chips)

2. Intel x86 (NeXTSTEP 3.1 for Intel was released in 1993)

3. HP PA-RISC (I have an OPENSTEP 4.2 CD that can run on Motorola 68k, x86, PA-RISC, and SPARC hardware)

4. Sun SPARC

5. 32-bit PowerPC (Rhapsody, the original Mac OS X 1.0 that was essentially still Rhapsody, and of course Mac OS X from Cheetah through Leopard)

6. 64-bit PowerPC (Power Mac G5 and iMac G5)

7. Intel x86-64 (starting from Mac OS X Tiger all the way to macOS Tahoe)

8. 32-bit ARM (iOS on early iPhones with 32-bit ARM chips)

9. 64-bit ARM

I could be forgetting other platforms, but these are the ones I know from the top of my head.


Indeed—I meant specifically the NeXT branch of the family tree because of this exhaustingly long list.

I would very much like to see that quad-fat OS4.2 CD; most NeXT releases around that era drop PA-RISC and are only tri-fat. I only have a 3.3 RISC (HPPA+SPARC) ISO for HPPA coverage.

The big ones you're missing are the Intel i860 (used as a graphics accelerator on NeXTdimension video processing boards—also the original target platform for the Win NT kernel) and the Motorola 88k family, which was briefly explored for the "NeXT RISC machine" in the mid-90s; only one prototype is known to exist. There were non-NeXT ports of Mach to m88k, which may have influenced the decision.

Of course, if we add in the other branches of the Mach family the number of ports gets absurd! It originated on the VAX; OSF/1 adds MIPS and AXP to the list... ultimately RISC-V and Itanium are the only significant ≥32-bit CPUs of the last forty years to not see some kind of Mach port.

But—the ultimate point is that the lion's share of actual work porting the kernel to new hardware is thanks to NeXT and/or NeXT cosplaying as Apple.




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

Search: