git404hub

what is darling fr?

darlinghq/darling — explained in plain English

Analysis updated 2026-06-24

12,768Objective-CAudience · developerComplexity · 4/5LicenseSetup · hard

tl;dr

Compatibility layer that lets Linux users run macOS command-line programs without a Mac, by reimplementing the system libraries those programs depend on.

vibe map

mindmap
  root((repo))
    What it does
      Run macOS apps
      On Linux only
    Key concepts
      Compatibility layer
      macOS prefix
      System libraries
    Supported formats
      pkg installer
      dmg disk image
    Limitations
      CLI apps only
      No GUI yet

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Run macOS shell tools and developer utilities on a Linux machine without owning a Mac

VIBE 2

Install and test macOS .pkg packages in a sandboxed folder on Linux

VIBE 3

Compile Apple platform code using the Xcode toolchain on a Linux server

VIBE 4

Experiment with macOS command-line scripts in an isolated prefix environment

what's the stack?

Objective-CCCMake

how it stacks up fr

darlinghq/darlingobjective-see/luluinstagram/iglistkit
Stars12,76812,56813,062
LanguageObjective-CObjective-CObjective-C
Setup difficultyhardeasyeasy
Complexity4/52/53/5
Audiencedeveloperops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · hard time til it works · 1day+

Must build from source on Linux, encrypted home directories are not supported for the prefix location.

GPL, free to use and modify, but any version you distribute must also be released as open source.

in plain english

Darling is a compatibility layer that lets Linux users run macOS command-line applications without owning a Mac. It works by reimplementing the low-level system calls and runtime libraries that macOS programs expect, so those programs behave as if they are running on a real Mac while the underlying operating system remains Linux. The project is written primarily in Objective-C and C, which are the same languages used by Apple's own system frameworks. The project is in active development, and most GUI applications do not run yet. The current focus is command-line tools and developer utilities. You can run macOS shell commands through Darling, install macOS package files (.pkg), mount disk image files (.dmg), and even compile code with Apple's Xcode toolchain if you supply a copy of the Xcode installer. Darling uses a concept called a prefix (borrowed from the WINE project, which does something similar for Windows software on Linux). A prefix is a sandboxed folder that mimics the macOS filesystem structure. Software you install inside Darling goes into this prefix, keeping it separate from your main Linux system. The default prefix lives at ~/.darling in your home folder and is created automatically on first use. Note that prefixes cannot be stored on certain encrypted or network filesystems, including encrypted home directories on some Linux setups. Pre-built packages are available for several Linux distributions under the Releases tab. Full build instructions are in the project's online documentation.

prompts (copy fr)

prompt 1
I just installed Darling on Ubuntu. Walk me through creating a new prefix at ~/.darling and running a basic macOS command like sw_vers to verify it works.
prompt 2
Using Darling, show me how to mount a .dmg disk image file and install the .pkg inside it into my Darling prefix.
prompt 3
I want to run the macOS xcrun command inside Darling to compile a simple C program with Apple's toolchain. What steps do I need to follow after setting up the prefix?
prompt 4
What macOS command-line tools are most likely to work in Darling today, and which categories should I avoid because GUI or kernel dependencies are not yet implemented?
prompt 5
How do I update my Darling prefix after upgrading Darling itself without losing the macOS packages I already installed?

Frequently asked questions

what is darling fr?

Compatibility layer that lets Linux users run macOS command-line programs without a Mac, by reimplementing the system libraries those programs depend on.

What language is darling written in?

Mainly Objective-C. The stack also includes Objective-C, C, CMake.

What license does darling use?

GPL, free to use and modify, but any version you distribute must also be released as open source.

How hard is darling to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is darling for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.