Darling: Linux에서 macOS 소프트웨어 실행하기
1 hour ago
1
- Darling은 하드웨어 에뮬레이션 없이 macOS 소프트웨어를 Linux에서 직접 실행하는 변환 계층임
- Mach, dyld, launchd 등을 갖춘 Darwin 환경을 구현하고, macOS 앱을 Linux 데스크톱에 네이티브 앱처럼 통합하는 것이 목표임
- Windows 앱을 Linux에서 실행하는 Wine과 유사하게 작동하며, GNU GPL v3 기반 무료 오픈소스로 개발됨
- GUI 지원은 단순한 그래픽 앱을 실행하는 초기 실험 단계지만, WSL 2에서도 이용할 수 있음
- 장기적으로 ARM 기기에서 iOS 앱 실행을 지원하려면 자체 UIKit 구현이라는 과제를 해결해야 함
macOS 호환 환경의 구현 방식
- Darling 셸에 진입하면 Linux 호스트에서도 uname 결과가 Darwin으로 표시되는 Darwin 환경을 제공함
- 하드웨어를 에뮬레이션하지 않고 macOS 소프트웨어를 직접 실행한다는 점에서 Wine과 유사한 역할을 함
- macOS 소프트웨어가 기대하는 Mach, dyld, launchd 등의 구성 요소를 구현함
- 앱의 외형과 동작을 Linux 네이티브 앱처럼 구성해 데스크톱 환경에 통합하는 것을 목표로 함
- GUI 지원은 아직 단순한 그래픽 애플리케이션을 위한 기초적인 실험 단계임
- WSL 2에서도 실행할 수 있으며, 자세한 절차는 빌드 문서에서 확인할 수 있음
오픈소스 기반과 확장 계획
- GNU GPL v3로 배포되며 GitHub에서 공개적으로 개발됨
- Apple이 공개한 Darwin 원본 소스 코드를 폭넓게 활용하며, Apple EULA와 관련해서는 완전한 자유 소프트웨어로 공개된 Darwin 부분만 직접 사용함
- Cocoa 구현은 The Cocotron을 기반으로 Apportable Foundation과 GNUstep의 여러 구성 요소를 함께 활용함
- Darling이라는 이름은 macOS와 iOS의 기반 운영체제인 Darwin과 Linux를 결합해 만들어짐
- 장기적으로 대부분의 Android 휴대전화와 같은 ARM 기기에서 iOS 앱을 실행하려 하며, 자체 UIKit 구현이 주요 과제로 남아 있음
- 기여하려면 문서와 블로그에서 내부 구조를 익힌 뒤 GitHub에 참여할 수 있으며, macOS·iOS 개발 경험은 필수가 아님
-
Homepage
-
Tech blog
- Darling: Linux에서 macOS 소프트웨어 실행하기