Proiectul ravynOS dezvoltă o ediție de FreeBSD care vizează compatibilitatea cu macOS

După doi ani de dezvoltare, a fost lansat proiectul ravynOS 0.5, care dezvoltă un sistem de operare bazat pe FreeBSD, având ca scop obținerea compatibilității cu aplicații pentru... macOS și oferind o cochilie personalizată în stilul macOSLucrările proiectului sunt distribuite sub licența BSD. Dimensiunea imaginii ISO bootabile este de 869 MB (x86_64).

Obiectivele declarate ale proiectului sunt de a realiza compatibilitatea cu aplicațiile. macOS la nivel de cod sursă și fișier executabil. Primul implică posibilitatea de a recompila codul. macOS-aplicații pentru execuție în ravynOS, în al doilea - integrarea kernelului și instrumentarea modificărilor pentru rularea executabilelor Mach-O compilate pentru arhitecturile x86-64 și arm64. Dintre sistemele de fișiere, ZFS și cele utilizate în macOS Sisteme de fișiere HFS+ și APFS. Pe lângă ierarhiile /usr și /usr/local tipice pentru FreeBSD, sunt create unele specifice. macOS Directoarele /Library, /System și /Volumes. Directoarele principale ale utilizatorilor se află în ierarhia /Users. Fiecare director principal conține un subdirector ~/Library pentru aplicațiile care utilizează API-ul Apple Cocoa.

Pentru compatibilitate cu macOS Este furnizată o implementare parțială a API-ului Cocoa și a runtime-ului Objective-C (situat în directorul /System/Library/Frameworks), precum și compilatoare și linkere modificate suplimentar pentru a le suporta. Pe lângă stratul de compatibilitate cu macOS ravynOS are și capacitatea de a rula aplicații pentru Linux, bazat pe infrastructura de emulare a mediului oferită în FreeBSD Linux (Linuxulator).

Aplicațiile pot fi proiectate ca pachete de aplicații autonome (App Bundle) în format AppImage, plasate în directoarele /Applications sau ~/Applications. Programele nu necesită instalarea sau utilizarea unui manager de pachete - doar trageți și plasați și lansați fișierul AppImage. În același timp, suportul pentru pachetele tradiționale FreeBSD este păstrat.

Mediul grafic este construit pe baza propriei ferestre Server, care folosește un server compozit labwc simplificat (suportul pentru decorarea ferestrelor și temele pe server a fost eliminat), wlroots și protocolul Wayland. Aplicațiile pot utiliza framework-urile Qt și Cocoa pentru grafică. Interfața folosește framework-uri standard macOS concepte precum un panou superior cu un meniu global, o structură de meniu identică, comenzi rapide de la tastatură, un manager de fișiere Filer cu un stil similar și suport pentru comenzi precum launchctl și open.

 Proiectul ravynOS dezvoltă o ediție de FreeBSD care vizează compatibilitatea cu macOS

În noua versiune:

  • Sistemul de bază a fost actualizat la filiala FreeBSD 15-CURRENT. Utilizarea porturilor FreeBSD a fost întreruptă - toate componentele necesare au fost mutate în depozitul de sistem.
  • Structura principală include editorul de text turbo. De asemenea, s-au adăugat cmake, gmake, nasm și GNU binutils.
  • Fișierele de asamblare ale cadrelor pentru Cocoa și Objective-C oferă posibilitatea de a lega obiecte din subdirectoare pentru a simplifica transferul de cod din diferite subdirectoare într-o singură bibliotecă.
  • Utilizarea depozitului de pachete a fost întreruptă, dar este încă posibil să instalați pachete din depozitele FreeBSD în directorul /usr/local folosind comanda pkg.
  • A fost adăugat un nou utilitar de construcție, build.sh, care simplifică întregul proces de construire a sistemului și de creare a unei imagini ISO personalizate care poate fi încărcată în modul Live.
  • A fost adăugată o implementare de bază a unui panou grafic Dock cu un set mic de pictograme de bază. Aceasta include posibilitatea de a afișa lansări de programe, de a plasa comenzi rapide pentru aplicații și de a personaliza imaginea de fundal a desktopului în stilul... macOSConținutul panoului poate fi personalizat în prezent doar prin editarea fișierului plist din ~/Library/Preferences.
  • S-a adăugat suport pentru clasa NSStatusItem, permițând aplicațiilor Cocoa să mute meniurile în panoul global.

Sursa: opennet.ru

Cumpărați găzduire de încredere pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără găzduire web fiabilă cu protecție DDoS, servere VPS VDS | ProHoster