Wydanie ravynOS 0.6, edycji FreeBSD, ukierunkowanej na zgodność z macOS

Opublikowano wydanie projektu ravynOS 0.6, rozwijającego system operacyjny oparty na FreeBSD, mającego na celu osiągnięcie zgodności z aplikacjami dla macOS oraz dostarczenie interfejsu użytkownika w stylu macOS. Osiągnięcia projektu są udostępniane na zasadach licencji BSD. Rozmiar obrazu ISO do pobrania wynosi 760 MB (x86_64).

Cele projektu obejmują osiągnięcie zgodności z aplikacjami macOS na poziomie kodu źródłowego i plików wykonywalnych. W pierwszym przypadku oznacza to możliwość rekonstrukcji kodu aplikacji macOS do działania w ravynOS, w drugim - integrację w jądrze i narzędziach zmian do uruchamiania plików wykonywalnych Mach-O skompilowanych dla architektur x86-64 i arm64.

Wspierane są systemy plików ZFS oraz używane w macOS systemy plików HFS+ i APFS. Oprócz hierarchii /usr i /usr/local, charakterystycznych dla FreeBSD, tworzone są specyficzne dla macOS katalogi /Library, /System i /Volumes. Katalogi domowe użytkowników znajdują się w hierarchii /Users. W każdym katalogu domowym znajduje się podkatalog ~/Library dla aplikacji korzystających z interfejsu programowania Apple Cocoa.

Dla zgodności z macOS udostępniana jest częściowa implementacja interfejsu Cocoa oraz środowiska wykonawczego Objective-C (znajdują się w katalogu /System/Library/Frameworks), a także dodatkowo zmodyfikowane kompilatory i linker do ich wsparcia. Oprócz warstwy zgodności z macOS w ravynOS dostępna jest również możliwość uruchamiania aplikacji dla Linuxa, oparta na oferowanej w FreeBSD infrastrukturze emulacji środowiska Linux (Linuxulator).

Aplikacje mogą być tworzone w postaci samodzielnych pakietów app (App Bundle) w formacie AppImage, umieszczanych w katalogach /Applications lub ~/Applications. Programy nie wymagają instalacji ani użycia menedżera pakietów — wystarczy przeciągnąć i uruchomić plik AppImage. Przy tym zachowano wsparcie dla tradycyjnych pakietów FreeBSD.

Środowisko graficzne zbudowane jest na bazie własnego systemu zarządzania oknami serwera, wykorzystującego uproszczony kompozytowy serwer labwc (usunięto wsparcie dla dekoracji okien po stronie serwera i tematów), wlroots oraz protokół Wayland. W aplikacjach graficznych mogą być stosowane frameworki Qt i Cocoa. W interfejsie stosowane są typowe dla macOS koncepcje, takie jak górny pasek z globalnym menu, identyczna struktura menu, skróty klawiaturowe, menedżer plików Filer podobny w stylu oraz wsparcie dla takich poleceń, jak launchctl i open.

Wśród zmian w porównaniu z wydaniem 0.5:

  • Podstawowy system zaktualizowano do gałęzi FreeBSD 15-STABLE.
  • Wprowadzono minimalistyczny interfejs graficzny z nowym górnym paskiem SystemUIServer i dolnym paskiem Dock.
    Wydanie ravynOS 0.6, edycji FreeBSD, ukierunkowanej na zgodność z macOS
  • Do zestawu dołączono prototyp emulatora terminala Terminal.app.
    Wydanie ravynOS 0.6, edycji FreeBSD, ukierunkowanej na zgodność z macOS
  • Zapewniono uruchomienie menedżera logowania LoginWindow zaraz po starcie. Podczas ładowania w trybie live można zalogować się bez hasła, używając loginu liveuser.
    Wydanie ravynOS 0.6, edycji FreeBSD, ukierunkowanej na zgodność z macOS
  • Dodano możliwość wylogowania się z sesji graficznej za pomocą skrótu klawiaturowego Win-Shift-Q.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster