1.
Introduction
2.
Using Darling
2.1.
Build instructions
2.2.
Building for the WSL
2.3.
Uninstall
2.4.
Darling shell
2.5.
Darling prefix
2.6.
Installing software
2.7.
What to try
2.8.
Known working software
2.9.
Known partially working software
2.10.
Known non-functional software
3.
Darling internals
3.1.
Basics
3.1.1.
Loader
3.1.2.
System call emulation
3.1.3.
Containerization
3.2.
Calling host system APIs
3.3.
Threading
3.3.1.
Thread implementation
3.3.2.
Thread local storage
3.4.
macOS specifics
3.4.1.
Mach ports
3.4.2.
Mach exceptions
3.4.3.
Commpage
3.4.4.
Distributed Objects
3.5.
darlingserver
3.5.1.
RPC
3.5.2.
Threads, Processes, and Microthreads
3.5.3.
Duct-taped Code
3.5.4.
kqueue Channels
3.5.5.
Interrupt/Signal Handling
3.5.6.
Event Loop
3.6.
Additional Resources
4.
Contributing
4.1.
Debugging
4.2.
Generating stubs
4.3.
Generating syscalls
4.4.
High priority stuff
4.5.
Google Summer of Code
4.6.
Packaging
4.7.
Updating sources
Light (default)
Rust
Coal
Navy
Ayu
Darling Docs
Darling internals
Documentation of Darling to help new developers understand how Darling (and macOS) work.