NextBSD Revives: Integrating Apple’s Source Code into FreeBSD
NextBSD has been resurrected under a new team to create an open‑source UNIX system by transplanting Apple’s Darwin components—such as Mach, launchd, and libxpc—into the FreeBSD kernel, leveraging AI tools, historic BSD efforts, and a modular GitHub‑based development process.
Project overview
NextBSD‑redux is a revived effort to build an open‑source Unix system that combines Apple’s Darwin components with the FreeBSD kernel. The public code is hosted at https://github.com/nextbsd-redux/nextbsd and is separate from the original NextBSD codebase.
Original NextBSD (2015)
Initiated by FreeBSD co‑founder Jordan Hubbard in 2015, the original plan was to port key Darwin pieces—Mach IPC, the XNU kernel, launchd, IOKit, and the syslogd daemon—from Apple’s open‑source releases to FreeBSD. Source code was provided directly on GitHub.
Historical attempts
Similar Darwin‑to‑BSD migrations have been attempted with OpenDarwin (2002‑2006), PureDarwin (releases 2015, 2019, maintained until 2024), GNU‑Darwin, DarwinBSD, GhostBSD’s Gershwin desktop, helloSystem, and ravynOS (which used the Darling compatibility layer and libxpc). All of these projects eventually ceased development, illustrating the difficulty of integrating Apple’s components into a BSD kernel.
Current revival
Joe Maloney (GitHub user pkgdemon)—previously the author of the Gershwin desktop for GhostBSD and a contributor to PureDarwin—announced the reboot on Reddit under the title “NextBSD—21st‑century BSD”. He emphasizes heavy use of artificial‑intelligence tools (Claude Code) for code review and test generation.
“AI acts as a multiplier here… I enjoy the development process and hope AI can serve me.”
Development workflow
First iteration (vibe coding) : Tested launchd and devmatch/devd using only socket‑based launchd, without Mach.
Second iteration : Retained only Mach kernel modules, moved launchd to a separate repository, and incorporated libxpc from ravynOS (originally created for the first NextBSD).
Third iteration : Split the system into distinct repositories for the kernel, kext modules, and an expanded Darwin toolset; added extensive automated testing; continued AI‑assisted code review and test generation.
Implemented components (as of the latest commit history, ~2 months)
Mach IPC kernel modules integrated with the FreeBSD kernel.
Ported launchd, IOKit, and syslogd.
libxpc library from ravynOS.
Gershwin desktop environment (GNUstep + Xfce window manager) under active development in the gershwin-on-nextbsd repository.
Technical context
NextBSD‑redux does not reuse the ten‑year‑old code branches; it builds on recent FreeBSD and Darwin releases. The project adopts the same overall goal as the original: replace the traditional, server‑oriented FreeBSD user space with Apple‑style user‑space components while keeping the robust FreeBSD kernel.
Community feedback
Some developers express skepticism about AI‑generated code and the feasibility of completing the roadmap quickly. One contributor referred to “秃鹫” voiced strong doubts about using large language models for code.
Future direction
The aim is to produce a macOS‑like experience that runs on laptop hardware, leveraging the stable FreeBSD kernel and Apple‑derived user‑space components. Development is ongoing, with no graphical desktop released yet but with active work on the Gershwin environment.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
21CTO
21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
