После года разработки и 28 экспериментальных версий в конце концов запуск стабильная версия открытой реализации API Вин32 Вин 8.0, вобравший в себя более 8600 изменений.
Ключевым достижением новой версии является завершение работ по переводу модулей Wine в формат, а также подтверждение корректной работы 5266 программ для Windows с дополнительными настройками и внешними DLL-файлами.
Основные новости Wine 8.0
В этой новой версии, которая исходит от Wine 8.0 модули в формате PE, после четырех лет работы достигнут перенос всех библиотек DLL использовать формат исполняемого файла PE. Использование PE позволяет использовать доступные для Windows отладчики и решает вопросы совместимости с различными схемами защиты от копирования, проверяющими подлинность системных модулей на диске и в памяти.
также решены проблемы с запуском 32-битных приложений на 64-битных хостах и приложения x86 в системах ARM. Из остальных задач, которые планируется решить в более поздних экспериментальных версиях Wine 8.x, выделяется перемещение модулей в интерфейс системных вызовов NT вместо совершения прямых вызовов между уровнями PE и Unix.
В дополнение к этому также подчеркивается, что реализован специальный диспетчер системных вызовов, который используется для перевода вызовов из PE в библиотеки Unix чтобы уменьшить накладные расходы при выполнении полного системного вызова NT. Например, сделанная оптимизация позволила уменьшить падение производительности при использовании библиотек OpenGL и Vulkan.
В WoW64 слои предусмотрены для всех библиотек Unix, предоставление 32-битным модулям формата PE доступа к 64-битным библиотекам Unix, что после избавления от прямых вызовов PE/Unix позволит запускать 32-битные приложения Windows без установки библиотек 32-битных Unix.
В Direct3D добавлен новый компилятор шейдеров HLSL на основе библиотеки vkd3d-shader. Также на основе vkd3d-shader подготовлены дизассемблер HLSL и препроцессор HLSL.
Со стороны устройств ввода мы можем найти значительно улучшенную поддержку контроллеров с горячей заменой, в дополнение к тому, что предлагается улучшенная реализация кода для определения игровых колес, основанная на библиотеке SDL и совместимости с эффектом обратной связи Force. при использовании игровых рулей.
Модуль также выделен WinRT Windows.Gaming.Input, который предлагается с реализацией программного интерфейса для доступа к геймпадам, джойстикам и игровым рулям.. Для нового API, помимо прочего, реализована поддержка уведомлений о горячем подключении устройств, сенсорных и вибрационных эффектов.
интернационализация
Из другие выделяющиеся изменения:
- Использование библиотеки OpenAL прекращено.
- Добавлен фильтр для чтения аудио- и видеопотоков в формате ASF (Advanced Systems Format).
- Удалена библиотека среднего уровня OpenAL32.dll, вместо которой теперь используется родная библиотека Windows OpenAL32.dll, поставляемая с приложениями.
- В Media Foundation Player улучшено определение типа контента.
- Реализована возможность управления скоростью передачи данных (Rate Control).
- Улучшена поддержка микшера и средства визуализации по умолчанию в Enhanced Video Renderer (EVR).
- Добавлена начальная реализация Writer Encoding API.
В настройках по умолчанию используется тема «Светлая». Сменить тему можно с помощью утилиты WineCfg. - Графические драйверы (winex11.drv, winemac.drv, wineandroid.drv) были преобразованы для выполнения системных вызовов уровня Unix и доступа к драйверам через библиотеку Win32u.
- Архитектура процессора печати была реализована для устранения прямых вызовов между уровнями PE и Unix в драйвере принтера.
В конце концов если вам интересно узнать об этом больше, вы можете проверить подробности в по следующей ссылке.
Как установить Wine 8.0 на Ubuntu и производные?
Для тех, кто заинтересован в возможности установить эту новую версию Wine, просто откройте терминал и введите в нем следующие команды:
-
sudo apt install libgnutls30:i386 libgpg-error0:i386 libxml2:i386 libasound2-plugins:i386 libsdl2-2.0-0:i386 libfreetype6:i386 libdbus-1-3:i386 libsqlite3-0:i386
-
sudo dpkg --add-architecture i386 wget -nc https://dl.winehq.org/wine-builds/winehq.key && sudo apt-key add winehq.key
-
sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ '$(lsb_release -cs)' main'
-
sudo apt install --install-recommends winehq-stable