Іноді Я поділився новинами про інші системи тут, у блозіопераційних систем, які не є Linux, оскільки, незважаючи на те, що тема блогу зосереджена на розмові про Linux і все, що навколо нього, я наважився поділитися новинами за межами, але намагаючись зберегти їх у руслі «відкритого коду» і пов'язані з ним.
Про такі новини, Найбільше можна назвати тих, що стосуються FreeBSD, яка, як ви знаєте, також є ОС з відкритим кодом і яка Цього разу мова піде про проект ravynOS, це операційна система на основі FreeBSD, розроблена для досягнення сумісності з програмами macOS і пропонує середовище користувача в стилі macOS.
Про ravynOS
Проект ravynOS Його головна мета — досягти сумісності з програмами macOS як на рівні вихідного коду як виконувані файли, і в першому випадку мета полягає в тому, щоб дозволити перекомпіляцію коду програм macOS, щоб вони запускалися на ravynOS. У другому випадку в ядро та утиліти вносяться зміни для запуску виконуваних файлів Mach-O, скомпільованих для архітектур x86-64 і arm64.
Для досягнення сумісності з macOS, ravynOS містить часткову реалізацію програмного інтерфейсу виконання Cocoa та Objective-C, розташованих у /System/Library/Frameworks, а також компілятори та компонувальники, модифіковані для їх підтримки. На додаток до рівня сумісності з macOS, ravynOS пропонує можливість запуску програм Linux через інфраструктуру емуляції Linux FreeBSD (Linuxulator).
Програми в ravynOS можна створювати як пакети незалежних додатків у форматі AppImage, який можна розмістити в каталогах /Applications або ~/Applications. Ці програми не потребують інсталяції або використання менеджера пакетів; Їх просто перетягують, опускають і запускають у файл AppImage. При цьому зберігається сумісність із традиційними пакетами FreeBSD.
в равинОS Підтримувані файлові системи включають файлові системи ZFS і HFS+ і APFS використовується в macOS, окрім специфічних для FreeBSD ієрархій (/usr і /usr/local), було створено спеціальні каталоги macOS, такі як /Library, /System і /Volumes. Домашні каталоги користувачів розташовані в /Users, і кожен домашній каталог містить підкаталог ~/Library для програм, які використовують інтерфейс програмування Apple Cocoa.
Графічне середовище ravynOS базується на власному Windows-сервері, який використовує спрощений композитний сервер labwc, wlroots і протокол Wayland. Це середовище створено шляхом видалення підтримки оформлення вікон і тем на стороні сервера. Графічні програми можуть використовувати фреймворки Qt і Cocoa для роботи в цьому середовищі.
Графічний інтерфейс ravynOS розроблено відповідно до типових концепцій macOS, як-от верхня панель із глобальним меню, ідентична структура меню, схожі комбінації клавіш, файловий менеджер Filer у подібному стилі та підтримка таких команд, як launchctl і open. Ці елементи призначені для того, щоб надати користувачам знайомий і зручний досвід, подібний до використання macOS.
Варто згадати, щоі наразі ravynOS оновлено до версії 0.5 яка побудована на базі гілки FreeBSD 15-CURRENT і використання портів FreeBSD було призупинено, перемістивши всі необхідні компоненти в системний репозиторій.
Крім цього, зазначається, що Представлено початкову реалізацію графічної панелі Dock який містить невеликий набір основних значків. Ця панель дозволяє запускати програми, розміщувати ярлики програм і встановлювати шпалери робочого столу в стилі macOS. Фактичне налаштування панелі виконується шляхом редагування файлу plist у ~/Library/Preferences.
З інші зміни:
- Основний пакет тепер включає турбо-текстовий редактор разом із такими інструментами, як cmake, gmake, nasm і GNU binutils.
- Файли складання у рамках для Cocoa та Objective-C дозволяють зв’язувати об’єкти в підкаталогах, спрощуючи передачу коду між різними підкаталогами до бібліотеки.
- Використання репозиторію пакунків припинено, але все ще можна інсталювати пакунки зі сховищ FreeBSD у каталог /usr/local за допомогою команди pkg.
- Додано нову утиліту збірки під назвою build.sh, яка спрощує процес збирання системи та створення власного образу ISO, який завантажується в режимі Live.
- Додано підтримку класу NSStatusItem, який дозволяє програмам Cocoa переміщувати меню на глобальну панель.
нарешті, якщо ти є цікаво дізнатися про це більше, слід знати, що розробки проекту поширюються за ліцензією BSD, а завантажувальний ISO-образ має 869 Мб (x86_64). Ви можете отримати додаткові відомості про проект У наступному посиланні.