У Wine 8.14 виправлено 30 помилок і внесено близько 500 змін

Wine на Linux

Wine — це повторна реалізація інтерфейсу прикладного програмування Win16 і Win32 для операційних систем на базі Unix.

Кілька днів тому було оголошено випуск нової версії розробки «Wine 8.14», який з моменту випуску версії 8.13 було закрито 30 звітів про помилки та внесено 475 змін.

Для тих, хто не знає про вино, вони повинні це знати це популярне безкоштовне програмне забезпечення з відкритим кодом що дозволяє користувачам запускати програми Windows на Linux та інші операційні системи, подібні до Unix. Щоб бути трохи більш технічним, Wine - це рівень сумісності, який переводить системні дзвінки з Windows на Linux і використовує деякі бібліотеки Windows у вигляді файлів .dll.

Основні новини Wine 8.14

У цій новій версії, яка представлена ​​з версії розробки Wine 8.14, однією з її головних новинок є те, що у macOS тепер використовується структура PCSC для підтримки смарт-карт.

Ще одна зміна, яка виділяється, полягає в тому, WoW64, рівень для запуску 32-розрядних програм у 64-розрядній Windows, виправляє проблеми з механізмом віконних повідомлень.

Крім цього, бібліотека ім gdiplus додає можливість конвертувати 1, 4 та 8-бітні формати індексованих пікселів на канал, а можливість створювати дампи файлів реєстру Windows NT (REGF) реалізована в утиліті WineDump.

З боку звіти про помилки закрито із програмами та іграми в цій новій версії Wine 8.14, проблеми з DiRT 2, Candytron, The Settlers II: 10th Anniversary, Civilization 6, Freelancer із модом Crossfire, Spider-Man: Shattered Dimensions, Warframe, Steam client, Yuzu і багато іншого

Що стосується виправлені помилки у цій новій версії:

  • Windedbg іноді отримує неправильні параметри
  • Пересилання статусу виходу Cygwin/MSYS2 `script -e` випадково повертає нуль для ненульових дочірніх процесів
  • ws2_32:sock – test_connect() періодично завершується помилкою з помилкою «Тест не вдалося: очікуваний час очікування».
  • переповнення стека під час виконання GdipFlattenPath
  • advapi32:registry – test_performance_keys() іноді не працює, тому що час біжить у зворотному напрямку!
  • ws2_32:sock – test_close_events() іноді не працює у Wine
  • ws2_32:sock – test_empty_recv() іноді викликає помилку ERROR_IO_PENDING у Wine
  • ws2_32:sock – DuplicateHandle(socket) іноді виглядає як сокет у
  • test_WSAGetOverlappedResult() у Windows
  • ws2_32:sock – test_write_watch() отримує неочікувану кількість записів у Windows 11
  • Winetricks: переконайтеся, що dotnet20 (AutoHotKey) не працює на збірці wow64
  • GStreamer gst_init_check() дає збій під час виклику з Winegstreamer на останніх версіях macOS, Wine також не працює на macOS Sonoma
  • ieframe:webbrowser – test_SetQueryNetSessionCount() іноді отримує неочікувану кількість сеансів у Windows
  • httpapi:httpapi – test_v2_bound_port() іноді правильно підключається у Windows 10
  • amstream: amstream виходить з ладу та систематично завершує роботу на gitlab-debian-32
  • gdi32:dc – print_something() отримує неправильний підпис на fg-deb64-*
  • ntdll:file – 64-розрядна функція test_file_disposition_information() отримує непідтримувану помилку в Windows 10 1607 і 1709

В кінці кінців якщо ви хочете дізнатися більше про це про випущену нову розробну версію Wine можна переглянути в журналі зміни в наступному посиланні. 

Як встановити версію для розробки Wine 8.14 на Ubuntu та похідні?

Якщо ви зацікавлені в можливості протестувати цю нову версію розробки Wine на своєму дистрибутиві, ви можете зробити це, дотримуючись інструкцій, якими ми ділимося нижче.

Першим і найважливішим кроком буде увімкнення 32-розрядної архітектури, що, хоча наша система є 64-розрядною, виконання цього кроку позбавляє нас багатьох проблем, які зазвичай виникають, оскільки більшість бібліотек Wine зосереджені на 32-розрядній архітектурі.

Для цього ми пишемо про термінал:

sudo dpkg --add-architecture i386

Зараз ми повинні імпортувати ключі та додати їх до системи за допомогою цієї команди:

wget -nc https://dl.winehq.org/wine-builds/Release.key
sudo apt-key add Release.key

Зробив це зараз ми збираємось додати наступне сховище до системи, для цього ми пишемо в терміналі:

sudo apt-add-repository "deb https://dl.winehq.org/wine-builds/ubuntu/ $(lsb_release -sc) main"
sudo apt-get update sudo apt-get --download-only install winehq-devel
sudo apt-get install --install-recommends winehq-devel
sudo apt-get --download-only dist-upgrade

Нарешті ми можемо перевірити, чи у нас уже встановлено Wine, а також яку версію ми маємо в системі, виконавши таку команду:

wine --version

Як видалити Wine з Ubuntu або якогось похідного?

Нарешті для тих, хто хоче видалити цю розробну версію Wine зі своєї системи з будь-якої причини, Вони повинні виконувати лише такі команди.

Видаліть версію для розробки:

sudo apt purge winehq-devel
sudo apt-get remove wine-devel
sudo apt-get autoremove