github ravynsoft/ravynos v0.5.1
ravynOS 0.5.1 "Sneaky Snek"

one month ago

ravynOS "Sneaky Snek" Developer Preview Release v0.5.1

Welcome to the 0.5.1 Developer Preview of ravynOS! As usual, this is an unstable pre-release of upcoming stuff intended for people helping build the system. It is not complete. It contains bugs - sometimes serious ones - including application and desktop crashes and even kernel panics. You have been warned.

This release runs (as usual) on amd64 - aka x86_64. Much progress has been made on the ARM64 port and we hope to have an ISO available soon for that platform as well.

When the Live CD has booted, you should see a black screen with arrow cursor that moves with your mouse/trackpad. Please report your hardware or VM info if you do not! To get out of this new WindowServer, press Shift-Q then Alt-F2 for a new console where you should be able to log in as liveuser.

The notes below are a summary of the changes from v0.5.0. Full Changelog.

Base system updates

This release updates the FreeBSD base to 15-CURRENT commit 41b746e (October 10, 2024). Interposing was removed from libepoll-shim. A kernel panic in the rtw89 driver was fixed. The vmstat command now shows information about SysV shm segments. Improvements were made to virtual memory management and shared memory permissions. Many enhancements were made to pf. ARM64 builds now use ACPI instead of FDT by default. The errno symbol is now no longer exported from libc or libsys. OpenSSL was updated to 3.0.15. The utouch module was removed. Many more changes - please see the commit logs for details.

CoreGraphics

A partial implementation of Quartz Display Services has been added, with more to come. APIs added in 0.5.1 include:

  • CGMainDisplayID
  • CGGetDisplayList, CGGetOnlineDisplayList, CGGetActiveDisplayList, CGGetDisplaysWithOpenGLDisplayMask, CGGetDisplaysWIthPoint, CGGetDisplaysWithRect
  • CGOpenGLDisplayMaskToDisplayID, CGDisplayIDToOpenGLDisplayMask
  • CGDisplayCapture, CGDisplayCaptureWithOptions, CGDisplayRelease, CGCaptureAllDisplays, CGCaptureAllDisplaysWithOptions, CGReleaseAllDisplays
  • CGShieldingWindowID, CGShieldingWindowLevel (both stubs - we do not use shielding windows)
  • CGDisplayCreateImage, CGDisplayCreateImageForRect
  • CGDisplayBounds, CGDisplayPixelsHigh, CGDisplayPixelsWide
  • CGWindowServerCFMachPort

The default font family is now Inter.

AppKit

The default font family is now Inter. Keyboard layout definitions were added.

CoreFoundation

Implementations of CFAllocator and CFMachPort were added.

Foundation

NSException now includes the error message and a backtrace to improve debugging. NSAllocateMemoryPages was fixed to allocate page-aligned chunks.

WindowServer and the Desktop UI

WindowServer is being completely rebuilt without Wayland and DRM. It renders directly to the BSD EFI framebuffer console, which allows us to have graphics on any hardware (including VMs). The new WindowServer is entirely based on Cocoa and provides the backend for Quartz Display Services and Quartz Window Services (WIP). While drawing is currently not accelerated, it is very portable; accelerated drawing via DRM/KMS will be added back in later, with fallback to the unaccelerated framebuffer when not found.

Seatd was also removed as WindowServer directly takes the console and uses libinput, libevdev, and others for input. It sends events to apps using the Quartz APIs.

OpenGL has been removed for now. The still-supported bits will be added back once WindowServer is more mature. The long term plan is to implement Metal.

SystemUIServer and Dock have been temporarily disabled until WindowServer is ready.

Bug fixes, Limitations and Known issues

See open issues for the full list.

Please see the wiki for system requirements, install instructions and where to find things.

Ask questions or give feedback in the Discussions area. Please report any bugs to the Issues tracker. Your help in fixing said bugs would be appreciated too! Thanks!

Get It!

Download from GitHub or your closest mirror:
NomadLogic - US West | Clarkson - US East | HS Fulda - Germany | NTNU - Norway | dotSrc - Denmark

Torrents are also available courtesy of FOSSTorrents

Unstable "nightly" builds are also available for developer testing:
Download from NomadLogic - US West | Clarkson - US East | HS Fulda - Germany | NTNU - Norway | dotSrc - Denmark

Torrents of the snapshot builds are available too! Thanks to @RangerRick for setting these up.

Acknowledgements

As usual, thank you to our community of sponsors, designers, developers, testers, and users, and mirror hosts for supporting the project. Special thanks to everyone who didn't give up on the project while my life was crazy.

Don't miss a new ravynos release

NewReleases is sending notifications on new releases.