• Stars
    star
    11,307
  • Rank 2,942 (Top 0.06 %)
  • Language
    Objective-C
  • License
    GNU General Publi...
  • Created almost 12 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Darwin/macOS emulation layer for Linux

Darling

Darling logo

Darling is a runtime environment for macOS applications.

Please note that most GUI applications will not run at the moment.

Download

Packages for some distributions are available for download under releases.

Build Instructions

For build instructions, visit Darling Docs.

Prefixes

Darling has support for DPREFIXes, which are very similar to WINEPREFIXes. They are virtual “chroot” environments with an macOS-like filesystem structure, where you can install software safely. The default DPREFIX location is ~/.darling, but this can be changed by exporting an identically named environment variable. A prefix is automatically created and initialized on first use.

Please note that we use overlayfs for creating prefixes, and so we cannot support putting prefix on a filesystem like NFS or eCryptfs. In particular, the default prefix location won't work if you have an encrypted home directory.

Hello world

Let's start with a Hello world:

$ darling shell echo Hello world
Hello world

Congratulations, you have printed Hello world through Darling's OS X system call emulation and runtime libraries.

Installing software

You can install .pkg packages with the installer tool available inside shell. It is a somewhat limited cousin of OS X's installer:

$ darling shell
Darling [~]$ installer -pkg mc-4.8.7-0.pkg -target /

The Midnight Commander package from the above example is available for download.

You can uninstall and list packages with the uninstaller command.

Working with DMG images

DMG images can be attached and deattached from inside darling shell with hdiutil. This is how you can install Xcode along with its toolchain and SDKs (note that Xcode itself doesn't run yet):

Darling [~]$ hdiutil attach Xcode_7.2.dmg
/Volumes/Xcode_7.2
Darling [~]$ cp -r /Volumes/Xcode_7.2/Xcode.app /Applications
Darling [~]$ export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk
Darling [~]$ echo 'void main() { puts("Hello world"); }' > helloworld.c
Darling [~]$ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang helloworld.c -o helloworld
Darling [~]$ ./helloworld
Hello world

Congratulations, you have just compiled and run your own Hello world application with Apple's toolchain.

Working with XIP archives

Xcode is now distributed in .xip files. These can be installed using unxip:

cd /Applications
unxip Xcode_11.3.xip

More Repositories

1

darling-dmg

FUSE module for .dmg files (containing an HFS+ filesystem)
C++
272
star
2

darling-docs

Darling Docs
41
star
3

darling-installer

OS X Installer counterpart (installs .pkg files)
C++
38
star
4

darling-newlkm

Darling's new kernel module
C
29
star
5

darling-docker

Dockerfile for Darling
Python
27
star
6

darling-corecrypto

CoreCrypto reimplementation under GPL-3
C
23
star
7

darling-foundation

The Darling Foundation framework, derived from Apportable Foundation
Objective-C
16
star
8

darling-security

Apple's Security framework
C
16
star
9

LibrarySymbols

A Repo For Storing Information On MacOS' Library Symbols
Rust
15
star
10

darlingserver

Darling's userspace kernel server (much like Wine's wineserver)
C
14
star
11

darling-gdb

GDB that can debug Mach-Os on Linux
C
13
star
12

darling-metal

An ABI-compatible implementation of Metal and related frameworks (e.g. MetalKit, MetalPerformanceShaders)
Objective-C
9
star
13

darling-appkit

Darling's implementation of AppKit
Objective-C
8
star
14

darling-xnu

C
8
star
15

darling-libnetwork

Open-source reimplementation of Apple's libnetwork
Objective-C
6
star
16

darling-TextEdit

Objective-C
6
star
17

darling-adv_cmds

Apple's adv_cmds package
C
6
star
18

darling-iokituser

Apple's IOKitUser
C
6
star
19

blog

The source code for the Darling development blog
JavaScript
6
star
20

darling-commoncrypto

Apple CommonCrypto
C
6
star
21

darling-objc4

Apple's Objective-C runtime
Objective-C++
6
star
22

darling-dyld

C
5
star
23

darling-network_cmds

C
5
star
24

darling-cfnetwork

Darling implementation of CFNetwork
C
5
star
25

darling-IOHIDFamily

Apple's IOHIDFamily
C++
5
star
26

www.darlinghq.org

Repository containing the project's main website
HTML
5
star
27

darling-zip

Apple's version of zip/unzip
C
5
star
28

darling-syslog

Apple's syslog project
C
4
star
29

darling-dtrace

