Портирование игр и программ на Mac с помощью CXZ и WineSkin

Здравствуйте! Каждый человек, перешедший с Windows на Mac не редко хотел иметь свою любимую, «Виндовую» игру или программу на Mac’е. Сегодня я расскажу как это сделать. Наверное, все знают про wrapper, через который портируют игры, под названием Cider. Про него уже говорили на Macpages, но портировать программы через него не получится, да и с играми придется попотеть.

Я расскажу вам про wrapper ‘ы основанные на Wine – CXZ ( если быть точнее он основан на CrossOver’ ах а он уже на Wine ) и WineSkin.

WineSkin

Что это такое? 
WineSkin – это просто оболочка сделанная для простоты создания портов Windows приложений для Mac OS X. Она может содержать Windows программу внутри, и также запустить ее. И запустите ее легко, просто дважды щелкнув файл, как обычный Mac. App. Окончательный App делается с помощью WineSkin, Xquartz и всеми конфигурации пользователя (в большинстве случаев).

На данный момент доступна Wineskin RC5 для Mac OS X 10.4, 10.5 и 10.6 (русский язык поддерживается)
В основу программы входят:


Wine — Stock Wine version 1.1.34 X11
Xquartz 2.5.0 (x.org server 1.7.2)

Встроенный утилиты:


  • Installer — установка приложения в Wine Skin без Windows
  • ScreenOptions — опции режима окна
  • WineskinConfig — настройка Wine (рисунок 1)
  • Winetricks — скрипты





  • Set Windows Executable — выбор запускаемог приложения внутри WineSkin
  • Set Windows Executable flags — дополнительные параметры для запуска приложения, например, -exec Korich.cfg
  • Set Icon — иконка формата ICNS (макс 512×512)
  • Set Menubar Name — название приложение на основном меню
  • Set Version Number — версия приложения
  • Run Winecfg.exe — настройка внутренней системы
  • Run Regedit.exe — запуск редактора реестра, для тонкой настройки
  • Create a Custom EXE Launcher — для дополнительных приложений если с приложением устанавливаются
  • дополнительные утилиты
  • Remake wineprefix for new Wine version — удаляет всякий мусор с диска C внутри враппера
  • Kill all Wine and Wineskin processes — закрывает конфиг и завершает работу всеч wine процессов



Пример:
 начну с самой любимой игры Heroes III ;)



  1. вставляем диск с игрой и запускаем Installer и видим
все делается в Mac OS X!

  2. далее по инструкции установщика инсталируем игру куда Вам нужно, я оставил путь по умолчанию

  3. запускаем ScreenOptions и выбираем Full Screen и разрешение для монитора, например 800×600

  4. Запускаем WineskinConfig и выставляем запускаемый файл (Set Windows Executable). открывается окно с путем «C:\», переходим в ту папку где установлена игра и выбираем HEROES3.EXE

  5. Добавляем иконку и устанавливаем отображаемое название на menubar (Heroes 3)
  6. Готово!

Туториал взят с habrahabr.ru , оригинальная статья. Скачать WineSkin можно тут ( потребуется регистрация).

CXZ

Этот wrapper сам по себе похож на WineSkin но основанный на CrossOver. Как и CrossOver их несколько версий: основоныйе на CrossOver Game, подходящий для портирования игр, и на CrossOver Pro, подходящий для портирования программ. Начнем:

  1. Качаем wrapper и устанавливаем CXZ engines, без него wrapper не будет работать.
  2. Нажимаем на wrapper правой кнопкой и выбираем показать содержание пакета, далее в папку Contents. Там вы увидите не мало файлов, но нам понадобиться всего несколько: папка(ярлык) root, Info.plist, CXInstaller.app и CXwinecfg.app .
  3. Запускаем CXInstaller.app , и в появившемся окне выбираем exe файл установки, далее запускается виндовый эмулятор и начнется установка программы или игры. После нужно установить DirectX и тд необходимое для игры.
  4. После завершения установки запускаем CXwinecfg.app и переходим во вкладку Графика, там вы увидите группу «Настройки окна». Первый пункт особого значения не имеет, как хотите так и делайте. Во втором пункте: если вы хотите чтобы Wine декорировал окна рамкой от Mac OS X, то ставьте галку. Третий пункт позволяет менеджеру окон Mac‘а управлять окноми Wine, т е когда вы сворачиваете окно портанутой программы, она сворачивается в док, если галка не выбранна то Wine будет сворачивать программу на рабочий стол. Четвертый пункт лутше не трогать.
  5. Далее открываем Info.plist , кто знает или читал как портировать игры через Cider тот сразу поймет что нужно делать, в этом файле нужно указать название программы, путь к папке с игрой и к exe файлу который запускает игру. Иконка игры хранится в папке Resources ее можно заменить, если вы будите давать иконке новое имя отличное от названия оригинальной иконки (CXZicon.icns) вам нужно отредактировать тот же самый Info.plist . Осталось только одно, поменять имя файла .app\Contents\MacOS\CXZ Sapphire( зависит от версии wrapper’а).app на название которое вы хотите.

Все можете попробовать запустить игру или программу.