Bottles, программный инструмент с открытым исходным кодом, построенный на базе wine, который помогает пользователям запускать приложения и игры Windows в Linux, предоставляя удобный графический интерфейс, только что выпустил версию 61.0, в которой представлена новая важная функция под названием Eagle.
Eagle — это новый интегрированный инструмент анализа, предназначенный для проверки исполняемых файлов Windows перед их запуском. Вместо того, чтобы полагаться на метод проб и ошибок, он выполняет многоэтапную проверку выбранного файла, чтобы определить, как он построен, какие технологии использует и какие потенциальные проблемы могут возникнуть при его запуске под Wine или Proton.
Когда Eagle обнаруживает, что исполняемый файл является установщиком или контейнерным форматом, таким как MSI, Inno Setup или сжатые лаунчеры, он автоматически выполняет глубокое Сканирование. В ходе этого процесса содержимое извлекается во временную песочницу и анализируется по отдельности, что позволяет Bottles идентифицировать фактические файлы, которые будут установлены, прежде чем пользователь запустит их.
Eagle — это новый инструмент анализа Bottles, который глубоко проверяет исполняемые файлы Windows в Linux. Кроме того, Eagle также анализирует связанные файлы в том же каталоге, такие как сопутствующие DLL, чтобы обнаружить зависимости или встроенные технологии. Чтобы избежать ложных срабатываний, он адаптирует свое поведение при работе в запутанных каталогах, таких как «Загрузки», изолируя анализ только для соответствующих файлов.
Объем обнаружения широк. Eagle идентифицирует фреймворки и среды выполнения, такие как .NET Framework и .NET Core, приложения WPF, Electron, Java и Qt. Для приложений Electron он может проверять архивы ASAR, чтобы обнаружить потенциально неподдерживаемые или жестко запрограммированные системные вызовы. Для игр Eagle обнаруживает графические API и функции, включая Vulkan, DirectX 12, трассировку лучей, DLSS, FSR и XeSS.
Все результаты представлены прозрачно. Для каждого обнаружения и рекомендации Eagle показывает как исходный файл, который запустил правило, так и точный технический контекст, такой как строки или сигнатуры, найденные внутри двоичного файла. Рекомендации, такие как использование определенного варианта Proton или Wine, сопровождаются четкими объяснениями, почему они необходимы.
Наряду с Eagle, Bottles 61 включает в себя ряд постепенных улучшений и исправлений, в том числе улучшенную обработку Gamescope, обновленные команды установки зависимостей, усовершенствования пользовательского интерфейса, расширенную поддержку терминала и обновления переводов.
Для получения дополнительной информации обо всех изменениях см. объявление или посетите журнал изменений проекта на GitHub.