Projekt Darling, koji razvija sloj sličan Wine za pokretanje macOS aplikacija na Linuxu, odobrio je mogućnost korištenja AI alata u razvoju. U sastav Darling sada je službeno dopušteno prihvaćanje koda koji je stvoren putem AI-a, ali uz ispunjavanje određenih zahtjeva. Odluka je donesena usred nedostatka programera i resursa u projektu, kao i u kontekstu stalnog porasta broja proprietarnih Appleovih okvira (ako je u macOS 10.14 bilo 273 javnih i 878 privatnih okvira, u macOS 27 ih je postalo 464 i 2754, redom).
Pretpostavlja se da će nova pravila spriječiti stagnaciju razvoja i fragmentaciju zajednice, a također će omogućiti okupljanje snaga s programerima forkova koji aktivno koriste AI. Takvi forkovi napredovali su i pokazuju visoku brzinu razvoja, na primjer, fork darling-lol postigao je pokretanje macOS verzije igre League of Legends, dok je VibeDarling uspio podržati ARM64 arhitekturu i raditi mnoge originalne macOS aplikacije.
U sljedeća dva mjeseca, osnovni tim Darling planira integrirati radove iz vanjskih forkova, koristeći AI alate za spajanje promjena. Također je planirano implementirati službenu podršku za arhitekture i386, x86-64 i ARM64 (aarch64) te raditi na omogućavanju pokretanja ARM64 verzija aplikacija na x86-64 sustavima, koristeći rekompajler Dynarmic. Dugoročni planovi uključuju stabilizaciju sloja kompatibilnosti s AppKit i izradu vlastitih grafičkih alata za upravljanje Darling okruženjem (poput preglednika logova u stilu Console.app), koji će također služiti kao referentne testne aplikacije.
Što se tiče prihvaćanja pull zahtjeva s kodom pripremljenim uz pomoć AI, oni će se prihvaćati samo ako developer koji je dostavio promjenu preuzme odgovornost za svaki redak koda, može objasniti promjene svojim riječima i ne koristi AI u komunikaciji s održavateljima. Također, uvode se stroga pravila "čiste sobe", koja dopuštaju ponovnu implementaciju funkcionalnosti samo na temelju dokumentacije API-a, zaglavlja, standarda, RFC-a, javnih izvora i analize ponašanja, bez korištenja proprietarnog Appleovog koda, curenja informacija i disasembleriranja za izravno ponovno stvaranje koda.
Projekt Darling razvija se od 2012. godine i ima za cilj omogućiti pokretanje Linux aplikacija koje su napravljene za macOS, bez korištenja virtualizacije. Uključuje učitavač izvršnih datoteka u Mach-O formatu i kernel darlingserver koji radi u korisničkom prostoru i implementira Mach IPC, POSIX sučelja i sistemske pozive Darwin iznad Linuxa. Odvojeno se razvijaju alternativne implementacije raznih Appleovih frameworka, kao što su Foundation, AppKit, CoreAudio i CoreFoundation. Nisko nivo komponente, poput XNU i libSystem, temelje se na odgovarajućim otvorenim komponentama objavljenim od strane Applea. Visok nivo komponente se implementiraju pomoću postojećih analoga i dostupnih biblioteka. Podrška za grafički API Metal osigurana je putem prevođenja u API Vulkan.
Izvor: opennet.ru
