Дополнительные инструменты Wine

Wine — это свободное программное обеспечение для запуска Windows-приложений на нескольких POSIX-совместимых операционных системах, включая Linux, macOS и BSD. Название W.I.N.E. — рекурсивный акроним и расшифровывается «Wine Is Not Emulator» — «W.I.N.E. — это не эмулятор». Имеется в виду, что Wine — это не эмулятор компьютера или виртуальная машина, как, например, qemu, VirtualBox и другие подобные им. Вместо этого Wine — это альтернативная, свободная реализация Windows API (Windows Native Environment).

Окружение

  • МСВСфера 9 Сервер.

  • МСВСфера 9 АРМ.

Winetricks

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

Для установки winetricks через «Терминал» выполните команду:

$ sudo dnf install winetricks

Чтобы открыть диалоговое окно программы для работы в графическом режиме, необходимо выполнить команду:

$ winetrick

Окно Winetricks выглядит так:

Winetricks

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

Winetricks префикс

Чтобы установить пакеты через «Терминал» нужно выполнить следующую команду:

$ winetricks <название пакета>

Чтобы отобразить все установленные пакеты введите команду:

$ winetricks dlls list

Для вывода списка всех компонентов, которые уже установлены в текущем Wine-префиксе, выполните команду:

$ winetricks list-installed

Для вывода списка доступных категорий компонентов (например, приложения, шрифты, библиотеки DLL и т.п.) выполните команду:

$ winetricks list

Для вывода доступных компонентов в категории «Приложения»» выполните команду:

$ winetricks apps list

Для получения полного списка опций для команды winetricks, их описания и названий выполните:

$ winetricks --help

Пакет Dotnet

Для установки пакета в графическом режиме необходимо запустить winetricks.

При открытии окна выбрать пункт меню, установленный по умолчанию, затем необходимо выбрать пункт «Установить библиотеку DLL или компонент Windows». В списке приложений следует выбрать пакет для установки в зависимости от того, какая версия необходима, и нажать «ОК».

установка dotnet

Пакет Mono

Mono — программная платформа, позволяющая разработчикам достаточно просто создавать развитые кроссплатформенные приложения.

В базовом варианте Mono состоит из нескольких компонентов:

  • Компилятор языка C#;

  • Среда исполнения Mono — состоит из среды исполнения (CLI) непосредственно, компилятора среды исполнения (Just-In-Time, JIT), генератора машинного кода (Ahead-Of-Time, AOT), загрузчика сборок, сборщика мусора, подсистемы управления многопоточностью и компонентов поддержки взаимодействия между сборками и COM (или аналогами в Linux, например XCOM);

  • Базовая библиотека классов — набор стандартных классов, совместимых с классами Microsoft .NET Framework;

  • Библиотека классов Mono — набор классов, поддерживающих дополнительные функции для разработки Linux-приложений. Например, классы для поддержки Zip, OpenGL, Cairo, Gtk+.

Данный пакет устанавливается автоматически при первом запуске winecfg.

Пакет Gecko

Gecko – это свободный движок вывода веб-страниц для браузера при работе Wine в Интернете. Если Wine не работает с Интернетом и вы не запускаете браузер windows.exe, то Gecko не нужен.

Обычно при запуске приложения для работы с веб-страницами Wine автоматически ищет Gecko сначала в /usr/share/wine/gecko. Если Wine не находит архив с Gecko там, то он автоматически загружает его из Интернета, но некоторые приложения не любят ждать, пока загрузиться Gecko и зависают или вылетают.

Виртуальный рабочий стол Wine

Имитация рабочего стола Windows в Wine необходима для решения проблем, связанных с разрешением экрана, а также при сворачивании программ в Wine.

Рабочий стол можно включить через winecfg.

виртуальный рабочий стол

Запущенная программа размещается в рамках виртуального рабочего стола.

Также есть возможность запустить рабочий стол, не используя интерфейс:

$ wine explorer /desktop="desk",800x600 regedit
  • explorer — проводник Windows;

  • /desktop="desk",800x600 regedit — опции для создания рабочего стола с именем desk и разрешением 800х600, затем запустить программу regedit (редактор реестра).

Дополнительный функционал Wine

Wineconsole позволяет запускать консоль windows, в основном используется для отладки. Запускается командой:

$ wineconsole cmd

Wineserver — служба, исполняющая роль ядра Windows. Для каждого префикса запускается своя служба, что позволяет выполнять одновременно несколько программ из разных префиксов. В случаях, когда программа зависла, поможет перезапуск wineserver («жёсткая перезагрузка»):

$ wineserver -k

Или с префиксом:

$ WINEPREFIX="/home/$USER/.wine_prefix" wineserver -k
  • wineserver -d[n]: — выводит отладочную информацию, имеет 3 уровня:
    • 0 — не выводит информацию;

    • 1 — выводит основную информацию;

    • 2 — выводит полную информацию.

  • wineserver -f: — выводит сервер на передний план для упрощения отладки;

  • wineserver -p[n]: — определяет время до остановки сервера, когда все клиентские процессы завершились, что позволяет быстрее запускать приложения. По умолчанию 3 секунды, если значение n не указано, сервер будет работать вечно;

  • wineserver -w: — ожидает завершения предыдущей сессии ядра для корректного старта новой сессии.

Wineboot выполняет инициализацию, запуск и перезагрузку префикса. Также выполняет симуляцию перезапуска и завершения работы программ («мягкая перезагрузка»).

$ wineboot -r

Создание префикса через wineboot:

$ WINEPREFIX="/home/$USER/.wine_prefix" wineboot -r
  • -i — инициализировать префикс.