Проект NextBSD, который многие уже успели забыть, неожиданно получил вторую жизнь. Его идея — объединить ядро FreeBSD с открытыми системными компонентами Darwin, такими как launchd, Mach IPC, Grand Central Dispatch и другими технологиями, которые сегодня лежат в основе macOS. Первая попытка была предпринята почти десять лет назад, но безуспешно. Сейчас разработку начали заново, используя современную кодовую базу FreeBSD и накопленный за это время опыт.

На первый взгляд, идея выглядит странно: зачем переносить системный слой одной операционной системы поверх ядра другой, если обе давно развиваются своими путями? Однако у разработчиков есть вполне практичная цель. Они не пытаются создать «бесплатную macOS», а хотят сделать FreeBSD более современной платформой, сохранив ее совместимость и сильные стороны. Разберемся, что именно уже удалось реализовать, зачем это вообще нужно и насколько жизнеспособным может оказаться такой подход.

Почему спустя столько лет проект снова ожил

В 2015 году Джордан Хаббард, один из идеологов FreeBSD, вместе с небольшой командой представил NextBSD. Проект строился вокруг идеи дополнить ядро FreeBSD открытыми компонентами Darwin — операционной системы, лежащей в основе macOS. Разработчики планировали перенести launchd, Mach IPC, Grand Central Dispatch и CoreFoundation, отвечающие за запуск служб, межпроцессное взаимодействие, управление событиями и параллельное выполнение задач. Такой подход позволил бы и модернизировать системную инфраструктуру FreeBSD, и сохранить обратную совместимость с ее ядром и существующей экосистемой. При этом пришли бы многие возможности, характерные для программной платформы Apple.

Но как‑то не сложилось. Проекту не хватило финансирования, а его участники постепенно переключились на другие задачи. Разработка практически остановилась, к 2019 году репозиторий почти перестал обновляться, а официальный сайт исчез. За это время и FreeBSD, и Darwin успели заметно измениться, поэтому старая кодовая база уже не подходила для продолжения работы и фактически требовала начинать все заново.

В 2026 году проект решил возродить Джо Малони, известный в сообществе под ником pkgdemon. Ранее он участвовал в разработке нескольких BSD‑проектов, включая GhostBSD, а также создал рабочий стол Gershwin в стиле классического NeXT. Получив согласие прежних мейнтейнеров NextBSD, Малони не стал пытаться оживить старую кодовую базу и начал работу заново, взяв за основу современную версию FreeBSD. Он заявил, что активно использует Claude для написания и анализа кода, благодаря чему работа движется гораздо быстрее, чем это происходило несколько лет назад.

Задача нового NextBSD стала намного проще. Разработчики больше не пытаются собрать аналог macOS, а планируют взять из открытой части Darwin только то, что действительно пригодится FreeBSD. При этом система по‑прежнему использует старую связку init‑ и rc‑скриптов. В результате проект получает современную систему запуска служб, удобный механизм обмена данными между процессами и средства для параллельного выполнения задач. Все это строится на открытых технологиях Darwin без использования закрытого кода Apple.

Бесплатный курс «Системный администратор Linux с нуля»

Освойте администрирование Linux на SelectOS и станьте востребованным специалистом.

Зарегистрироваться →

Что именно пытаются перенести

Пока речь не идет о графической оболочке или приложениях. NextBSD заимствует прежде всего системные компоненты, которые работают «под капотом» и отвечают за запуск служб, взаимодействие процессов и выполнение задач.

Центральный элемент — launchd. Последняя открытая версия 842.92.1 уже портирована и способна выступать в роли PID 1. Сервисы описываются привычными .plist‑файлами, а управляются через launchctl. Главный системный процесс работает с декларативным описанием служб, отслеживает зависимости, перезапускает упавшие процессы и взаимодействует с сокетами. Для тех, кто привык к macOS, переход оказывается почти незаметным.

Следом идет Mach IPC — не полноценный микроядерный Mach, а набор механизмов, встроенных прямо в ядро FreeBSD: порты, контроль прав доступа и система обмена сообщениями. Через них взаимодействуют launchdconfigdipconfigd и другие системные службы. Без Mach IPC все это пришлось бы писать с нуля. Поверх него уже работает библиотека libxpc, выросшая из наработок проекта ravynOS.

