Darling: Run macOS Software on Linux

Darling is an open-source compatibility layer aiming to run macOS software on Linux, currently focused on x86-64 command-line tools such as Xcode’s build utilities rather than full GUI apps. Commenters see value for cross-compiling macOS/iOS software, testing, and niche use cases like proprietary drivers, but note major technical hurdles in reimplementing Apple’s Cocoa frameworks, supporting ARM binaries, and achieving practical parity with tools like Wine. Broader themes include the imbalance of software portability between Linux and commercial platforms, and speculation about how projects like this interact with Apple’s business and legal constraints.

Architecture & Platform Support

  • Darling currently runs only on x86‑64 Linux and does not emulate CPUs.
  • It can only execute macOS binaries built for Intel; Apple Silicon (arm64) binaries are not supported.
  • A developer reports ongoing work to get Darling running on ARM64, but there are problems with dyld.
  • Several commenters note that as Apple and third‑party software drop x86‑64 support, Darling risks becoming a “retro computing” platform if it doesn’t gain arm64 support.
  • One suggestion is dynamic binary translation for arm64 macOS binaries, with the tradeoff of substantial performance loss.

Current Capabilities & Use Cases (Mostly CLI)

  • GUI support is described as very limited; the project is currently most useful for command‑line tools.
  • Xcode command‑line tools and asset bundlers are a key use case, especially for compiling macOS/iOS apps or assets on Linux and in CI.
  • Some existing cross‑compile workflows (e.g., osxcross) are mentioned, but Darling could simplify them.
  • Other niche CLI use cases: proprietary macOS CUPS printer drivers, Bonjour conformance tests, and possibly macOS indexing tools (mdutil) – though actual support is unclear.
  • Some users report missing core libraries (e.g., pkgbuild) and non‑working Cocoa apps, limiting real‑world use; Go compiler support is also reported as broken.

GUI Framework Porting Challenges

  • Porting Cocoa/AppKit and the growing macOS framework stack is seen as an effort comparable to or larger than Wine’s Win32 work.
  • Darling reuses components like Cocotron, Apportable Foundation, and bits of GNUstep, but coverage remains incomplete.
  • There is debate around using AI tools to accelerate implementation; some argue this cannot be considered clean‑room.

Desire for macOS/iOS Apps on Linux/Other Platforms

  • Wish list includes Final Cut Pro, Logic Pro, Xcode IDE, Safari for web testing, iMessage, Notes, and macOS utilities (Maccy, Rectangle, Warp, iTerm2).
  • For iMessage, commenters note likely blocking via hardware‑tied authentication, making native use on Linux “very unlikely.”
  • Separate threads discuss iOS apps on Android and historic efforts like Windows bridges and emulators, but modern iOS support is considered out of scope for current projects.

Ecosystem, Fairness & Legal/Future Considerations

  • Some Linux users feel it’s asymmetric that Linux software is widely ported outward while proprietary macOS/Windows tools rarely come to Linux.
  • Others respond that companies follow user numbers and porting cost; Linux desktop remains a small target.
  • Apple’s funding of LLVM/Clang is cited as a significant, though debated, contribution back to the broader ecosystem.
  • Concerns that Apple might legally oppose running flagship apps like Final Cut on non‑Apple hardware are raised, but others point out Apple has tolerated hackintoshes and mainly cares about license revenue.