Fundamentals 9 min read

How Darling Is Bringing macOS Apps to Linux: Progress, Challenges, and Future Plans

Darling, an open‑source macOS‑to‑Linux translation layer, has seen a surge in community activity with new framework stubs, licensing debates, and early support for command‑line tools, while still facing major hurdles before full GUI applications can run on Linux.

ITPUB
ITPUB
ITPUB
How Darling Is Bringing macOS Apps to Linux: Progress, Challenges, and Future Plans

Project Overview

Darling is an open‑source translation layer that enables macOS binaries to run on Linux, analogous to Wine for Windows but less mature.

Quarterly Progress (Q2 2019)

In the July 23 2019 report the community reported a surge of activity, with many pull requests ranging from low‑level assembly fixes to high‑level AppKit support. New framework stubs were added and existing ones improved.

Licensing

Darling is released under GPLv3. It incorporates code from Apple’s open‑source Darwin, which is licensed under the Apple Public Source License (APSL). Because APSL is not compatible with GPL, contributors have discussed re‑licensing parts (e.g., to LGPL 2.1) or distributing mixed‑license binaries, a practice already common in many Linux distributions.

Additional Components

The project reuses other Apple open‑source projects such as Cocotron (an open‑source implementation of Cocoa) and various command‑line tools and libraries from https://opensource.apple.com. Framework stubs for AppKit, AGL, Carbon, Core Service, and ApplicationService have been added; most provide placeholder implementations that allow applications to load.

Framework Nesting and Build System

macOS frameworks can contain nested sub‑frameworks, a structure the original Darling build system could not handle. In June 2019 contributor Andrew Hyatt added CMake tricks to preserve the original hierarchy, enabling system frameworks such as Accelerate to be built with the correct file layout.

Current Capabilities

Command‑line tools and non‑GUI macOS applications can be executed.

The Sketch command‑line tool ( sketchtool) runs and prints its usage string.

Darling aims to provide a compatibility layer for 32‑bit macOS apps, which are no longer supported by recent macOS releases.

Full GUI applications (e.g., Xcode) are not yet runnable.

Future Outlook

Developers hope to attract more contributors to close the gap toward full GUI support. Estimates for achieving complete GUI compatibility range from a few years to an indefinite timeline. The long‑term goal mirrors Wine: to enable a broad range of macOS applications to run reliably on Linux.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Linuxopen sourceDarlingframework stubsmacOS compatibilitytranslation layer
ITPUB
Written by

ITPUB

Official ITPUB account sharing technical insights, community news, and exciting events.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.