U nekim sam prilikama ovdje na blogu dijelio vijesti o drugim operativnim sustavima koji nisu Linux, budući da iako je tema bloga usmjerena na razgovor o Linuxu i svemu oko njega, uzeo sam si slobodu dijeliti vijesti izvan toga, ali pokušavajući ih zadržati u okviru "otvorenog koda" i vezano uz njega.
Što se tiče ove vrste vijesti, najbrojnije su one vezane uz FreeBSD , koji je, kao što možda znate, također OS otvorenog koda, a ovom prilikom ćemo govoriti o projektu ravynOS, operativnom sustavu temeljenom na FreeBSD-u dizajniranom za postizanje kompatibilnosti s macOS aplikacijama i ponudu korisničkog okruženja u macOS stilu.
O ravynOS
Glavni cilj projekta ravynOS je postići kompatibilnost s macOS aplikacijama i na razini izvornog koda i na razini izvršnih datoteka. U prvom slučaju, projekt ima za cilj omogućiti ponovnu kompilaciju koda macOS aplikacije za pokretanje na ravynOS-u. U drugom slučaju, vrše se modifikacije jezgre i uslužnih programa za pokretanje Mach-O izvršnih datoteka kompajliranih za x86-64 i arm64 arhitekture.
Kako bi se postigla kompatibilnost s macOS-om, ravynOS uključuje djelomičnu implementaciju programskih sučelja Cocoa i Objective-C , koja se nalaze u /System/Library/Frameworks, zajedno s modificiranim kompajlerima i linkerima koji ih podržavaju. Uz sloj kompatibilnosti s macOS-om, ravynOS nudi mogućnost pokretanja Linux aplikacija putem FreeBSD-ove infrastrukture za emulaciju Linuxa (Linuxulator).
Aplikacije u RavynOS-u mogu se dizajnirati kao samostalni paketi aplikacija u AppImage formatu , koji se mogu smjestiti u direktorije /Applications ili ~/Applications. Ovi programi ne zahtijevaju instalaciju ili korištenje upravitelja paketa; jednostavno povučete, ispustite i pokrenete AppImage datoteku. Istovremeno se održava kompatibilnost s tradicionalnim FreeBSD paketima.
U ravynO S, podržani datotečni sustavi uključuju ZFS te datotečne sustave HFS+ i APFS koji se koriste u macOS-u. Uz hijerarhije specifične za FreeBSD (/usr i /usr/local), stvoreni su i direktoriji specifični za macOS kao što su /Library, /System i /Volumes. Korisnički početni direktoriji nalaze se u /Users, a svaki početni direktorij sadrži poddirektorij ~/Library za aplikacije koje koriste Appleovo programsko sučelje Cocoa.
Grafičko okruženje RavynOS-a temelji se na vlastitom Windows poslužitelju , koji koristi pojednostavljeni kompozitni labwc poslužitelj, wlroots i Wayland protokol. Ovo okruženje je dizajnirano bez podrške za ukrašavanje i teme prozora na strani poslužitelja. Grafičke aplikacije mogu koristiti Qt i Cocoa okvire za pokretanje u ovom okruženju.
Grafičko sučelje ravynOS-a dizajnirano je s tipičnim macOS konceptima , kao što su gornja traka s globalnim izbornikom, identična struktura izbornika, slični prečaci na tipkovnici, slično stilizirani upravitelj datoteka Filer i podrška za naredbe poput launchctl i open. Ovi elementi namijenjeni su pružanju korisnicima poznato i ugodno iskustvo, slično korištenju macOS-a.
Vrijedi spomenuti da je ravynOS sada ažuriran na verziju 0.5, koja je izgrađena na grani FreeBSD 15-CURRENT, a korištenje FreeBSD portova je prekinuto, a sve potrebne komponente su premještene u sistemski repozitorij.
Osim toga, uvedena je početna implementacija grafičke Dock ploče, uključujući mali skup osnovnih ikona. Ova ploča omogućuje korisnicima pokretanje programa, postavljanje prečaca aplikacija i konfiguriranje pozadine radne površine u macOS stilu. Trenutna konfiguracija ploče vrši se uređivanjem plist datoteke koja se nalazi u ~/Library/Preferences.
Što se tiče ostalih promjena:
- Temeljni paket sada uključuje turbo uređivač teksta, zajedno s alatima kao što su cmake, gmake, nasm i GNU binutils.
- Datoteke sklopa u okvirima za Cocoa i Objective-C omogućuju vam povezivanje objekata u poddirektorijima, pojednostavljujući prijenos koda između različitih poddirektorija u biblioteku.
- Korištenje repozitorija paketa je prekinuto, ali još uvijek je moguće instalirati pakete iz FreeBSD repozitorija u direktorij /usr/local pomoću naredbe pkg.
- Dodan je novi uslužni program za izgradnju pod nazivom build.sh, koji pojednostavljuje proces izgradnje sustava i kreiranja prilagođene ISO slike koja se pokreće u Live modu.
- Dodana podrška za klasu NSStatusItem, koja omogućuje Cocoa aplikacijama premještanje izbornika na globalnu ploču.
Konačno, ako ste zainteresirani saznati više , trebali biste znati da se razvoj projekta distribuira pod BSD licencom, a bootable ISO slika je 869 MB (x86_64). Više informacija o projektu možete pronaći na sljedećoj poveznici.