Wine 11.15 вышел : в новой версии слоя совместимости появились сборки ARM64EC в режиме MinGW и локальная проверка подлинности NTLM. В реализацию BCrypt добавлены дополнительные алгоритмы формирования ключа, в WindowsCodecs – новые преобразования форматов изображений. Закрыт 41 отчёт об ошибках – от неправильного поведения мыши в Steam до зависаний WinSCP после изменения размера окна. Отдельно устранены регрессии, появившиеся примерно в выпуске 11.13, включая аварийные завершения 32-битных программ.
Сборки ARM64EC в режиме MinGW
Главное изменение выпуска – поддержка сборок ARM64EC в режиме MinGW. Этот двоичный интерфейс, разработанный в Microsoft, позволяет собственному коду ARM64 и компонентам x64 сосуществовать в пределах одного приложения.
ARM64EC – двоичный интерфейс приложения (ABI) для Windows 11 на устройствах с процессорами Arm. Код, собранный как ARM64EC, выполняется с собственной производительностью и при этом взаимодействует в одном процессе с кодом x64, который работает через встроенную в систему эмуляцию. Подробное описание приведено в документации Microsoft.
Локальная проверка подлинности NTLM
Второе заметное дополнение – локальная проверка подлинности NTLM. Протокол остаётся востребованным: на него по-прежнему опираются многие приложения и службы Windows.
NTLM (Windows Challenge/Response) – протокол проверки подлинности с зашифрованным обменом по схеме «запрос – ответ», при котором пароль по сети не передаётся. Применяется для проверки подлинности пользователей и компьютеров как в домене Windows, так и на автономных системах. Описание протокола есть в документации Microsoft.
Алгоритмы формирования ключа в BCrypt и преобразования в WindowsCodecs
Реализацию BCrypt пополнили дополнительными алгоритмами функции формирования ключа. Какими именно – в анонсе не перечислено.
Правки затронули и WindowsCodecs, компонент для работы с графическими форматами: список поддерживаемых преобразований форматов изображений расширен.
Мышь в Steam и зависания Mugen, Touhou 8 и WinSCP
Из прикладных правок заметнее прочих исправление неправильного поведения мыши в Steam. Устранены зависания ещё нескольких программ: Mugen, Touhou 8, Final Burn Neo, а также WinSCP после изменения размера окна.
Выцветшие цвета в OpenGL и полноэкранный режим 4:3 в Wayland
В приложениях OpenGL исправлена передача выцветших цветов. Отдельно поправлена ошибка в связке Wayland и EGL: из-за двойного преобразования sRGB в буфере кадра по умолчанию картинка на выходе тоже оказывалась блёклой.
Ещё одна правка для Wayland касается полноэкранных приложений с фиксированным разрешением и соотношением сторон 4:3. Содержимое таких приложений смещалось, а вокруг него оставались поля неопределённого размера.
Аварийные завершения 32-битных программ после Wine 11.13
Часть исправлений относится к регрессиям, появившимся примерно в выпуске 11.13. Среди них аварийные завершения нескольких 32-битных программ, включая собственные утилиты winecfg и regedit, и неверные размеры диалоговых окон в IrfanView и WinSCP при определённых значениях DPI.
Игры: от Lemmings Revolution до MapleStory
Игровая часть списка исправлений:
- аварийное завершение при выходе из Lemmings Revolution;
- ошибки отрисовки в демоверсии Tom Clancy's Rainbow Six: Lockdown;
- неправильная обработка правой клавиши Shift в Final Fantasy XI Online;
- отказ при запуске MapleStory.
Установщики Adobe CS6, QuickBooks и WordPerfect 7
Со стороны приложений исправлены:
- старые пробные установщики Adobe CS6, которые не проходили инициализацию;
- установщик QuickBooks Simple Start 2009;
- установка WordPerfect 7;
- зависания KakaoTalk;
- аварийные завершения Pegasus;
- неверные координаты указателя мыши в YNAB 4.
Правки в MSXML3, shell32, GDI+ и запросах WMI
Остальные изменения совместимости распределены по компонентам: поведение MSXML3, обработка командной строки Windows, shell32, GDI+, запросы WMI через PowerShell Core и Mono, структурированное хранилище OLE, работа консоли, а также низкоуровневые правки синхронизации и архитектуры.
Заключение
Wine 11.15 относится к ветке разработки, поэтому переходить на него со стабильной ветки стоит ради конкретной правки из списка, а не по умолчанию. Владельцам устройств на Arm полезны сборки ARM64EC в режиме MinGW, корпоративным пользователям – локальная проверка подлинности NTLM, всем остальным – графические исправления для Wayland и OpenGL. Исходный код опубликован на странице выпуска в GitLab, полный перечень изменений приведён в анонсе проекта. Двоичные пакеты для дистрибутивов Linux выйдут в штатных каналах загрузки.