Библиотека libdispatch, больше известная как Grand Central Dispatch, добавляет асинхронные очереди и источники событий. Нативная поддержка Mach‑сообщений через kqueue позволяет писать код, который выглядит почти так же, как на macOS. Базовый программный интерфейс CoreFoundation в гибридном варианте (частично из GNUstep, частично из swift-corelibs) закрывает потребность в property-listrun-loop и базовых коллекциях.

Все эти компоненты выполняют разные задачи, но работают на одну цель — заменить разрозненные механизмы FreeBSD более цельной системной инфраструктурой. Именно это и пытаются получить разработчики NextBSD.

Зачем все это

Для разработчиков главный плюс в том, что вместе с NextBSD появляется знакомая программная среда. Многие библиотеки и фреймворки, изначально созданные для Darwin, можно собрать с минимальными изменениями. XPC, Grand Central Dispatch, CoreFoundation — все это уже переносится в проект. Благодаря этому часть программ для macOS можно адаптировать под FreeBSD значительно проще, чем раньше. Особенно это касается сетевых служб, демонов и фоновых процессов.

Для обычного пользователя все эти изменения почти незаметны, но именно они делают систему более предсказуемой. Запуск служб, работа сети, обнаружение устройств и фоновые процессы начинают использовать общую инфраструктуру, вместо набора независимых механизмов. Если какая‑то служба аварийно завершится, launchd сам обнаружит проблему и при необходимости осуществит перезапуск. Пока все это находится на ранней стадии разработки, но базовые компоненты уже работают.

Есть один интересный момент. Пока что у NextBSD нет собственной графической оболочки, и это может показаться странным. Но разработчики сознательно начали с фундамента. Сначала они хотят привести в порядок системную часть, а уже потом заниматься пользовательским окружением. Тем более, что у Джо Малони уже есть опыт создания рабочего стола Gershwin.

Когда базовые компоненты будут готовы, построить поверх них собственную графическую среду станет значительно проще. В этом и заключается главная идея NextBSD: не просто перенести отдельные технологии из Darwin, а создать новую BSD‑систему, в которой все компоненты изначально работают как единое целое.

Перспективы новой старой ОС

Самое важное отличие NextBSD‑redux от большинства подобных попыток — отказ от полного форка. Ядро остается ABI‑совместимым (на уровне двоичного интерфейса) с FreeBSD. Пользовательские утилиты подтягиваются из открытых источников Darwin и дорабатываются. Нет попытки переписать все «с чистого листа» и объявить новую операционную систему. Есть набор конкретных компонентов, которые постепенно занимают свое место.

Базовая часть уже работает: ядро поддерживает Mach‑примитивы, launchd запускается как PID 1, а основные библиотеки и системные демоны собраны и взаимодействуют друг с другом. В процессе — набор пользовательских утилит, DiskArbitration, управление питанием. Установщик и механизм обновлений пока только в планах. Continuous‑релизы выходят регулярно, так что любой желающий может проверить, насколько все стабильно.

Конечно, рисков хватает. Даже с помощью новейших ИИ‑инструментов одному разработчику сложно заменить полноценную команду. Нужно поддерживать совместимость с пакетами FreeBSD, доводить до ума перенос компонентов Darwin, развивать драйверную инфраструктуру — поддержка kext пока остаётся экспериментальной. Однако сама идея выглядит вполне здравой. Вместо того, чтобы создавать еще одну операционную систему с нуля, автор проекта берет уже существующие открытые технологии и пытается собрать из них единую BSD‑платформу, соответствующую духу времени.

Пока говорить о финале проекта рано. Ему еще предстоит пройти долгий путь — от экспериментальной сборки до системы, которую можно будет установить и использовать каждый день. Если разработка не остановится, NextBSD вполне может занять собственную нишу — главным образом, как попытка объединить надежную BSD‑основу с современными системными технологиями, выросшими из той же ветки Darwin. Пожалуй, именно ради этого проект и решили возродить. Как считаете, нужен ли он? И если да, насколько реалистичен?

Комментарии (1)


  1. latynlana
    28.07.2026 12:08

    Мне кажется, идея интересная, если получится сделать FreeBSD удобнее и современнее, то почему бы и нет. Но пока рано что-то обещать, сначала пусть покажут результат.