Установка и базовая настройка Wine для игр в Linux: особенности и рекомендации. Установка Wine, winetricks, DirectX и программ, необходимых для игр После запуска приложения\игры, wine ругается и ничего не запускает. Что делать

1. Введение

Множество программ работает под WINE вообще без каких-либо дополнительных настроек. К сожалению, так бывает не всегда. К тому же программы постоянно обновляются и список работающих приложений постоянно меняется. Поэтому было бы неплохо настроить WINE для работы с потенциально проблемными программами.

Для настройки есть две основные утилиты - winecfg и winetricks. В этом руководстве мы рассмотрим первую из них. В большинстве случаев, впрочем, возможностей winecfg вполне достаточно, чтобы заставить программу работать.

winecfg - это графическая утилита. Различные дистрибутивы и окружения рабочего стола работают с WINE и приложениями WINE по разному, поэтому проще всего в любом дистрибутиве запустить winecfg в терминале.

После запуска программы вы увидите простое окно с семью или восемью вкладками, в зависимости от версии WINE. Восьмая вкладка "Staging" появляется только при использовании промежуточных версий WINE.

2. Библиотеки

Вкладка "Libraries" наверное самая важная в winecfg. Она позволяет контролировать работу WINE с библиотеками Windows. Это особенно важно, так как некоторые приложения несовместимы с определенными версиями библиотек, или требуют определенных нестандартных библиотек. Код WINE также модифицировали, чтобы решать эти проблемы. Так как WINE - это не Windows, он не всегда может использовать ту же нативную версию библиотеки Windows до того, как эта библиотека будет адаптирована для работы с WINE.

Первый элемент во вкладе - выпадающий список "New override". Он позволяет вам выбрать библиотеку Windows из невероятно длинного списка, или ввести свою. После этого вы кликаете кнопку "Add" для добавления в список.

После нажатия "Add" библиотека появится в поле ниже, называемом "Existing overrides.". Это поле содержит список переопределяемых библиотек, добавленных в WINE. По умолчанию, новое переопределение (native, builtin) будет следующим. Это значит, что WINE сначала будет пробовать использовать нативную Windows-версию библиотеки. Если попытка будет неудачной, WINE вернется к своей встроенной версии. Эти опции можно изменять. Для этого выделите нужное вам переопределение, затем кликните "Edit" сбоку от поля "Existing overrides".

