
طبقة محاكاة Darwin/macOS لنظام Linux

Darling هي بيئة تشغيل لتطبيقات macOS.
يُرجى ملاحظة أن معظم تطبيقات الواجهة الرسومية لن تعمل في الوقت الحالي.
حزم لبعض التوزيعات متاحة للتحميل تحت الإصدارات.
لتعليمات البناء، زر Darling Docs.
يدعم Darling البادئات (DPREFIXes)، وهي مشابهة جدًا لـ WINEPREFIXes. إنها بيئات "chroot" افتراضية بهيكل نظام ملفات شبيه بنظام macOS، حيث يمكنك تثبيت البرامج بأمان. الموقع الافتراضي لـ DPREFIX هو ~/.darling، ولكن يمكن تغيير ذلك عن طريق تصدير متغير بيئة بنفس الاسم. يتم إنشاء البادئة وتهيئتها تلقائيًا عند أول استخدام.
يُرجى ملاحظة أننا نستخدم overlayfs لإنشاء البادئات، وبالتالي لا يمكننا دعم وضع البادئة على نظام ملفات مثل NFS أو eCryptfs. على وجه الخصوص، لن يعمل موقع البادئة الافتراضي إذا كان لديك مجلد رئيسي مشفر.
لنبدأ بـ مرحبًا بالعالم:
$ darling shell echo Hello world
Hello world
تهانينا، لقد قمت بطباعة "مرحبًا بالعالم" من خلال محاكاة استدعاءات النظام ومكتبات التشغيل الخاصة بـ Darling لنظام OS X.
يمكنك تثبيت حزم .pkg باستخدام أداة المثبت المتاحة داخل الصدفة (shell). إنها نسخة محدودة نوعًا ما من مثبت OS X:
$ darling shell
Darling [~]$ installer -pkg mc-4.8.7-0.pkg -target /
حزمة Midnight Commander من المثال أعلاه متاحة للتحميل.
يمكنك إلغاء تثبيت وعرض الحزم باستخدام الأمر uninstaller.
يمكن إرفاق وفصل صور DMG من داخل darling shell باستخدام hdiutil. هذه هي الطريقة التي يمكنك بها تثبيت Xcode إلى جانب أدواته و SDKs (لاحظ أن Xcode نفسه لا يعمل بعد):
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
تهانينا، لقد قمت للتو بتجميع وتشغيل تطبيق "مرحبًا بالعالم" الخاص بك باستخدام مجموعة أدوات Apple.
يتم الآن توزيع Xcode في ملفات .xip. يمكن تثبيتها باستخدام unxip:
cd /Applications
unxip Xcode_11.3.xip