~ $ uname Linux ~ $ darling shell Darling [~]$ uname Darwin
Darling is a translation layer that lets you run macOS software on Linux
Darling runs macOS software directly without using a hardware emulator.
Like Linux, Darling is free and open-source software.
It is developed openly on GitHub and distributed under the GNU GPL license version 3.
Darling implements a complete Darwin environment. Mach, dyld, launchd — everything you'd expect.
Easy to use
Darling does most of the setup for you. Sit back and enjoy using your favorite software.
We aim to fully integrate apps running under Darling into the Linux desktop experience by making them look, feel and behave just like native Linux apps.
That sounds a lot like Wine
And it is! Wine lets you run Windows software on Linux, and Darling does the same for macOS software. Another similar project is Anbox, for Android apps.
Does it support GUI apps?
Almost! This took us a lot of time and effort, but we finally have basic experimental support for running simple graphical applications. It requires some special setup for now though, so do not expect it to work out of the box just yet. We're working on this; stay tuned!
Does it violate Apple's EULA?
No! We only directly use those parts of Darwin that are released as fully free software.
Does the name Darling mean anything?
The name Darling is a combination of “Darwin” and “Linux”. Darwin is the core operating system macOS and iOS are based on.
Can I run Darling on Windows using WSL?
Unfortunately, no. Darling requires a real Linux kernel to run. See this issue for more details.
Do you know about opensource.apple.com, GNUstep, The Cocotron and other projects?
We do, and in fact, Darling is largely based on the original Darwin source code published by Apple. We use The Cocotron as a basis for our Cocoa implementation, along with the Apportable Foundation and various bits of GNUstep.
Do you have plans for supporting iOS apps?
Yes, in the long run, we'd like to be able to run iOS apps on ARM devices (like most Android phones). A significant challenge here would be to write our own implementation of UIKit. Come talk to us if you're interested in working on this!
How do I contribute?
Start by reading the documentation and our blog to get familiar with Darling internals. Then, come and join us on GitHub. It's great if you have experience in developing for macOS or iOS, but it's absolutely not required to start contributing.