Technical Details
Technical information about the current version of ravynOS.
ravynOS™ is an open-source desktop operating system that aims to provide a similar experience and compatibiilty with macOS® on x86-64 systems, and eventually ARM system. It builds on the solid foundations of FreeBSD, existing open source packages in the same space, and new code to fill the gaps. ravynOS aims to feel sleek, stable, familiar and intuitive, handle your daily tasks, and provide as much compatibility as possible with the commercial OS that inspired it.
ravynOS puts system things mainly into /System
, /Library
, and /usr
. The /usr/local
tree is reserved for user additions (like FreeBSD packages). User home directories are appropriately under /Users
, and each has a ~/Library
folder for Cocoa apps to use. Zsh
is the default system shell.
Properly packaged applications will typically live under /Applications
or ~/Applications
and are built as a .app
Bundle or as an AppImage. These types of applications are self-contained, do not usually need installers or de-installers, and can be moved around the filesystem without breaking. Traditional Unix-like applications are installed into fixed directories as usual.
ravynOS provides an implementation of Cocoa (still incomplete) and modern Objective-C runtime installed into /System/Library/Frameworks
. It also provides a growing list of Mac-compatible APIs such as LaunchServices, Grand Central Dispatch, XPC, and compatibility with Mach 3.0 system calls (0.4pre1+) and C functions. There is a growing list of compatible commands as well, such as open
and launchctl
. From 0.4pre1 onwards, launchd
is the system init (PID 1) and some services now run as LaunchDaemons and LaunchAgents.
The system compilers and linkers have been patched to support Frameworks, and the standard -F
and -framework
arguments work as expected. Support for XCode project files is planned, but BSD-style Makefiles are available today to easily build .app
and .framework
Bundles. Java 17 is available in /Library/Java
. Swift is also on the roadmap.
The desktop environment and system applications (Filer, Dock, global menu system, default app bundles, etc) are being carefully designed from the ground up to fit well together and provide consistency and a familiar look & feel.
ravynOS is still very early in development. If this sounds like your dream system, please join us to help make it a reality!