- run Mac OS X applications on Linux
- 1 Answer 1
- Как запускать приложения для Mac в Linux
- Использование эмулятора Дарлинга
- Как запускать приложения Mac в Linux с помощью виртуальной машины
- Способ 1: используйте Macos-virtualbox
- Способ 2: скачать из интернета
- Способ 3: загрузка с заимствованного Mac
- Заключение
- Получить технические вещи
- Популярные сообщения
- Отказ от ответственности
- Is there a way to run MacOS software on linux? [duplicate]
- 2 Answers 2
- Linked
- Related
- Hot Network Questions
run Mac OS X applications on Linux
The only way would be to create an OS X VM (e.g. using kvm or Virtualbox ). Unfortunately, there would be licensing issues with doing that — Apple don’t want you running their OS on non-Apple hardware. I don’t think they even sell OS X on DVD any more (you’re supposed to get OS X with your Mac and upgrade it over the internet when they tell you to).
1 Answer 1
Darling (link) is a project that aims to become analogous to wine. Currently it only runs some command-line OSX programs, though. As of mid-2019, it can run many command-line programs, and according to their homepage appears to be approaching the point where it can run some rudimentary graphical software as well. It probably won’t run what you want just yet, unless it’s text-based.
As long as the developers of the OS X program released their source code and used cross-platform libraries (such as QT, GTK, X11, GNUStep or WxWidgets) you should be able to re-compile an OS X program for linux. OS X and Linux are much more compatible at the API level than the ABI level.
GNUStep implements the Cocoa APIs of NeXTStep and OS X. It was shockingly complete when I tried it, in terms of how much it seemed capable of doing versus how little seems to use it in the wild. GNUStep only works on the source-code (API) level, so it works if a program is open-source and uses Apple’s Cocoa GUI (NOT «Aqua» which is proprietary). It depends on being able to compile and link the code.
Think of the API, or Application Programming Interface, as something like a car’s dashboard — everything is visible to the driver of the car, and you can get into someone else’s car and find his different dashboard just as easy to figure out.
Think of the ABI, or Application Binary Interface, as the engine of the car — it can vary greatly between makes and models, and you probably won’t be able to trade your Chevy engine into a Volvo very easily.
Darling would in this analogy be putting the Chevy engine in a Volvo’s chassis, and compiling from source would be like just getting out of your Chevy and getting into the Volvo. One is much simpler to do than the other from a programmers’ perspective.
But Apple has some proprietary user interface libraries that no one else has, too. If the developer used one of these (such as Aqua), you’ll have to wait and hope that Darling grows up like Wine did, or port it yourself. If there is no source code released, it’d be like if the engine was made so big that it could not fit in the Volvo’s engine bay, or designed for connecting to a front wheel drive car where your Volvo was rear wheel drive. Unless someone is an absolutely insane maniac (in the best possible way) who has months of free time and ridiculous amount of dedication, it’s not likely to happen.
Additionally, GNUStep is not 100% complete in terms of coverage of the Cocoa API’s, so some shoehorning is likely still going to be necessary for complex programs. And GNUStep does not provide an xcode-equivalent build system — that is, if the original developer used the XCode IDE’s «build» system exclusively, you may be left writing makefiles for it. This was the most frustrating part for me, since while I have experience with compiling and linking software, it’s hard to wrestle useful information out of a format like a .xcodeproj that I have no prior backend experience with.
Как запускать приложения для Mac в Linux
Ищете способ установить и запустить приложения для Mac на компьютере с Linux? Здесь есть две возможности. Читайте дальше, чтобы открыть их.
Один минус переезда Linux заключается в том, что вы пропустили некоторые программы из вашей предыдущей операционной системы. Иногда вам хочется, чтобы они работали на вашем *nix-боксе.
Это больше не проблема для приложений Windows, но как насчет приложений Mac? Можно ли запустить их в Linux и насколько это просто?
Ответ: да, можете. Существует два метода запуска приложений Mac в Linux:
A. С помощью эмулятора Darling
Б. С помощью виртуальной машины
Использование эмулятора Дарлинга
Эмулятор Darling призван сделать использование приложений Mac в Linux таким же простым, как Wine, созданное с помощью приложений Windows. Darling в настоящее время находится на ранней стадии разработки, так что впереди еще долгий путь.
Его основным ограничением является то, что на данный момент вы можете использовать его только для запуска программ командной строки. Таким образом, если вы планируете запустить приложение с графическим интерфейсом пользователя (GUI), вам нужно либо подождать, когда и если Darling поддерживает приложения с графическим интерфейсом, либо использовать вариант 2 этого руководства, который гарантированно сработает.
Пакет Darling состоит из двух частей, и вам нужно загрузить и установить обе, чтобы заставить его работать. Один — это сам эмулятор, а другой — модуль ядра.
Ниже приведено пошаговое руководство по установке Darling в Ubuntu 18.04. Он использует команду gdebi, которая автоматически удовлетворяет требованиям и устанавливает для вас все зависимости пакета.
Шаг 1: Загрузите файлы darling и darling-dkms с https://github.com/darlinghq/darling/releases.
Шаг 2: Нажмите Ctrl + T, чтобы открыть терминал
Шаг 3: cd в каталог загрузок и введите следующую команду, чтобы установить модуль ядра. Ответьте «да» на его приглашение, набрав «y»
sudo gdebi darling-dkms_0.1.20200331.testing_amd64.deb
Шаг 4: Затем установите Darling с помощью следующей команды:
sudo gdebi darling_0.1.20200331.testing_amd64.deb
Шаг 5: После завершения установки вы можете запустить эмулятор с помощью следующей команды:
Затем вы можете убедиться, что это не оболочка Bash, введя команду uname, которая должна вывести «Darwin», а не «Linux».
Как запускать приложения Mac в Linux с помощью виртуальной машины
Вы также можете запускать приложения Mac на виртуальной машине, такой как Virtualbox, Vmware или KVM. Предостережение, однако, заключается в том, что вам необходимо сначала установить операционную систему Mac, прежде чем устанавливать на нее приложение. Apple также не одобряет установку своей операционной системы Mac на оборудование, отличное от Apple Mac.
Это означает, что вы не можете загрузить Mac OS, не имея компьютера Mac. И хотя вы можете решить загрузить его из Интернета, вы не можете быть уверены в целостности загружаемого файла. Некоторые люди зарабатывают на жизнь загрузкой программного обеспечения, зараженного вредоносным ПО, и вы можете стать его жертвой.
С другой стороны, Macos-virtualbox — многообещающий скрипт Bash, который загружает файлы напрямую с серверов Apple и создает для вас виртуальную машину. Это гарантирует, что вы используете только подлинное программное обеспечение Apple.
Другой способ — взять Mac у друга и использовать его для загрузки обновленной версии Mac, которую затем можно превратить в установочный файл ISO.
Вот как можно использовать все 3 метода:
Способ 1: используйте Macos-virtualbox
Зайдем на GitHub и скачать пакет. Также попробуйте прочитать документацию, чтобы лучше понять, как это работает.
Откройте терминал, затем разархивируйте и запустите скрипт, используя следующие команды:
Он проведет вас через весь процесс загрузки программного обеспечения и создания виртуальной машины. Все, что вам нужно, это терпеливо сидеть и нажимать кнопку «Ввод», когда будет предложено.
Но если по какой-то причине это не работает, то можно попробовать и эти другие способы.
Способ 2: скачать из интернета
Шаг 1: вам придется найти свой собственный файл в Интернете, потому что Apple не одобряет распространение Mac OS на устройствах, отличных от компьютеров Mac. Следующие шаги предполагают, что вы загрузили файл виртуальной машины (vmdk).
Шаг 2: Установите VirtualBox или любое другое программное обеспечение для виртуализации по вашему выбору. Для VirtualBox используйте приведенную ниже команду, чтобы сразу установить пакет со всеми дополнительными дополнениями:
sudo apt install virtualbox virtualbox-dkms virtualbox-ext-pack virtualbox-guest-additions-iso virtualbox-guest-utils virtualbox-qt
Шаг 3: Запустите VirtualBox и создайте новую виртуальную машину, используя загруженный файл vmdk.
Шаг 4: Дайте ему около 4 ГБ ОЗУ или больше, 128 МБ графики и 2 ядра ЦП. Избегайте пробелов в имени виртуальной машины. Вы можете дать ему что-то вроде «MyMacOS».
Шаг 5: Это важно. Сначала выйдите из VirtualBox. Тогда дзагрузить этот сценарий оболочки
Шаг 6: cd (Change Directory) в каталог, в который вы загрузили скрипт, и выполните его, например:
./setup.sh -v «MyMacOS» -r 1920×1080
Где MyMacOS — это имя, которое вы дали своей виртуальной машине, а 1920×1080 — ваше полноэкранное разрешение или разрешение, которое вы хотите дать виртуальной машине.
Шаг 7: снова запустите VirtualBox и запустите новую виртуальную машину Mac OS.
Способ 3: загрузка с заимствованного Mac
Если у вас есть доступ к реальному компьютеру Mac, который старше Mac High Sierra, вы можете использовать следующие шаги, чтобы также создать виртуальную машину Mac на вашем компьютере с Linux:
Шаг 1: получить физический доступ к компьютеру Mac. Он может быть вашим или вы можете одолжить его у друга. Просто убедитесь, что у него есть доступ в Интернет, и все готово.
Шаг 2: зайдите в Mac Store и найдите High Sierra. Нажмите Загрузить.
Шаг 3: Когда он закончит и попытается начать установку, нажмите Ctrl + Q, чтобы выйти.
Шаг 4: Откройте терминал из Приложения > Утилиты и введите следующие команды:
hdiutil create -o /tmp/HighSierra.cdr -size 7316m -layout SPUD -fs HFS+J
hdiutil attach /tmp/HighSierra.cdr.dmg -noverify -nobrowse -точка монтирования /Volumes/install_build
asr restore -source /Applications/Install\ macOS\ High\ Sierra.app/Contents/SharedSupport/BaseSystem.dmg -target /Volumes/install_build -noprompt -noverify -erase
hdiutil отсоединить /Volumes/OS\ X\ Base\ System
hdiutil convert /tmp/HighSierra.cdr.dmg -format UDTO -o /tmp/HighSierra.iso
mv /tmp/HighSierra.iso.cdr ~/Desktop/HighSierra.iso
Вот и все. Теперь у вас есть загрузочный файл ISO на рабочем столе, который вы можете установить на свою виртуальную машину. Скопируйте его на флэш-накопитель и переместите на свой Linux-бокс, чтобы начать установку.
Заключение
Вы видели различные методы запуска приложений Mac в Linux, несмотря на усилия Apple, направленные на обратное.
Эмулятор Darling лучше всего подходит для небольших программ-оболочек. В противном случае, если вам нужно запустить более серьезную программу с графическим интерфейсом, используйте виртуальную машину.
Ннамди Океке — компьютерный энтузиаст, который любит читать самые разные книги. Он предпочитает Linux, а не Windows/Mac, и использует
Ubuntu с первых дней. Вы можете поймать его в твиттере через Бонготракс
Получить технические вещи
Технические тенденции, тенденции стартапов, обзоры, онлайн-доход, веб-инструменты и маркетинг один или два раза в месяц.
Популярные сообщения
Отказ от ответственности
Некоторые из ссылок здесь являются филиалами. Если вы покупаете через них, вы можете получить эксклюзивную скидку. Он не завышает цену, а предлагает скидку. Покупка по партнерским ссылкам помогает нам продолжать разработку и добавлять на этот сайт больше полезного контента.
Is there a way to run MacOS software on linux? [duplicate]
Is there any way to run OSX programs on my linux machine? I’m thinking something like running virtualbox with an OSX install on it, which works great for Windows programs.
If it’s not possible, why not? (Perhaps virtualbox can’t pretend to be the Mac hardware, or there is some kind of licence violation).
Still seems a dupe to me: «Mac OSX as guest on virtual box with Ubuntu Host?» at superuser.com/questions/98179/…
2 Answers 2
Well, the main problem is Apple, who own the rights to Mac OS X, will not license it to run on anything but Mac hardware. So running Mac OS X on Virtualbox etc. would be illegal (assuming such license restrictions are valid in your jurisdiction, but that’s a legal question).
From a technical point of view, the versions that install on generic PCs (I’ve heard they exist) will probably also install in Virtualbox. There are (illegal) Virtualbox images for Mac OS X on the ‘net.
It’s much easier (not to mention legal) to do it other other way around, i.e. run Mac OS X on legitimate Apple hardware and then run Linux in a VM under Mac OS X using Parallels or VMware Fusion.
Linked
Related
Hot Network Questions
Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.7.14.43533
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.