macOS와 Linux는 공통 유산을 공유합니다. 불행히도 그렇다고 해서 애플리케이션이 운영 체제 간에 원활하게 전환될 수 있는 것은 아닙니다. Linux에서 Mac 앱을 실행하려면 일종의 가상 머신 또는 번역 계층이 필요합니다.
macOS 가상 머신 실행(모든 앱)
Linux에서 Mac 앱을 실행하는 가장 안정적인 방법은 가상 머신을 사용하는 것입니다. VirtualBox와 같은 무료 오픈 소스 하이퍼바이저 애플리케이션을 사용하면 Linux 시스템의 가상 장치에서 macOS를 실행할 수 있습니다. 제대로 설치된 가상화된 macOS 환경은 문제 없이 모든 macOS 앱을 실행합니다.
이와 같이 데스크탑을 가상화하려면 상당한 RAM이 필요하므로 리소스가 부족한 장치에서는 원활하게 실행되지 않을 수 있습니다. 기술 사양이 있는 시스템의 경우 VirtualBox 가상 시스템을 통해 운영 체제를 가상화하는 것이 가장 좋은 옵션입니다.
Darling 번역 계층 사용(CLI 전용)
Darling이라는 번역 레이어를 실행할 수도 있습니다. 이것은 Linux 시스템에서 일부 Windows 응용 프로그램을 실행할 수 있는 Windows-to-Linux 번역 환경을 생성하는 WINE처럼 작동합니다. Darling은 macOS와 Linux 간에 동일한 목표를 달성하려고 합니다. macOS와 Linux는 모두 동일한 UNIX 스타일 기반을 공유하기 때문에 Darling은 WINE보다 리소스 집약적이지 않으며 더 많은 상황에서 더 나은 결과를 생성합니다.
당분간 Darling은 매우 간단한 GUI 앱과 여러 명령줄 앱에서만 작동할 수 있습니다. GUI 앱 지원은 프로젝트의 목표이지만 기능은 아직 구현되지 않았습니다. 기본적으로 터미널에서 macOS 셸을 안정적으로 실행할 수 있으며 다른 앱을 효과적으로 실행하거나 실행하지 못할 수도 있습니다.
또한 빌드 후 약 12GB의 디스크 공간이 필요한 엄청난 양의 코드가 포함되어 있습니다. 본질적으로 macOS 운영 체제의 기능을 복제합니다. 따라서 시스템을 손상시키는 원격 실행 파일이 걱정된다면 이 크기의 패키지는 피하는 것이 좋습니다.
Darling 빌드 및 설치
1. 설치 지침에 따라 Darling 설치 페이지에서 Linux 배포판에 대한 올바른 종속성을 다운로드하십시오. 배포판에 따라 긴 명령을 실행해야 할 수도 있습니다.
예를 들어 Ubuntu의 경우 다음 터미널 명령을 실행하여 Darling의 종속성을 다운로드합니다.
sudo apt-get install cmake clang bison flex xz-utils libfuse-dev libudev-dev pkg-config libc6-dev:i386 linux-headers-generic gcc-multilib libcap2-bin libcairo2-dev libgl1-mesa-dev libtiff5-dev libfreetype6-dev libfreetype6-dev:i386 git libelf-dev libxml2-dev libegl1-mesa-dev libfontconfig1-dev libbsd-dev
2. Darling의 git 저장소를 로컬 시스템에 복제:
git clone --recursive https://github.com/darlinghq/darling.git
3. 디렉터리를 Darling 클론으로 변경합니다.
cd darling
4. 사랑하는 디렉토리를 만들고 구축하세요:
mkdir build && cd build
5. cmake로 빌드 구성:
cmake ..
6. 달링 만들기:
make
컴퓨터의 리소스에 따라 빌드 프로세스가 1시간 이상 걸릴 수 있습니다.
7. 달링 설치:
sudo make install
8. Darling의 커널 모듈 darling_mach 빌드:
make lkm
9. darling_mach 설치:
sudo make lkm_install
Darling을 사용하여 Linux에서 macOS 애플리케이션 실행
darling 하위 시스템에 액세스하려면 darling shell
을 실행하세요. . 이것은 darling 명령 접두사를 사용하여 macOS 셸 환경을 시작합니다.
darling shell
darling shell 안에 들어가면 macOS 시스템에 있는 것처럼 명령을 실행할 수 있습니다. 모든 프로그램 설치는 darling shell 내에서 이루어집니다. Darling에 연결하지 않고 명령을 실행하면 작동하지 않습니다.
macOS 프로그램을 실행하려면 먼저 적절한 파일을 다운로드하십시오. Linux 시스템에서 .dmg 또는 .pkg를 얻고 싶을 것입니다. Mac App Store에서 앱을 실행하려면 .app 파일을 Linux 컴퓨터의 "/Applications/"에 복사한 다음 Darling의 셸 명령을 통해 실행하세요.
DMG에서 설치
.dmg에서 프로그램을 설치하려면 hdiutil
로 마운트하세요. 달링 내:
hdiutil attach AppName.dmg
애플리케이션을 로컬 저장소에 복사:
cp -r /Volumes/AppName/AppName.app /Applications/
달링을 통해 실행:
/Applications/AppName.app
PKG에서 설치
pkg에서 프로그램을 설치하려면 Darling 내에서 설치 프로그램을 사용하십시오:
installer -pkg foo.pkg -target /
Darling 고유의 .pkgs는 uninstaller 동반 명령을 사용하여 제거할 수 있습니다.
설치가 완료되면 Darling을 통해 실행하십시오.
/Applications/AppName.app
결론
Darling은 명령줄 프로그램과 잘 작동하지만 결국에는 GUI 응용 프로그램을 지원할 것입니다.