Статья посвящена Wine и всем аспектам его использования. В сети находится очень много информация, есть различные руководства по настройке и многое другое. Я постараюсь объединить все для того чтобы любой человек смог достичь максимального успеха, в пределах своих способностей и конечно возможности программы. Итак - начнем.

Wine - это отдельная реализация Windows API, а не эмулятор, как большинство думают. Не единожды повторялось, но и здесь будет уместно. Это и делает проект уникальным и интересным для пользователей различных систем, открывает различные пути для реализации своих идей. Уникальность заключается в том, что с помощью этой программы можно запускать Windows приложения в Ubuntu и других Linux-подобных системах, а также во FreeBSD и в Mac OS X. Правда и тут есть свои «подводные камни». Некоторые думают то что будет легко перейти с одной системы на другую, в данном случае мы рассматриваем Windows и Linux.

Заблуждение заключается в том что люди думают что у них получиться запустить из под Wine различный софт, к которому они привыкли и им удобно в нем работать. Как не крути просто так ничего не бывает. Чтобы заработал наш любимый софт под Wine нужно попотеть, перечитать кучу руководств и взвесить этот объём информация. Проект Wine развивается очень быстро, но до стабильной работы ему очень далеко. Но думаю что в скором будущем весь основной софт, а также игры будут работать на нем стабильно.

Установка Wine

Первый вопрос человека который только что перешёл на Linux (в нашем случае Ubuntu): «Как я буду запускать программы из Windows?». Он начинает поиск на эту тему и естественно натыкается на Wine. Второй вопрос: «Как его поставить?». Есть два способа: Поставить из официальный репозиториев или скомпилировать самому из исходников. Мы рассмотрим оба варианта.

Вариант 1: Установка из репозитория.

Тут все очень просто. Идем в Приложения Стандартные Терминал:

 sudo add-apt-repository ppa:ubuntu-wine/ppa
 sudo apt-get update
 sudo apt-get install wine1.3

Ждем завершения установки…. Всё! Wine установлен и можно пробовать устанавливать игры и программы.

Вариант 2: Компилирование из исходников.

