Множество программ работает под WINE вообще без каких-либо дополнительных настроек. К сожалению, так бывает не всегда. К тому же программы постоянно обновляются и список работающих приложений постоянно меняется. Поэтому было бы неплохо настроить WINE для работы с потенциально проблемными программами.
1. Введение
Для настройки есть две основные утилиты – 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.
Также здесь есть опция “Folders”. Она позволяет менять привязки ваших директорий в /home к их эквивалентам Windows. Обычно всех устраивают установки по умолчанию.
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, вы сможете добиться практически нативного уровня производительности для многих программ.