Кликнув кнопку "Edit", мы увидим окно, которое позволяет редактировать переопределение. Здесь можно выбрать из пяти доступных опций, большинство которых представляют собой различные комбинации "Native" and "Builtin." Последний доступный вариант - "Disable". Какую опцию выбрать, зависит от типа ошибок, с которыми вы столкнулись. Найти нужное сочетание опций может быть достаточно трудно, особенно если программа не документирована в WINE Appdb (https://appdb.winehq.org). Вы можете попробовать запустить программу в WINE из командной строки, чтобы просмотреть вывод, в котором можно найти немало полезной информации.

Если вам необходимо удалить переопределение, просто выделите его в поле "Existing overrides" и кликните кнопку "Remove". Время от времени приходится это делать при обновлении программы.

3. Графика

Вкладкой "Graphics" вы скорее всего будете пользоваться не очень часто. Если у вас проблемы с разрешением экрана, можно настроить dpi, а если ваш менеджер окон ведет себя неправильно, можно отключить его контроль над окнами WINE.

Более часто вы будете использовать опцию "Emulate a virtual desktop" вкладки "Graphics". Эта опция позволяет вам заставить приложение WINE запускаться в окне, которое ведет себя как виртуальный рабочий стол. Помните, что это не виртуальная машина. Она просто заставляет приложения работать в WINE в окне.

Вероятно эта опция выглядит достаточно странной, но есть по крайней мере пара случаев, когда она может стать необходимой.

Очень часто в WINE программы отказываются запускаться в оконном режиме. Обычно эта проблема встречается в играх, где какой-то странный баг проявляется только в оконном режиме. Обходной путь для запуска таких игр в оконном режиме - использовать опцию "Emulate virtual desktop".

Другой случай более проблематичный. Иногда приложение пытается изменить разрешение экрана и в процессе падает. Снова, чаще всего это происходит с играми, особенно со старыми. Крах может в итоге привести к черному экрану, выставленному неправильному разрешению или к зависанию X-сервера. В любом случае это проблема. Для ее предотвращения запускайте программу с опцией "Emulate a virtual desktop". Она возможно не предотвратит падения программы, но должна предотвратить проблемы с остальной системой. Это полезная методология отладки.

4. Интеграция десктопа

Вероятно вы никгода не использовали эту вкладку. Вкладка "Desktop Integration" позволяет вам менять внешний вид приложений, запущенных в WINE. Однако, большинство графических оболочек и менеджеров окон и так прекрасно справляются с этой задачей, в результате чего практически никогда не возникает необходимости в смене темы. Худшее, что может вас ждать, если вы не будете использовать эту вкладку - оформление в стиле Windows 98.

5. Диски

Обычно WINE хорошо справляется с обнаружением дисков. Если же диск не определился, или вам необходимо добавить в систему физический или виртуальный привод, для этого служит вкладка "Drives".

При добавлении физического привода вы можете вопользоваться кнопкой "Autodetect", чтобы WINE попробовал определить новый привод. Если это не сработало, или вы добавляете виртуальный привод, вы можете кликнуть "Add..." и задать букву для нового диска. Далее выберите диск в окне "Drive configuration" и измените путь к устройству в поле "Path".

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

6. Аудио

7. Staging

Вкладка "Staging" будет у вас только в том случае, если вы устанавливаете промежуточные релизы или патчи. Она представляет собой просто набор чекбоксов, которые позволяют включать или отключать различные возможности, предоставляемые патчами. Главная функция - возможность активировать поддержку CSMT или Gallium Nine, в зависимости от установленных патчей. CSMT доступна для всех видеокарт и драйверов, и позволяет значительно увеличить производительность во многих программах и играх. Gallium Nine доступен только для пользователей Mesa и может потенциально получить огромный прирост производительности. Однако две эти опции нельзя использовать одновременно. Другие опции могут также обеспечить некоторый прирост производительности.

8. Настройки под конкретные программы

Так как большинство настроек WINE служит для устранения проблем, связанных с различными приложениями, имеет смысл создание определенных конфигураций под разные программы. Вкладка "Application" позволяет вам создавать конфигурации, выбираемые при запуске в WINE определенных приложений, а также выбирать эмулируемую версию Windows для обеспечения совместимости.

Для создания заданного набора настроек кликните "Add application...". Вы увидите окно, которое позволяет выбрать исполняемые файлы Windows.

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

9. Заключение

winecfg - это маленькая, но мощная утилита, которая позволяет вам настраивать WINE в соответствии со своими нуждами. Познакомившись с нею, и научившись правильно использовать, вы сможете создавать работающие конфигурации со многими приложениями, которые запускаются с помощью WINE. Кроме того, используя winecfg вместе с winetricks, вы сможете добиться практически нативного уровня производительности для многих программ.

Для коректной работы большинства игр необходима настройка реестра нашей псевдо Windows. Для этого воспользуемся утилитой Winetricks, которая была установлена вместе с Wine.
Проделайте следующие манипуляции: Приложения->Wine->Winetricks . В открывшимся окне отметьте: Select the default wineprefix . OK

В следующем окошке отмечаете: Change Settings . OK

Вы получите доступ к основным настройкам вашей связке Ubuntu-Wine-Windows.

Здесь отметьте следующие параметры:
1. DirectDrawRender(ddr) opengl
2. Direct3D Multisampling enabled
3. OffscreenRenderingMode(orm) fbo
4. PixelShaderMode(psm) enabled
5. Render TargetLockMode(rtlm) auto
6. UseGLSL(glsl) enabled (default)
7. VertexShaders(vsm) hardware
8. VideoMemorySize 1024 (выбирете значение ОЗУ вашей видеокарты)
9. MouseWarpOverride(mwo) enabled (force)
Подтверждаем наши изменения - OK.
Все настройки реестра нашей системы хранятся в текстовых файлах (system.reg; user.reg; userdef.reg), находящихся по адресу - Home\Username\.Wine и их можно редактировать в любом текстовом редакторе (попробуйте это сделать в настоящей Windows?!). Для редактирования можно воспользоваться и более привычным для Windows способом - редактором реестра: наберите в терминале wine regedit OK

запустится программа редактирования

Как вы видите, все что мы сделали в Winetricks - отобразилось в настройках реестра.

Не все смирились с отсутствием Фотошопа на Убунту, а также ряда других полезных программ или компьютерных игр, доступных только для Windows. Выход для таких людей есть и зовётся он Вином. Нет, горе запивать не надо! Лучше узнайте, как установить и настроить Wine на Ubuntu, а затем сможете поставить на свою систему часть софта, по которой сильно соскучились.

Установка Вайн даст возможность пользоваться приложениями для Windows на Linux.

Wine («Вайн») - специальное приложение, позволяющее запускать программы, предназначенные для Виндовс, на Linux-системах . Это слой совместимости, который использует библиотеки Windows, а затем подменяет их на системные вызовы Linux, чтобы ПО, разработанное для других систем, работало. На сегодняшний день уже несколько миллионов человек пользуются Вайном и вполне довольны. Разработчики очень часто выпускают обновления, поэтому программа год за годом становится всё лучше. Некоторые умельцы даже ухитряются запускать через неё современные игры.

Wine нельзя назвать эмулятором, как тот же VirtualBox . Об этом говорят нам и создатели, «расшифровывая» аббревиатуру через саму же себя: W ine i s n ot e mulator (умными словами это называется рекурсивный акроним). Виртуальная машина не создаётся, приложение просто реализует Windows API.

Установка и удаление

Удаление

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

Однако убирать с компьютера нужно не только сам Вайн, но и папку в домашней директории. Легче всего сделать это при помощи команд:

sudo apt-get purge wine
sudo apt-get autoremove
sudo apt-get clean
sudo apt-get install -f
rm -f ~/.wine
rm ~/.local/share/applications/wine/Программы
rm ~/.local/share/applications/wine*

Таким образом мы получим удалённый каталог вместе с самим приложением.

Запуск программ

Запускать программы при помощи Wine можно разными способами. Первый, самый лёгкий - через Nautilus:

  1. Находим ПО в папке.
  2. Щёлкаем по нему ПКМ.
  3. Выбираем Wine как программу для запуска.

Второй, традиционный - через терминал:

wine home/user/program.exe

Вместо home/user/program.exe необходимо вписать путь к файлу, запускающему приложение.

Откуда брать программы?

С Вайном мы разобрались. Осталось теперь понять, где найти тот или иной софт. В Центре приложений Ubuntu вы, конечно же, ничего не найдёте. Большинство пользователей следуют двумя путями:

  • ищут сборки на сайтах и форумах;
  • пользуются специальными оболочками.

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

  • Содержит не только игры, но и множество программ, постоянно доводящихся до идеала.
  • Платная и, как следствие, более качественная оболочка.
  • WineWizard. Новая оболочка, которая имеет несколько другой подход. Здесь собраны все удачные решения разных пользователей, вам остаётся только искать их.

Ну а форумы и сайты предлагают очень много разных сборок и инструкций по установке игр, офисных приложений и чего угодно. Если задаться целью и потратить энное количество времени, можно поставить на Убунту чуть ли не любую игру. Например, есть видео, где пользователь демонстрирует установленный Fallout 4, что для многих линуксоидов кажется фантастикой и несбыточной мечтой.

Теперь вы осведомлены, что установка Wine на Ubuntu позволяет сильно сгладить шероховатости этой системы и лишний раз насолить алчным разработчикам. А также знаете, как удалить Wine, настроить его и обновить. Вполне возможно, что со временем вы сами научитесь ставить нужные программы без сторонней помощи.

Оригинал: Wine User Guide
Перевод: Алексей Дмитриев, [email protected]
Дата перевода: май 2008

Глава 3. Настройка Wine (Конфигурация)

Подавляющее большинство обычных настроек делается через инструмент Winecfg tool. Мы пройдем простое пошаговое введение в Winecfg и рассмотрим доступные опции. В следующем разделе мы займемся более продвинутыми изменениями, которые можно сделать при помощи regedit. Также мы проведем полный смотр всех конфигурационных настроек Wine. И, под конец, мы рассмотрим настройки (которые вы, возможно, захотите сделать) недоступные через Winecfg и regedit.

3.1. Программа Winecfg

В прошлом, Wine использовал специальный конфигурационный файл, находившийся в ~/.wine/config. Если вы до сих пор пользуетесь версией Wine, имеющей дело с этим файлом (старше июня 2005 года), то вам нужно обновиться, прежде чем делать что-либо дальше. Все настройки теперь собраны прямо в registry (реестре) и доступны Wine при запуске.

Программа Winecfg должна быть установлена на ваш компьютер вместе с остальными программами Wine. Если вы не поймете, как запустить ее, попробуйте команду:

$ /usr/local/bin/winecfg

или просто

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

  • Applications
  • Libraries
  • Graphics
  • Desktop Integration
  • Drives
  • Audio
  • About

Внесение изменений во вкладки Applications и Libraries будет иметь решающее значение для возможности запуска приложений. Остальные настройки служат для того, чтобы заставить саму программу Wine работать так, как бы вам хотелось.

Предупреждение: Вкладки Applications, Libraries и Graphics связаны между собой! Если вы во вкладке Applications выберете Default Settings (настройки по умолчанию), все изменения, сделанные во вкладках Libraries и Graphics, будут изменены для всех приложений. Если вы настроили некое приложение во вкладке Applications и выбрали его, то настройки, произведенные во вкладках Libraries или Graphics, будут касаться только данного выбранного приложения. Это позволяет выборочно настраивать определенные приложения.

3.1.1. Настройки Приложений

Wine обладает способностью подражать поведению различных версий Windows. В целом, наиболее различны поведения версий Win9x и версий NT. Некоторые приложения требуют для нормальной работы специфического поведения, и изменения этой настройки может заставить сбойное приложение заработать. Недавно версией по умолчанию для Wine была избрана Windows 2000. Известно, что многие приложения работают лучше, если вы выберете Windows 98.

Внутри вкладки вы заметите строку Default Settings (Установки по умолчанию). Если вы выберете эту строку, то все приложения будут работать в версии Windows по умолчанию. Проблемное приложение лучше настраивать отдельно от установок по умолчанию. Для этого:

  1. Нажмите кнопку Add application (добавить приложение).
  2. Найдите нужный.exe файл.
  3. После того, как вы добавите это приложение, вы сможете выбирать версию Windows, которую Wine будет эмулировать специально для этого приложения.

3.1.2. Настройка Библиотек

Подобным же образом, некоторые приложения требуют специальных библиотек. Wine воспроизводит систему библиотек Windows (так называемых "родных" DLL), создавая версии библиотек, которым не нужна лицензия Микрософт, и которые работают в точности как "родные". Wine испытывает недостаток в таких воссозданных версиях библиотек, но работают они вполне удовлетворительно. Использование только воссозданных DLL гарантирует независимость вашей системы от Микрософт. Однако Wine имеет возможность загружать и "родные" DLL Windows.
3.1.2.1. Замена DLL
Не всегда возможно запустить приложение, используя встроенные в Wine DLL. Иногда "родные" DLL просто лучше работают. После того, как вы "засекли" "родную" DLL в Windows системе, вы должны поместить ее в такое место, где Wine найдет ее, а затем настроить для работы. Обычно таковым местом является директория, которую вы назначили на роль c:\windows\system32. Существуют 4 DLL, "родные" версии которых никогда не следует использовать: kernel32.dll, gdi32.dll, user32.dll и ntdll.dll. Эти библиотеки требуют низкоуровневый доступ к ядру Windows, которого просто нет в структуре Wine.

Имея это в виду, коли вы уже скопировали DLL, то необходимо сообщить Wine о возможности воспользоваться им. Можно настроить Wine на выбор между "родной" и встроенной DLL на двух различных уровнях. Если у вас во вкладке Applications установлены Default Settings, то изменения, которые вы сделаете, коснутся всех приложений. Либо можно изменить глобальные установки на уровне отдельного приложения, добавив это приложение и выбрав его во вкладке Applications.

Чтобы добавить заменяющий файл FOO.DLL, впишите "FOO" в поле, озаглавленное New override for library (Новая замена для библиотеки), и нажмите кнопку Add (Добавить). Чтобы изменить поведение DLL, нужно выбрать ее из поля Existing overrides: (Существующие замены) и нажать Edit. По умолчанию, первой будет загружена "родная" Виндовская, второй - встроенная в Wine (Native then Builtin ). Можно также выбрать только "родную", только встроенную, или отключить обе.

3.1.2.2. По поводу системных DLL
Команда Wine решила, что необходимо создать поддельные DLL файлы, чтобы обмануть многие программы, проверяющие только наличие файла, чтобы убедиться, что определенное свойство (такое как Winsock и его TCP/IP networking) теоретически доступно. Если для вас встала эта проблема, создайте в сконфигурированной директории c:\windows\system32 пустые файлы с соответствующими именами, чтобы программа думала, будто они на месте, а встроенные в Wine DLL будут загружены, когда программа действительно их запросит. (К сожалению, инструмент wineinstall не создает такие пустые файлы самостоятельно).

Иногда приложения пытаются выяснить версию ресурса непосредственно из физического файла (скажем, чтобы узнать версию DirectX). Файлы пустышки в этом случае не помогут. В таком случае необходимо установить файлы с полным кодом версии. Эта проблема уже решена для многих файлов. Если нет, то вы опять должны скопировать "родной" DLL файл, чтобы обмануть программу.

Естественно, что существуют DLL, которые Wine еще не реализовала должным образом (или вовсе). Если под рукой нет настоящей Windows, с которой можно скопировать DLL, всегда можно получить файл с сайтов, содержащих архивы Windows DLL, которые вы найдете при помощи поисковых машин. Пожалуйста, соблюдайте правила лицензирования для тех файлов DLL, которые вы выбираете; некоторые распространяются без ограничений, некоторые нет.

3.1.2.3 Отсутствующие DLL
В случае, если Wine жалуется на отсутствие DLL, нужно проверить, является ли этот файл "официальным" DLL, или принадлежит программе, которую вы пытаетесь запустить. Это можно сделать, проведя в Интернете поиск по имени файла. После того, как вы "засекли" DLL, надо еще убедиться, что Wine сможет его использовать. Поиск DLL обычно производится в следующем порядке:

1.Директория, откуда программа была запущена.

2.Текущая (рабочая) директория.

3.Системная папка Windows.

4 Папка Windows.

5 Директории переменной PATH.

Вкратце: либо поместите нужный DLL в каталог вашей программы (может быть неудобно), либо поместите его в системную папку Windows. По возможность избегайте "родных" DLL на базе NT, так как в Wine поддержка NT API во много слабее, чем поддержка Win9x API (порой приводящая к более плохой совместимости с NT DLL, чем даже с не-Windows схемами!).

3.1.3 Графические настройки (Graphics Settings)

Имеется пять различных базовых настроек, которые можно конфигурировать. Для большинства людей достаточно и установок по умолчанию.

Первые несколько настроек имеют отношение в основном к играм и являются самоочевидными. Возможно запретить курсору мыши покидать пределы окна программы DirectX (т.е. игры). По умолчанию эта опция включена. Существует много причин сделать это, не последней из которых является тот факт, что проще играть, когда курсор заключен в меньшей площади. Другой резон подключить эту опцию - лучший контроль над мышью. Wine искажает позицию мыши, чтобы имитировать работу Windows. Подобным образом, "desktop double buffering" производит сглаживающие обновления экрана, отчего игры выглядят лучше; опять-таки, по умолчанию опция включена. Это компромисс повышенному потреблению памяти.

Может оказаться полезным эмулировать виртуальный рабочий стол. В этом случае все программы будут запускаться в отдельном окне. Это может помочь выявить глючные игры, которые изменяют разрешение экрана (возможно неудачно). Заключение их в окно может привести к лучшему контролю над ними, возможно ценой меньшего удобства. Можно попробовать размеры 640x480 (по умолчанию) или 800x600.

И последнее, можно изменить некоторые установки Direct3D. По большей части эти установки определяются автоматически, но вы можете заставить их вести себя определенным образом. Некоторые игры пытаются проверять систему на предмет поддержки тех или иных свойств. Выключив это поведение, Wine не будет сообщать о способности формировать изображение определенным образом. Это может привести к повышению скорости игры ценой качества графики; а может быть, игра вовсе не будет работать.

3.1.4. Настройки дисков

Windows подразумевает довольно жесткую схему обозначения дисков, которую имитирует Wine. Большинство людей знакомы со стандартной схемой: "A:" - представляет флоппи диск, "C:" - представляет первичный системный диск, etc. Wine использует ту же концепцию и размечает диски согласно основной "родной" файловой системе.

Разметка дисков в Wine относительно проста. В Winecfg во вкладке Drives вы видите кнопки для добавления и удаления нужных дисков. Когда вы выбираете "добавить диск" создается новая строка и появляется схема обозначения дисков по умолчанию. Можно изменить адрес, на который указывает данный диск, сделав изменения в поле Path. Если вы сомневаетесь в правильности Пути, нажмите кнопку "Browse" чтобы найти правильный Путь. Удалить диск можно, выделив нужный, и нажав "Remove".

Winecfg может автоматически определить диски, доступные на вашей системе. Рекомендуется попробовать автоматический способ, прежде чем пытаться разметить диски вручную. Простым нажатием на кнопку Autodetect вы заставляете Wine искать диски в вашей системе.

Очень интересно настраивать диски, не прибегая к Winecfg, это замечательно просто. Все настройки дисков находятся в директории ~/.wine/dosdevices. Каждый диск - это просто симлинк к месту, где он в действительности находится. Wine автоматически устанавливает два диска во время первого запуска:

$ ls -la ~/.wine/dosdevices/
lrwxrwxrwx 1 wineuser wineuser 10 Jul 23 15:12 c: ->../drive_c
lrwxrwxrwx 1 wineuser wineuser 1 Jul 23 15:12 z: -> /

Чтобы добавить еще диск, например CD-ROM, просто создайте еще один линк, указывающий на него:

$ ln -s /mnt/cdrom ~/.wine/dosdevices/d:

Обратите внимание на то, что в ссылках используется принятая в DOS система именования дисков - буква со знаком двоеточия, например, "a:". Так что, если линк к вашему диску c: указывает на ~/.wine/drive_c, вы можете понимать ссылки на c:\windows\system32 как ~/.wine/drive_c/windows/system32.

3.1.5 Аудио настройки

Wine может работать с весьма немногими звуковыми субсистемами, которые вы можете выбрать во вкладке "Audio". Winecfg выявит все доступные драйверы, но выбрать тот, что будет использоваться, вы можете вручную. Старые дистрибутивы Линукс, использовавшие ядро 2.4, обычно применяли "OSS" драйвер. Ядра 2.6 переключились, в большинстве случаев, на "ALSA". Драйвер "aRts" был недавно выведен из работы, из-за общей нехватки поддержки субсистемы "aRts". Если вы используете GNOME, можете попробовать EsounD. OSS и ALSA аудио драйвера наиболее проверены, так что рекомендуется остановить свой выбор на них, если возможно. Если вам нужны "Jack", "NAS" или "CoreAudio", то, скорее всего, вы сами знаете почему.

Настройки DirectSound в основном используются в играх. Вы можете выбирать степень ускорения "железа", но для большинства прекрасно подойдет "Full" (Полное).

3.1.6 Компоновка рабочего стола

Wine может загружать темы Windows, если они у вас есть. Хотя никакой необходимости, с точки зрения работы Wine или приложений, в этом нет, это позволяет вам создавать привычный облик программы. Wine поддерживает новые MSStyles темы. В отличие от старых Microsoft Plus! style тем, механизм uxtheme поддерживает специальные.msstyles файлы, которые могут изменять все настройки Windows. Это примерно то же самое, что большинство Линукс десктопов умеет делать уже много лет. Если желаете попробовать, то делайте так:

1. Загрузите тему Windows XP. Убедитесь в наличие.msstyles файла.

2. Создайте цепочку директорий в своем ложном Windowsовском диске:

$ mkdir -p ~/.wine/drive_c/windows/Resources/themes/имя_темы

3. Переместите файл.msstyles в директорию /name-of-your-theme

4. При помощи вкладки Desktop Integration в winecfg выберите новую тему.

3.2 Использование Реестра и программы Regedit

Все настройки, производимые с помощью Winecfg, за исключением настройки дисков, в конце концов сохраняются в Реестре. В ОС Windows, это центральное хранилище настроек, как отдельных приложений, так и самой операционной системы. Wine подобным же образом использует Реестр, поэтому некоторые настройки, которых нет в Winecfg, могут быть изменены в Реестре. (Гораздо больше шансов за то, что вам придется "залезать" в Реестр для изменения настроек какой-нибудь программы, чем для изменения настроек самой Wine).

Сам факт того, что Wine использует Реестр для сохранения настроек, является дискуссионным. Некоторые утверждают, что это слишком похоже на Windows. Чтобы возразить на это, нужно принять во внимание несколько моментов. Во-первых, невозможно обойтись без Реестра просто потому, что приложения "рассчитывают" сохранить свои настройки именно там. Для того чтобы Wine мог хранить и иметь доступ к настройкам в отдельном конфигурационном файле, потребуется отдельный набор программ, в основе своей делающий то же, что Win32 API, что Wine и делает. И, наконец, в отличие от Windows, Реестр Wine написан простым текстом и может быть изменен в любом текстовом редакторе. И вот, хотя большинство нормальных системных администраторов (и разработчиков Wine), ругаются как бешеные на запутанный Реестр Windows, все же необходимо, чтобы Wine каким-то образом поддерживал его.

3.2.1 Структура Реестра

Хотя это нам не совсем по пути, давайте немного углубимся в структуру реестра и посмотрим, как он устроен. Реестр Windows - это замысловатая древовидная структура, и даже лучшие Windows программисты не всегда знают, как он распланирован, со своими различными "ульями" ("hives") и бесконечными ссылками между ними; полное описание не входит в возможности данного документа. Но вот основные ключи Реестра вы теперь должны знать:

HKEY_LOCAL_MACHINE

Этот фундаментальный корневой ключ (в win9x он хранится в скрытом файле system.dat) содержит все, имеющее отношение к данной инсталляции Windows. Часто сокращается до HKLM.

Этот фундаментальный корневой ключ (в win9x он хранится в скрытом файле user.dat) содержит информацию о каждом пользователе в данной инсталляции.

HKEY_CLASSES_ROOT

Это линк к HKEY_LOCAL_MACHINE\Software\Classes. Там хранится информация, описывающая вещи вроде ассоциаций файлов, OLE (Object Linking and Embedding) - управление документами, и классы COM (технология COM - стандарт Микрософт).

HKEY_CURRENT_USER

Это линк к HKEY_USERS\your_username, то есть к вашей персональной конфигурации.

3.2.2. Файлы реестра Wine

Теперь вы, возможно, задумались, каким образом перевести все это в структуры Wine. Планировка реестра, описанная выше, "проживает" в трех различных файлах в директории ~/.wine: system.reg Этот файл содержит HKEY_LOCAL_MACHINE. user.reg Этот файл содержит HKEY_CURRENT_USER. userdef.reg Этот файл содержит HKEY_HKEY_USERS\.Default (то есть установки пользователя по умолчанию). Эти файлы автоматически создаются программой wineprefixcreate во время первого запуска Wine. Набор основных установок сохраняется в файле c:\windows\inf\wine.inf и обрабатывается программой rundll32.exe. Когда вы впервые запускаете Wine, файл rundll32.exe подвергается процессу заполнения данными первоначального реестра. Чтобы ознакомиться с деталями, просмотрите скрипт wineprefixcreate и увидите, как все это делается. После обновления Wine wineprefixcreate снова может быть использован для обновления строк реестра по умолчанию.

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

3.2.3. Как пользоваться Regedit

Проще всего получить доступ и изменить Реестр при помощи инструмента regedit. Так же как одноименная Windows программа, которую он замещает, regedit предназначен для просмотра реестра на системном уровне, содержащем все его ключи. Просто запустите regedit, и он откроется. Вы сразу заметите, что таинственные ключи, представленные в текстовом файле, организованы иерархическим образом.

Чтобы перемещаться по реестру, кликните на ключах в левой части панели, чтобы "погрузиться" на следующий уровень глубины. Чтобы удалить ключ, кликните на нем и в меню Edit выберите "Delete". Чтобы добавить ключ или значение, определите место, где вы хотите поместить его, и выберите "New" из меню Edit. Чтобы изменить существующий ключ, выделите его в правой панели и выберите "Modify" из меню Edit. Другой способ проделать то же самое, это щелчок правой кнопкой мыши на ключе или значении.

Особый интерес для пользователей Wine представляют установки в HKEY_CURRENT_USER\Software\Wine. Большинство настроек, что вы сделали при помощи winecfg, записаны именно в этот участок реестра.

3.2.4. Подсказки для системного администратора

Используя вышеописанную файловую структуру, можно настроить систему так, чтобы системная инсталляция Wine (с приложениями) могла быть общей для всех пользователей, и с то же время позволять каждому пользователю иметь свою конфигурацию. Администратор может, установив Wine и все необходимые для пользователей Windows приложения, затем скопировать получившийся файл system.reg и другие в файлы глобального реестра (которые, как мы договорились, находятся в /usr/local/etc), при помощи команд:

cd ~root/.wine
cp system.reg /usr/local/etc/wine.systemreg

ln -sf /usr/local/etc/wine.systemreg system.reg

Вам, возможно, придется проделать все то же самое с файлом user.reg, несмотря на то, что этот файл содержит настройки пользователей. Каждый пользователь должен иметь свою собственную копию этого файла вместе с правами на его изменение.

Необходимо обратить внимание на разметку дисков. Если вы обобществляете файл system.reg, то вы должны убедиться, что установки реестра совместимы с разметкой дисков в файлах ~/.wine/dosdevices каждого пользователя. Возьмите за правило, что, чем более ваша разметка дисков совпадает с таковой по умолчанию, созданной программой wineprefixcreate, тем легче ваша задача. Вы можете и не суметь сделать общими все диски "c:", в которые вы первоначально устанавливали приложения. Некоторые приложения требуют возможности записать определенные настройки на диск, особенно приложения для Windows 95/98/ME.

Имейте в виду: если вы устанавливали Wine из исходников как суперпользователь, скрипт tools/wineinstall, которым вы пользовались при установке, больше не работает.

И последнее слово предупреждения: следите, что вы делаете с аккаунтом администратора. Если вы скопируете (или дадите линк) реестр администратора в глобальный реестр, то любой пользователь сможет читать настройки администратора, что плохо, если там содержится важная информация о паролях, персональная информация и прочее. Используйте аккаунт администратора только для установки программ, а не для ежедневной работы, ее нужно делать под обычным аккаунтом.

3.2.5. Полный список ключей реестра

Самый обновленный список употребительных ключей и значений вы найдете на странице developer"s wiki .

3.3. Прочие аспекты, поддающиеся настройке

Этот раздел содержит все остальные вещи, которые могут быть настроены. Он также служит собранием подсказок и хитростей, чтобы выжать все возможное из использования Wine.

3.3.1. Последовательные и параллельные порты

Последовательные и параллельные порты настраиваются почти как диски - просто создается символическая ссылка в директории ~/.wine/dosdevices с именем устройства. В Windows последовательные порты принято называть "com" с добавлением номера, например: com1, com2, etc. Аналогично параллельные порты называются "lpt" с добавлением номера, например: lpt1. Вам следует связывать их напрямую ссылками с соответствующими устройствами Unix, такими как /dev/ttyS0 и /dev/lp0. Для примера, чтобы настроить один последовательный и один параллельный порт запустите следующие команды.

ln -s /dev/ttyS0 com1
ln -s /dev/lp0 lpt1

3.3.2. Совместные сети

Сетевые ресурсы Windows могут быть распланированы в директории unc/, так что все, что должно быть в \\myserver\some\file, будет находиться в ~/.wine/dosdevices/unc/myserver/some/file/. Например, если вы используете Samba чтобы смонтировать \\myserver\some на /mnt/smb/myserver/some, то вам следует выполнить команду:

ln -s /mnt/smb/myserver/some unc/myserver/some

чтобы сделать их доступными в Wine (только не забудьте создать директорию unc, если таковой не существует).

3.3.3. Шрифты

Настройка шрифтов, когда-то серьезная проблема, теперь решается намного проще. Если у вас в Windows есть набор TrueType шрифтов, то просто нужно скопировать все.ttf файлы в c:\windows\fonts.

3.3.4. Принтеры

Wine может взаимодействовать напрямую с вашей печатающей системой CUPS (система печати Юникс) и находить принтеры, доступные системе. Настройка принтеров в Wine сводится к тому, чтобы убедиться, что CUPS работает. Тем не менее, Wine нуждается в команде lpr (от CUPS), когда нужно распечатать какой-либо документ.

Если вы не пользуетесь CUPS, то применяется старая BSD-Printing система печати:

Все принтеры из файла /etc/printcap автоматически устанавливаются в Wine.

Wine требует PPD-File для каждого из принтеров (generic.ppd входит в состав Wine)

Для распечатки документа запускается команда lpr.

3.3.5. Сканеры

В ОС Windows, сканеры используют TWAIN API для доступа к соответствующим устройствам. Встроенный в Wine TWAIN DLL просто пересылает эти запросы на Linux SANE библиотеки. Итак, чтобы воспользоваться сканером под Wine, сначала нужно убедиться, что можете получить к нему доступ через SANE. После этого, нужно убедиться, что у вас есть xscanimage пригодный к использованию. Сейчас xscanimage входит в sane-frontends пакет, но может оказаться не установленным на вашем дистрибутиве. Вообще, доступ к сканерам и сегодня изобилует проблемами. Если у вас случайно сканер заработает, пожалуйста, обновите этот раздел Руководства пользователя Wine, подробно описав детали использования SANE с Wine.

3.3.6. Базы данных ODBC

Система Open DataBase Connectivity interface (открытый интерфейс взаимодействия с базами данных в Windows) также как и система печати, спроектирована, чтобы переключиться на Юникс систему на высоком уровне. Вместо того чтобы проверять работают ли Windows коды под Wine, она использует подходящий Юникс ODBC провайдер, такой как UnixODBC. Таким образом, если вы настроили Wine использовать встроенный odbc32.dll, этот Wine DLL будет взаимодействовать с вашим Unix ODBC пакетом, позволяя ему работать. Если же вы настроили Wine на использование "родной" (Виндовской) odbc32.dll, он будет пытаться использовать "родные" же ODBC32 драйвера и так далее.
3.3.6.1. Настройка ODBC в Unix
Первым шагом на пути использования системы Unix ODBC с Wine, будет, конечно, настройка работы самой системы Unix ODBC. Это может потребовать установки исходников или RPM пакетов. Существует несколько Unix ODBC систем; та, к которой привык автор, называется unixODBC (с IBM DB2 драйвером). Также существует мост ODBC-ODBC, который можно использовать для получения доступа к базе данных Microsoft Access. Обычно такие системы включают инструмент, например isql, который позволит вам получить доступ к данным из командной строки, так, чтобы вы имели возможность убедиться, что система работает.

Второй шаг - переключить Unix ODBC библиотеку на встроенную в Wine odbc32 DLL. Встроенная odbc32 (в настоящее время) ищет в переменной окружения LIB_ODBC_DRIVER_MANAGER имя ODBC библиотеки. Для примера, у автора в файле.bashrc есть такая строка:

export LIB_ODBC_DRIVER_MANAGER=/usr/lib/libodbc.so.1.0.0

Если таковая переменная окружения не установлена, тогда он ищет библиотеку под названием libodbc.so, а вы можете установить символическую ссылку, чтобы приравнять ее к вашей собственной библиотеке. Например, как root, можно запустить команды:

# ln -s libodbc.so.1.0.0 /usr/lib/libodbc.so
# /sbin/ldconfig

Последний шаг настройки - это убедиться, что Wine установлена на запуск встроенной версии файла odbc32.dll, путем изменения конфигурации DLL. Эта встроенная DLL обычно работает как заглушка между вызывающей программой и Unix ODBC библиотекой.

Если у вас возникли трудности, можно воспользоваться командой WINEDEBUG=+odbc32 перед запуском Wine, чтобы проследить, что происходит. Одно предупреждение. Некоторые программы немного мошенничают и обходят библиотеку ODBC. Например, Crystal Reports engine отправляется в реестр проверять DSN (имя источника данных). Способ справиться с этим, описан на сайте unixODBC, где имеется раздел, посвященный использованию unixODBC с Wine.

3.3.6.2. Использование ODBC драйверов Windows
Говорят, что "родные" ODBC драйвера работают со многими типами баз данных, включая MSSQL и Oracle. На самом деле, только MSSQL неким образом может быть доступен с Линукса через приложение Winelib. Вместо того чтобы просто копировать файлы DLL, большинство ODBC драйверов требует применения установщика Windows типа, чтобы правильно настроить некоторые вещи, вроде ключей реестра.

Чтобы наладить поддержку MSSQL, вы сначала должны скачать и запустить инсталлятор mdac_typ.exe с сайта microsoft.com. Чтобы сформировать ODBC связи, вы затем должны запустить CLICONFG.EXE и ODBCAD32.EXE под Wine. Вы можете найти их в директории windows\system , после того как закончит работу mdac_typ. Сравните выход этих программ с выходом на настоящей Windows машине. Некоторые вещи, например протоколы, могут отсутствовать, так как они могут устанавливаться вместе с операционной системой. Если дело обстоит так, то вы можете скопировать недостающее в существующей инсталляции Windows вместе с любыми необходимыми значениями в реестре. Настоящая инсталляция Windows, подготовленная для работы с Wine, должна работать сама по себе не хуже, чем до подготовки. Вот список баз данных, удачно прошедших тестирование с Wine.

Wine - свободная открытая реализация программного интерфейса Windows. Wine - не эмулятор операционной системы или компьютера , как можно охарактеризовать, например, программы для виртуализации (VirtualBox, VmWare и т.п.), что подчеркивает и расшифровка его названия "Wine Is Not Emulator ". Wine был создан для снижения степени зависимости от деятельности и положения корпорации Microsoft , расширения сферы применения свободных операционных систем за счет возможности запуска программ для Windows .

Wine - не эмулятор

По сути, Wine - это набор библиотек и программных инструментов, позволяющий запускать программы для Windows и схожий с тем, что использует сама операционная система от Microsoft . В состав программного дистрибутива Wine так же входят программы для его настройки (), редактор реестра, пакет скриптов , файловый менеджер, "Блокнот" и т.п. Количество программ для Windows , которые сегодня уже запускаются с помощью Wine достаточно велико и постоянно растёт. По адресу http://appdb.winehq.org находится специализированная база данных с отметками о совместимости тех или иных программ с Wine . Среди полностью совместимых с Wine программ множество офисных и мультимедийных программ, программы для предприятий и организаций, "1C" в т.ч., программы для обработки графики (включая некоторые версии Adobe Photoshop и т.п.). Растёт количество поддерживаемых и изначально совместимых с Wine игр .

Поскольку эмуляции каких-либо устройств и при работе Wine не происходит, скорость работы совместимых с Wine программ при его использовании обычно не ниже, чем при работе непосредственно в Windows (а часто - выше) .

На основе, или с применением компонентов, Wine в разное время были созданы такие проекты как Cedega (ориентированный на запуск игр , в первую очередь), CrossOver (ориентированный на запуск прикладных программ ) и т.п.

Установка Wine

Пакет программного обеспечения Wine чаще всего входит в состав современных дистрибутивов Linux (Ubuntu, Mint, Debian, openSUSE и т.п.) , и для его поиска и установки Вам, скорее всего, необходимо обратиться к управлению программным обеспечением своего дистрибутива .

Apt-get install wine Для того, чтобы установить WINE , выполните в консоли от имени администратора, для Debian, Ubuntu, Mint и т.п. zypper install wine wine-gecko Для SUSE и openSUSE Linux .

Настройка Wine

Для запуска программы настройки Wine , вызовите в консоли, или диалоге быстрого вызова команд , winecfg (при необходимости используйте "WINEPREFIX "). Winecfg настраивает внешний вид Windows-программ например, даёт возможность сменить версию набора библиотек Windows (2000, XP, 2003, Vista , ...) и т.п.

Winetricks - дополнительные настройки, компоненты и программы

Winetricks - это набор скриптов, написанный разработчиками Wine и сообществом, для облегчения внесения изменений в некоторые скрытые настройки Wine, установки некоторых дополнительных системных библиотек (DirecX и т.п.) и популярных программ для Windows, включая Internet Explorer (IE ), несколько демо-игр и т.п. . Winetricks обычно входит в состав дистрибутива Wine. Для запуска основного диалогового окна Winetricks выполните в консоли , или диалоге быстрого вызова команд (комбинация клавиш "Alt+F2 "), команду "winetricks ". Вы так же можете пользоваться командами вида winetricks directx9 в консоли, где "directx9" - имя устанавливаемого компонента. Для просмотра списка категорий компонентов, предлагаемых Winetricks к установке , можно вызвать команду winetricks list , а для обзора списков содержимого самих категорий - winetricks apps list , где "apps" - имя нужной категории.

Запуск программ Windows в Wine

Способ запуска программ в Wine типичен для работы с любыми файлами, будь то изображение, текстовый файл или исполняемый exe-файл в нашем случае: Вы можете просто запустить исполняемый файл Windows (*.exe) из своего файлового менеджера (двойным щелчком, например), или выполнить в консоли команду вида wine ~/Загрузки/программа.exe . Вы так же можете запускать программы Windows через внутренние пути Wine , если они находятся в директориях, монтируемых как системные диски при запуске необходимого профиля ("префикса") Wine (будь то стандартные "~/.wine/drive_c", или любые другие папки, настроенные Вами). В этом случае используется DOS-формат адреса программы wine C:\\Program\ Files\\programm.exe .

Обратный слэш "\" добавляется перед специальными символами, такими как тот же обратный слеш или пробел.

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

Для установки программы Windows , Вам, соответственно, понадобится запустить её установщик : wine setup.exe Далее Вам будет необходимо пройти стандартную процедуру установки программ для Windows , которая чаще всего заключается в многократном нажатии кнопки "Далее". Одна из интереснейших функциональных особенностей Wine заключается в возможности использования профилей, или так называемых "префиксов ", для установки программ - независимых копий наборов системных библиотек, программ и настроек Windows . Стандартным префиксом Wine , т.е. папкой в которую записывается профиль по-умолчанию, является ".wine" - скрытая папка внутри домашней директории пользователя. Чтобы использовать отдельный "префикс" , Вам необходимо создать для него новую папку (для сброса профиля - удалите её содержимое ) и использовать экспорт глобальной переменной WINEPREFIX (можно как часть команды запуска программы Windows, для установщиков в т.ч.) . Например WINEPREFIX="/home/user/.wine-programm" wine setup.exe . Для установленных программ Wine создаёт ярлыки в локальном пользовательском (~/.local/share/applications/) меню рабочего стола (Gnome, KDE, XFCE и т.п.), используя необходимые префиксы .



Понравилась статья? Поделиться с друзьями: