Darling:Linux上でmacOSソフトウェアを実行する翻訳レイヤー
Run macOS Software on Linux
Darlingは、Linux上でmacOSソフトウェアを直接実行できるオープンソースの翻訳レイヤーです。ハードウェアエミュレーションを使わず、Darwin環境(Mach、dyld、launchdなど)を完全に実装し、Cocoa実装にはThe Cocotronを基盤としています。現在は基本的なGUIアプリの実験的サポートを提供し、WSL 2でも動作します。AppleのEULAには違反せず、iOSアプリのサポートも長期的な目標としています。
WineがWindowsソフトウェアをLinuxで動かすのと同じように、DarlingはmacOSソフトウェアをLinuxで動かします。
HNでの議論
83- ay
逆方向で深くて面白いウサギの穴に落ちたんだ:https://github.com/ayourtch-llm/fakelinux - 最初は「実行ファイルのシステムコールを何らかのトラップに置き換えて処理するだけ」というアイデアだった。
ほぼ動いたんだけど、残念ながらmacOSはx18レジスタをプラットフォーム用に予約していて、Linuxはそうじゃないんだ。
結果としてかなり狂った仕掛けができて、Mac上でLinuxのgccを使ってaarch64 LinuxのVPPとその依存関係をコンパイルできるくらいには動く。
磨けば何かに使えるかもしれないけどね。
- porphyra
理論上は、Apple SiliconアプリをARM64 Linuxマシンで動かせるのは本当に素晴らしいだろうね。でも、それを実現する高性能で機能完全な実装にはまだ遠い。
Darlingはx86_64しかターゲットにしていない。それでも、クールなプロジェクトだよ。
更新がほとんどないのがちょっと悲しいけどね [1]
- ncr100
> opensource.apple.com、GNUstep、The Cocotron、その他のプロジェクトについて知ってる?
> 知ってるよ。実際、DarlingはAppleが公開したオリジナルのDarwinソースコードに大きく基づいている。Cocoa実装の基盤としてThe Cocotronを使い、Apportable FoundationやGNUstepの様々な部分も使っている。
Apportable(<3)は2011年のY Combinatorスタートアップで https://www.ycombinator.com/companies/apportable - Foundationリポジトリの最終更新は2014年12月だね。
- nonestdeus
存在するのはクールだけど、正直、どのMac専用プログラムをインストールしたいか思い浮かばないな。
- jagged-chisel
細かい指摘:オープンソースのDarwinで動くものなら何でも動くよ。macOSのフレームワークを必要とするものは動かないけどね。