вышел Wine 11.11 – очередной экспериментальный выпуск слоя совместимости для запуска Windows-приложений и игр в Linux, macOS и других Unix-подобных системах. Главное изменение версии – переход со встроенной криптографической библиотеки TomCrypt на SymCrypt от Microsoft. В драйвере Wayland добавили поддержку прозрачности и непрямоугольных окон (layered windows) для приложений, использующих эти возможности без X11. Всего в выпуске устранили 25 ошибок, в том числе в играх и установщиках.
Замена TomCrypt на SymCrypt и перенос данных USER32
В Wine 11.11 встроенную библиотеку TomCrypt заменили на SymCrypt от Microsoft. С переходом на новую библиотеку криптографические примитивы Wine стали ближе к поведению Windows.
SymCrypt – открытая криптографическая библиотека Microsoft с набором примитивов, совместимых с поведением Windows.
Также в выпуске продолжили перенос данных об окнах из системного компонента USER32 в разделяемую память. USER32 – одна из ключевых библиотек Windows, отвечающая за управление окнами и работу пользовательского интерфейса.
Прозрачность и непрямоугольные окна в драйвере Wayland
Поддержку Wayland в этом выпуске расширили: в драйвере winewayland.drv реализовали прозрачность и непрямоугольные окна. В терминах Windows этот механизм называется layered windows; он нужен приложениям с полупрозрачными окнами и окнами произвольной формы при работе без X11.
Layered windows – механизм Windows для создания полупрозрачных окон и окон произвольной формы за счёт альфа-смешивания (расширенный стиль окна WS_EX_LAYERED).
В этом же выпуске повысили совместимость с VBScript.
Исправления для Battle.net, Total War и других игр
Среди устранённых ошибок – проблемы в играх и установщиках:
- Battle.net – исправлен установщик, сокращено время запуска;
- Total War: Shogun 2 – устранены сбои при использовании встроенного компонента d3dx9_42;
- Wreckfest – исправлено размытое изображение при отрисовке через OpenGL;
- Gray Matter – восстановлен звук;
- Istaria – устранена регрессия, из-за которой с Wine 11.10 не появлялось окно игры;
- Marvel's Spider-Man Remastered – снято требование наличия Windows 10 версии 1909 (сборка 18363) или новее;
- Yesterday Origins – исправлено воспроизведение видео;
- Space Empires V – исправлена загрузка изображений;
- winmine.exe – исправлено масштабирование по DPI.
Исправления для Foxit, Guitar Pro и uTorrent
Отдельная часть правок касается прикладных программ:
- uTorrent 3.x – исправлена отрисовка списков;
- диалог открытия файла – восстановлено отображение файлов, имена которых начинаются с точки;
- Foxit Reader и Foxit PhantomPDF – устранены сбои;
- Think or Swim – устранены сбои при запуске;
- Guitar Pro – устранены визуальные задержки и задержки отклика;
- MS Money 2000 – исправлены ошибки загрузки компонентов OCX;
- Sunlogin – устранены сбои из-за нереализованной функции ADVAPI32;
- uSimmics – устранены сбои из-за нереализованной функции MSVCP100.
Системные исправления: USB HID и Redshift
Ещё несколько исправлений относятся к работе с устройствами и системному уровню:
- улучшена идентификация USB-устройств HID;
- исправлено поведение функции SetupDiEnumDeviceInfo;
- устранена регрессия в многопоточных приложениях;
- устранены временные помехи в работе инструментов регулировки цветовой температуры, например Redshift.
Заключение
Wine 11.11 – промежуточный выпуск ветки разработки, поэтому главное в нём – переход на SymCrypt и развитие драйвера Wayland, а не отдельные исправления. Для пользователей выпуск означает более точную работу части игр и приложений в Linux и macOS, а для тех, кто работает без X11, – корректную прозрачность окон. Готовые пакеты для поддерживаемых дистрибутивов появятся в репозиториях проекта; подробности перечислены в анонсе выпуска, а исходный код доступен на странице проекта на GitLab.