Найти тему
OVERCLOCKERS.RU

Опять поломали что работало, или как я обновил Wine и получил новые проблемы с играми в Linux

Оглавление

Предисловие

Почему Linux многие не любят? У каждого найдётся множество уникальных причин, однако самая настоящая боль происходит именно тогда, когда ломают что ранее прекрасно работало...

Раньше я уже писал статью про поломанный драйвер LLVMpipe в составе MESA, похоже пришло время написать и про знаменитый Wine, что позволяет запускать Windows приложения в среде Linux.

Хотя, если честно, само существование и необходимость в таких "костылях" уже говорит многое о несостоятельности операционной системы и её экосистемы: когда тащить софт из другой экосистемы (Windows) это необходимость, а не просто какая-то забава... Ну да ладно, не будем отходить от темы Wine.

Wine...

С чего всё началось в данном случае? Я работал над новой версией дистрибутива Chimbalix Linux, и вдруг задумался, а не обновить ли Wine? Ну и начал обновлять локальный репозиторий, долго скачивал новые пакеты, часа полтора несмотря на оптоволоконный доступ к интернету, но это же вечно убогие репозитории для Linux, разве можно ожидать от них нормальной работы?

-2

Потом обновил Wine Staging с 8.12 до последней версии 9.9, и он просто не хотел нормально работать! В итоге пакетным менеджером Synaptic пытался откатить версию Wine до более старой, однако получил лишь проблемы с зависимостями, как бы не форсировал версии пакетов пакетным менеджером - всё работает через задницу в Linux:

-3

Собственно ничего нового, если бы все нормально работало - многие не плевались бы от вечно дряхлого "пингвина"...

В итоге мне пришлось плясать с бубном через терминал вручную ковыряя пакеты, ибо пакетный менеджер Synaptic "выполняет" свои прямые обязанности через задницу:

-4

Методом перебора была выявлена рабочая версия Wine Staging 9.3, однако она несовместима с префиксами от старых версий Wine, и просто уходит в бесконечный цикл обновления префикса запуская процесс msiexec, что висит мёртвым грузом в памяти системы и крайне неприятно:

-5

Однако если пересоздать префикс - Wine Staging версии 9.3 кое-как работает, но начиная с версии 9.4 не помогает даже пересозданный префикс, увы...

Поломали что работало...

Так как сейчас у меня установлен и настроен префикс Wine Staging 9.3, сразу же наглядно продемонстрирую тот факт, что целевое приложение работает:

-6

Делаю резервную копию папку префикса чтобы Wine создал всё заново (не хочу опять всё настраивать после экспериментов для статьи):

-7

Далее обновляю Wine до версии 9.4, всё вручную, ибо линуксоидные пакетные менеджеры говно, говорю как есть:

-8

Осталось только запустить игру, ждём пока будет подготовлен новый префикс:

Префикс подготовился, всё вроде как продвинулось, но закрылось само по себе, даже не появилось окно игрового лаунчера:

-10

Ради интереса запускаю более простую игру, лаунчер запустился, значит Wine работает, но при попытке запустить саму игру получаю "Unhandled exception code c0000005":

Окей, устанавливаю Wine Staging версии 9.9, последнюю доступную, так же удаляю папку префикса чтобы она создалась заново и не случилось никаких конфликтов:

-12

Снова лаунчер простой игры запустился, что в принципе было ожидаемо:

-13

Проверяю саму игру и она работает! Хотя для меня это не удивительно, ибо проверяя версии с 9.3 по 9.8 выяснилось, что именно версия 9.4 оказалась наиболее "переломной", когда разработчики всё основательно сломали...

-14

Окей, а как там гораздо более сложная игра? А никак, всё поломано и не работает:

-15

Возвращаю назад Wine Staging версии 9.3:

-16

Запускаю простую игру и она падает, значит сам Wine поломали ещё до версии 9.3, и без помощи DXVK он не способен запустить даже простую игру:

Однако без проблем работает лаунчер игры Genshin Impact, который не работал с Wine 9.4 и новее, это говорит о том, что Wine ломают намеренно с каждой новой версией:

-18

Откатываю версию до 9.1:

-19

И всё прекрасно работает:

Уже за кадром проверил и версию 9.2, она точно так же прекрасно работает, как и 9.1, а это значит лишь одно - начиная с версии 9.3 включительно, разработчики Wine начали заниматься вандализмом по отношению к приложению...

-

Заключение

Что сказать... Линуксоиды опять поломали что раньше нормально работало, в первый раз что ли? А потом думают - почему никто не хочет пользоваться линуксами, наверное просто злые корпорации принуждают всех использовать Mac OS и Windows (сарказм)...

А ведь я уже молчу про автоматически обновления, которыми линуксы порой любят злоупотреблять, вот так, залетит новая версия Wine через автоматическое обновление и танцуйте с бубном как хотите, С - стабильность, Н - надёжность.

Ну а если смотреть по спискам обновлений, сразу бросается в глаза как разработчики удаляют какой-то "устаревший" функционал, браво, удалили, теперь игры не работают!

-21

Прямо как AMD со своими вечно кривыми и проблемными драйверами, повырезали расширения OpenGL:

-22

А потом у людей вот такое дерьмо в играх происходит, спасибо AMD за "качественные" драйверы:

-23

Итого имеем, что разработчики Wine начиная с версии 9.3 включительно, просто берут и ломают всё, а когда починят неизвестно, и починят ли вообще. На данный момент последняя адекватная версия, это Wine Staging 9.2, именно её встрою в новую версию дистрибутива Chimbalix Linux если не обнаружу новых проблем.

Хотя стоит заметить, в новых версиях Wine исправили косяк с потерей фокуса на приложении при переключении или сворачивании окон, теперь одним костылём меньше будет, что был необходим для исправления косяка, и вполне возможно исправили некоторые другие косяки, которые не были мной замечены особо, однако когда ломают то что нормально работало, ну это чистое мракобесие...

И никто не знает, когда линуксы действительно станут пригодными для нормального использования, пока в них постоянно что-то ломают оставляя пользователя с новыми проблемами.

Благодарю за внимание, больше интересных статей в блоге Hard-Workshop.

-24