1.Скачиваем исходники с официального сайта, там они присутствуют. В моё случае это Wine 1.3.11 (http://sourceforge.net/projects/wine/files/Source/wine-1.3.11.tar.bz2/download).

2. Распаковываем исходники. Дальше вводим в терминале следующие команды:

переходим в директорию, в которую был распакован архив с исходными текстами:

 cd wine-1.3.11/ 

Перед компиляцией надо включить поддержку OpenGL. Если мы этого не сделаем приложения которым нужен OpenGL работать не будут. В терминале:

 gedit tools/wineinstall

Находим строку, начинающуюся с CONFARGS=, и после вписываем в нее нужные параметры сборки. В нашем случае строка будет выглядеть так:

 CONFARGS="--enable-opengl --disable-debug --disable-trace"

Получаем зависимости:

 sudo apt-get install auto-apt checkinstall
 sudo auto-apt -y run ./configure 

Собираем:

 make

Устанавливаем через создание пакета, вместо make install

sudo checkinstall

Всё. Ждем окончания установки.

Рассмотрим плюсы и минусы каждого из вариантов.

Вариант 1. Плюсы: 1. За нас уже все собрано и пыжиться не надо, все уже готово к употреблению.

Минусы: 1. Мы не сможем применить патч, например для улучшения работы какой нибудь игрушки. 2. Не стабильная работа на некоторых видеокартах.

Вариант 2. Плюсы: 1. Возможность применить патчи для улучшения работы 2. Стабильная работа с не стабильными драйверами видеокарт.

Минусы: 1. Нет меню в Приложениях, что не удобно. Приходиться все делать из консоли, выходить в настройки Wine например. 2. Процесс установки слишком долгий, зависит от мощности вашего компьютера.

Я отдаю предпочтение второму вариант. Wine установленный таким образом работает лучше, чем установленный из репозиториев. Но это лишь мое маленькое ИМХО.

Установка программ и игр

Сперва мы идем на http://appdb.winehq.org/ Сверху, в поисковике вбиваем название игры или программы и смотрим что там написано. Обычно там описаны тесты на различных системах, рекомендации для стабильной работы и многое другое.

Если программа работает без проблем, значит с чистой душой её устанавливаем простым кликом. Если это какая нибудь серьёзная игра или программа и без шаманства с бубном не обойтись - значит надо создавать отдельный префикс для наших танцев. Идем в наш домашний каталог и создаем новую директорию. Например .wine2. Дальше идем в терминал и вводим:

 WINEPREFIX="/home/username/.wine2/" winecfg

Всё. Отдельный префикс создан. Там хранятся различные конфигурации реестра и сами программы. Установку программы также производим через консоль.

 WINEPREFIX="/home/username/.wine2/" wine /media/DVD/setup.exe

Идет процесс установки и самое главное в отдельный префикс. Потом мы запускаем уже установленную программу, также из консоли и смотрим вывод.

В выводе могут быть ошибки, о том что нет нужных компонентов и библиотек. В установке недостающих компонентов нам поможет winetricks (см. ниже)

Что это дает? Это дает стабильную работу приложений в своем префиксе, если масса программ будет работать в одной префиксе, он рано или поздно засориться что приведет к сбою других программ. Поэтому нужно использовать отдельные префиксы, если не хотите все настраивать по много раз.

Winetricks

В правильной настройке префикса нам поможет winetricks. Winetricks - это скрипт, который устанавливает различные компоненты, которые требуются для работы приложения, например DirectX, Vcredist и многое другое. Как это скрипт работает? Он скачивает библиотеки и компоненты с Microsoft-овских ресурсов. Именно так, и не как по другому. Зачем этот скрипт нужен? Это очень упрощает работу с Wine-ом. Без скрипта мы бы сами лазили и искали нужные компоненты, а тут уже все сделано, надо только поставить галочку и нажать «Установить» Также этот скрипт помогает редактировать реестр, вписывать туда различные ключи. И помимо этого в winetricks есть много настроек и функций.

Для ознакомления с ним просто введите в терминале winetricks

Редактирование реестра

В терминале вводим:

 regedit

Мы в реестре. Редактировать нам ничего не надо, мы будет только добавлять.

Идем в HKEY_CURRENT_USER/Software/Wine/Direct3D.

Если каталога Direct3D нет, то не отчаиваемся. Я это пишу чтобы читатель понял где-то надо редактировать или добавлять.

В терминале:

 winetricks ddr=opengl orm=fbo glsl=disabled videomemorysize=1024 
 (1024 меняете на свое)

Все эти параметры появиться в реестре. Это можно посмотреть в папке указанной выше.

Что это дает? Это улучшает производительность в играх, скорость и вообще игры работают от этого лучше, но это только для игр.

PlayOnLinux

Также существует PlayOnLinux. Это отдельная программа, которая использует Wine, но там более все автоматизированно и настроено. Программа сама скачает нужный Wine, установит компоненты и создаст отдельный префикс. Но это не значит что все будет идеально работать. Может вообще не работать. Так что я отдаю свое предпочтение обычному Wine, ручной настройке и работе собственного мозга, а не автоматизированной программе.

Плюсы: Все автоматизированно и нам по сути делать ничего не надо. Можно держать несколько версий Wine и применять их для различных префиксов. Программа сама создает префиксы.

Минусы: Все что делает программа, устанавливает и скачивает предугадать невозможно. Все что делает программа можно сделать самому, ручками, это + к знаниям человека. Программа «Робот» никогда не сравниться с человеческим мозгом.

Монтирование образов CD/DVD-дисков

В Windows есть для этого утилита под названием Daemon-Tools. Это очень удобная и не заменимая утилита. У человека возникает вопрос: Есть ли аналог этой чудо-утилиты? Ответ: Есть и на много лучше Windows утилиты. Называется она Cdemu. Для её установки нам требуется ввести всего лишь три команды:

sudo add-apt-repository ppa:cdemu/ppa

 sudo apt-get update
 sudo apt-get install cdemu-daemon cdemu-client gcdemu

Добавляем аплет на панель, указываем путь к образу и радуемся жизни. Не каких проблем не будет и Wine будет отлично определять образ.

Запуск игр в отдельном Х-сервере

Этому можно посветить целую книгу, но я остановился на одном способе, которым всегда пользуюсь:

Переходим в виртуальный терминал:

 Ctrl + Alt + F1
 login: ******
 password: ******

Запускаем вручную новую копию X-сервера:

 xinit -- :2
 wine путь/папке/c/игрой/game.exe

Прирост от этого не большой, но лично мне этого хватает. Ещё раз повторю: способов запуска в отдельном х-сервере много и каждый человек волен сам выбирать.

Заключение

Все эти советы, азы, которые должен знать каждый человек который хочет использовать Wine для достижения своих целей. Все остальное в ваших руках. Если вы хотите достичь цели не смотря не на что, а надежда уже уходит, не отчаивайтесь никогда, ибо решение может находиться у вас «перед носом». Усидеть на двух стульях возможно, но для этого нужно желание и стальные нервы. Желание - тысяча возможностей, не желание - тысяча причин.

Данный материал написан для «Первого конкурса русскоязычных статей для ОС Ubuntu» (konkurs.ubuntu.ru)