SteamOS běží na Apple Silicon. Komunitní projekt spouští hry přes Proton a Metal
Projekt steamac rozjíždí oficiální ARM64 verzi SteamOS od Valve v lehkém virtuálním stroji přímo na Macích s čipy Apple Silicon. Windowsové hry běží přes Proton a grafika se překládá do Metalu. Potřebujete macOS 15 nebo novější a asi 150 GB volného místa na disku.
Hraní na Macu je téma, které se v komentářích pod našimi články objevuje s železnou pravidelností a pokaždé s podobným závěrem: hardware by na to byl, jenže hry nejsou. Komunitní projekt, na který upozornil server AppleInsider, k tomu přistupuje z opačné strany než dosavadní pokusy. Místo portování jednotlivých her bere rovnou celý systém SteamOS a spouští ho na Macu.
Projekt se jmenuje steamac, najdete ho na GitHubu pod účtem fxgl a v popisu stojí, že jde o „oficiální ARM64 SteamOS od Valve v lehkém virtuálním stroji na Apple Silicon“. Zdůrazněme hned na začátku, že s Valve ani s Applem nemá nic společného — je to práce komunity, šířená pod licencí Apache 2.0. V době psaní článku měl repozitář přes tisíc hvězdiček, necelých šedesát forků a desítku přispěvatelů.
Základem je obraz SteamOS určený pro Steam Frame, tedy ARM64 variantu, kterou Valve vydává oficiálně. Steamac ji stahuje přímo ze serverů Valve a ověřuje přitom podpis i kontrolní součet, což je detail, který u projektů tohoto typu rozhodně stojí za zmínku. Systém pak běží ve virtuálním stroji postaveném na knihovně libkrun nad rozhraním Hypervisor.framework, které je v macOS standardní součástí.
Nejzajímavější je cesta, kterou urazí grafika. Windowsové hry používají DirectX, to se v Protonu překládá přes DXVK do Vulkanu, Vulkan pak uvnitř virtuálního stroje obslouží ovladač Mesa Venus přes virtio-gpu. Na straně hostitele to převezme virglrenderer a předá dál buď knihovně MoltenVK, nebo novějšímu ovladači KosmicKrisp, které příkazy přeloží do Metalu. Je to řetězec, u kterého se člověk neubrání otázce, kolik výkonu po cestě zůstane.
Projekt se přitom nezastavuje u obrazu. Autoři vyřešili i ovladače včetně průchodu DualSense, zvuk přes CoreAudio, sdílení schránky mezi systémem a virtuálním strojem, uspávání a probouzení i přístup přes SSH. Jinými slovy, nejde o surový emulátor, ale o hotové uživatelské prostředí, které se snaží chovat jako běžná aplikace pro macOS.
Nároky jsou ale citelné. Potřebujete Mac s čipem Apple Silicon a macOS 15 nebo novější a zhruba 150 GB volného místa na disku. Pokud si chcete projekt sestavit ze zdrojových kódů, budete navíc potřebovat Xcode 26 a novější, Homebrew, rustup a kontejnerové prostředí OrbStack nebo Docker v ARM64 variantě s právy na privilegovaný běh. Alternativní ovladač KosmicKrisp pak vyžaduje macOS 26 a vyšší.
Komu se do překladu nechce, pro toho existuje i hotový notarizovaný balíček ve formátu DMG, který podle poznámek k vydání obsahuje od verze 1.7 i KosmicKrisp. Samotné spuštění je pak podle dokumentace otázkou dvou skriptů: build.sh všechno sestaví a run.sh otevře okno se SteamOS. To zní na projekt této složitosti překvapivě civilně.
Dokonalé to pochopitelně není. Autoři sami v dokumentaci přiznávají mezery, například chybějící transform feedback u geometry shaderů se strip primitivy nebo absenci řídkých trojrozměrných textur v ovladači KosmicKrisp. To jsou věci, které u konkrétních her znamenají buď artefakty, nebo rovnou pád. Repozitář eviduje kolem sedmnácti otevřených chyb, takže vývoj očividně běží.
Za zmínku stojí i drobnost, kterou by někteří uživatelé mohli přehlédnout: hlášení pádů přes službu Sentry je ve výchozím stavu zapnuté, byť ho lze v nastavení vypnout. Vzdálené hraní po místní síti je naopak ve výchozím stavu vypnuté. U projektu, který komunikuje s vlastním serverem autorů, je dobré o tom vědět dřív, než ho spustíte.
Jaký to má praktický dopad pro českého majitele Macu? Žádný oficiální, protože jde o komunitní software mimo App Store, který si musíte stáhnout a spustit sami, a žádnou podporu k němu nikdo neposkytuje. Zároveň je to ale zdaleka nejpřístupnější způsob, jak se na Macu dostat k velké části knihovny Steamu, aniž byste instalovali Windows nebo kupovali konzoli. Za vyzkoušení to stojí už jen kvůli té technické kuriozitě.
Apple mezitím o hraní na Macu mluví na každé prezentaci, představil Game Porting Toolkit i herní aplikaci v macOS a chlubí se každým portem, který se objeví. Fakt, že nejzajímavější krok k hraní na Macu za poslední měsíce udělala parta nadšenců s open source knihovnami, je docela výmluvný. Kdyby se Apple chtěl inspirovat, repozitář je veřejný.
Zdroje: AppleInsider, GitHub, TechRadar