C
4
star
30

darling-SmartCardServices

SmartCardServices-55111
C
4
star
31

darling-swift

Bundled swift libraries
Shell
4
star
32

darling-openssh

C
4
star
33

darling-configd

Apple's configd
C
4
star
34

darling-pam_modules

pam_modules-159.50.4
C
4
star
35

darling-libauto

Apple's libauto library
Objective-C
4
star
36

darling-libdispatch

Apple's GCD
C
4
star
37

darling-WTF

C++
4
star
38

darling-cctools

Apple's cctools
C
4
star
39

darling-openpam

C
4
star
40

darling-system_cmds

system_cmds-735.30.2
C
4
star
41

darling-BerkeleyDB

Apple's version of BerkeleyDB
HTML
4
star
42

darling-apr

Apple's version of apr
C
4
star
43

darling-libpthread

Apple's libpthread library
C
4
star
44

darling-coretls

Apple's CoreTLS framework
C
3
star
45

darling-libplatform

C
3
star
46

darling-icu

Apple's version of ICU
C++
3
star
47

darling-bc

Apple's bc package
C
3
star
48

darling-bmalloc

C++
3
star
49

darling-libclosure

Apple's libclosure library (Blocks)
Objective-C
3
star
50

darling-openssl

Darling build of Apple's version of OpenSSL 0.9.8
C
3
star
51

darling-shell_cmds

Apple's shell_cmds package
C
3
star
52

darling-IONetworkingFamily

Apple's IONetworkingFamily
C++
3
star
53

darling-JavaScriptCore

C
3
star
54

darling-WebCore

C++
3
star
55

darling-file

Apple's file package
C
3
star
56

darling-IOGraphics

Apple's IOGraphics
C++
3
star
57

darling-applegdb

Apple's modified version of GDB
C
3
star
58

darling-tcsh

tcsh-67
C
3
star
59

darling-DSTools

DSTools-162
Objective-C
3
star
60

darling-screen

GNU screen packaged by Apple
C
3
star
61

darling-Heimdal

Heimdal-498.50.8
C
3
star
62

darling-bash

Apple's version of Bash
C
3
star
63

darling-text_cmds

Apple's text_cmds package
C
3
star
64

darling-awk

Apple's awk package
C
3
star
65

darling-vim

Apple's release of VIM
Vim Script
2
star
66

darling-OpenLDAP

Apple's OpenLDAP-528.60.1
C
2
star
67

darling-SecurityTokend

SecurityTokend-55111
C++
2
star
68

darling-bsm

C
2
star
69

darling-xar

C
2
star
70

darling-basic_cmds

basic_cmds-55
C
2
star
71

darling-opendirectory

C
2
star
72

darling-top

C
2
star
73

darling-llvmCore

Apple's llvmCore package
C++
2
star
74

darling-perl

Perl
2
star
75

darling-removefile

C
2
star
76

darling-Libsystem

C
2
star
77

darling-quartzcore

Darling's implementation of QuartzCore
2
star
78

darling-netcat

Apple's netcat package
C
2
star
79

darling-iostoragefamily

Apple's IOStorageFamily
C++
2
star
80

darling-openssl_certificates

OpenSSL Certificates for Darling
Python
2
star
81

darling-security_dotmac_tp

Apple's security_dotmac_tp framework
C++
2
star
82

darling-files

Apple's files package
Roff
2
star
83

darling-remote_cmds

Apple's remote_cmds
C
2
star
84

darling-swift-corelibs-foundation

Swift
2
star
85

darling-MITKerberosShim

Apple's MITKerberosShim-77
C
2
star
86

darling-libutil

C
2
star
87

darling-bzip2

Fork of bzip2 for Darling build
C
2
star
88

darling-file_cmds

Apple's file_cmds package
C
2
star
89

darling-man

Makefile
2
star
90

darling-python

Python 2.6/2.7 sources from Apple
Python
2
star
91

darling-libunwind

C++
2
star
92

darling-developer_cmds

Apple's developer_cmds package
C
2
star
93

darling-mDNSResponder

Apple's mDNSResponder-1096.60.2
C
2
star
94

darling-appdb-database

2
star
95

darling-libarchive

Apple's libarchive package
C
2
star
96

darling-DirectoryService

C++
2
star
97

darling-keymgr

C
2
star
98

darling-ncurses

HTML
2
star
99

darling-gnudiff

Apple's (gnu)diff package
C
2
star
100

darling-misc_cmds

misc_cmds-33
C
2
star