Состоялся выпуск экспериментальной ветки открытой реализации WinAPI - Wine 6.13. С момента выпуска версии 6.12 был закрыт 31 отчёт об ошибках и внесено 284 изменения...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=55526
Отличное вино почти 30-летней выдержки, которое пьет и стар и млад, в любое время, в любую погоду. Один из столпов мастдая. Долгих лет.
Только вот искать ошибки в каждом приложении не совсем умный подход.
эти ошибки касаются в том числе WinAPI, DLL и прочих портянок — сами приложения тут выступают в роли испытательных площадок
(Сарказм=ON)
Предложений переписать все на rust не поступало? :)
Только на Go
Не думают ли вино переписать на раст?
Зачем? Фанаты Раста обычно делают ударение на утечки памяти и выход за границы диапазона в массивах. Разве Вайн страдает от этих проблем?
в свете упоминаний оффтопика почем зря, такие вопросы можно смело отправлять в категорию риторических перманентно
два комментатора сверху повелись на толстый троллинг
Вот вы шутите, а кто-то возиться переписывать!
"возьмётся"
Пусть берётся, это только потому что он не способен ничего полезного написать (и никогда не напишет).
Оно до 1.0 шло 10 лет. Трудно себе вообразить, сколько займёт переписывание на Rust. Лет 50?
шо, до сих пор есть ошибки в работе с играми 20-летней давности типа Doom 3 ? шо, серъёзно?
Doom 3 выпушен в 2004-ом>20-летней давности типа Doom 3
> с играми 20-летней давности типаЭто было обощение
Старые игры хуже поддерживаются, чем современные -- там много древних платформоспецифичных костылей. Дом 3 нативный был, так что наверно не очень актуально в целом. А вот хром не работает нормально, это действительно проблема когда в играх на юнити хром встроен например.
Да не то что нативный, там даже сурсы доступны уже 10 лет.
«10 процентов результата требуют вторых 90% усилий»Многие проблемы вылезают очень редко и лишь при определённых условиях. Крайне мало у какого кода есть 100% покрытие тестами. Казалось бы, для местных обитателей это очевидно, так что звучит как наброс.
Там инсталлер только
Я проходил дум три на линуксе в 2008 году. Я скачал линукс-версию игры, начинаю устанавливать. Нужно было выполнить "chmod +x" на скачанный файл, затем запустить его "./имяфайла.sh". Можно было и не давать бит исполняемости, а сделать "sh имяфайла.sh"// или там было расширение *.run? Не помню
Всё установилось, осталось только запустить.
Опа, а нет файла pak0.pk3 (или как там он называется для третьего дума?). Надо иметь копию игры. У меня есть Windows-версия. Решил установить её при помощи Wine.
Инсталлятор заявил мне, что у меня старая версия DirectX, но всё-таки разрешил продолжить установку. Глупенький инсталлятор, разве ты не знаешь, что игра использует OpenGL, а не Direct3D?
"Вставьте диск 2". Не проблема. Нажимаю кнопку на сидироме, и... не вытаскивается. Эй! Пытаюсь извлечь средствами системы. "Носитель занят"! Нагуглил команду "wine eject", позволяющую извлечь носитель в том случае, если с него уже запущена какая-то программа под Wine. Выполняю. Всё равно не извлекается, так как bash использует носитель. Но как я изменю текущий путь, если из терминала запущен Wine?
Нашёл выход. Если инсталлятор находится по адресу /media/doom3_1, нужно запустить инсталлятор так:
cd /media
wine doom3_1/setup.exeИ тогда диск можно вытащить! Наконец я вставил диски 2 и 3,и завершил установку.
Потом я подсунул pak0.pk3 Linux-версии игры, и она запустилась. Попросила ввести серийник. Ну ладно.
Linux-версия работает безупречно. Есть только несколько багов. 1. На проприетарном драйвере NVIDIA прекрасно определяется количество видеопамяти, а на остальных драйверах - нет, и встаёт 64M. Решается дополнительным параметром запуска, указывающим количество видеопамяти вручную. Впрочем, играть можно и на 64M, только о высоких настройках графики придётся позабыть. 2. С русскими файлами игры, в консоли пишут что не найден файл gui.wav. Не страшно. 3. С русскими файлами игры, в "Настройках" немного повреждена картинка выбора устройства ALSA. Не страшно.
Когда открыли исходные коды игры, я попробовал его скомпилировать. Приятно, что актуальная версия компилятора GCC не вызвала затруднений для исходного кода. Скрипты сборки даже поняли, что у меня 64-битная система, и сами поставили параметр -m32, чтобы скомпилировать именно 32-битную версию игры.
Затем появился Source-порт dhewm3. Я попробовал его. Собралась 64-битная версия. Она прекрасно работает. Даже исчезла ошибка с отсуствующим файлом gui.wav и настройки ALSA стали отображаться нормально. Кстати, стало можно включить EAX. Вместо EAX используется EFX из OpenAL (то же самое, но программно, а не аппаратно). Звук стал глубже, но как по мне, слушая звук из динамиков ноутбука, становится хуже слышно диалоги. Поэтому я отключил EAX и играю так.
Один раз схватил баг, что когда сворачиваешь PDA, он перестаёт воспроизводить аудио на фоне. Только хотел отправить багрепорт, как догадался перезагрузить игру, и всё починилось.
А ещё сохранялки от doom3 и dhewm3 несовместимы. При попытке подсунуть им сохранялки друг от друга, они видят уровень, на котором была сохранена игра, но загружают уровень сначала, а не в том месте, где я сохранился. Во всяком случае, так было в 2016 году. Сейчас не знаю.
А по поводу дополнения Resurrection of evil, оно мне не понравилось. Я его прошёл до середины и бросил. Мне не понравилась сама концепция, что какой-то человек потрогал какой-то предмет, и ворота в ад снова открылись. А как же наука, телепортация, вот это вот всё? Неужели всё так просто?
Лучше поиграть в сам третий дум. А вместо дополнения лучше приобрести Prey, Quake IV и ET:QW (Enemy Territory: Quake Wars). Они тоже нативные и линуксовые, и тоже базируются на движке Doom 3. Кстати, серийник от Prey принимается Стимом, чтобы добавить вашу игру в библиотеку. Надеюсь, кому-нибудь эта информация будет полезной.
> шо, до сих пор есть ошибки в работе с играми 20-летней давности
> типа Doom 3 ? шо, серъёзно?Не поверишь, вайн будет писать fixme даже при запуске хеловорда. А fixme - это ошибки
> Не поверишь, вайн будет писать fixme даже при запуске хеловорда. А fixme
> - это ошибкине всегда, очень часто это телеметрия и дрм, вроде как получение серийника диска и прочее такое (доступа к чему у юзера ни линуксе нет).
> не всегда, очень часто это телеметрия и дрм, вроде как получение серийника
> диска и прочее такое (доступа к чему у юзера ни линуксе
> нет).телеметрия и drm в хеловорде?
> телеметрия и drm в хеловорде?Если он собран студией, то скорее всего да. Я про более распространённые случаи fixme -- это не ошибки и они ни на что не влияют.
> Я про более распространённые случаи fixme -- это не ошибки и они ни на что
> не влияют.Ошибки, хотя они и ни на что не влияют. Даже если ошибка в телеметрии - она все равно ошибка
Понятно что в вайне фиксят обычно серьёзные ошибки, а не их.
С точки зрения пользователя это фичи. Подозреваю, что, по мнению разработчиков, так же. А вот с позиции отбросов человечества, использующих технологии слежения -- это ошибка, однако, статистически она совершенно ни на что не влияет и ничего не меняет.
> Проведена подготовка для реализации интерфейса системных вызовов GDI.Раскройте мысль пожалуйста, а как же вайн вообще работает сейчас? В вантузе же всё через GDI работает, как рассказывали мне BSD-шники.
>> Проведена подготовка для реализации интерфейса системных вызовов GDI.
> Раскройте мысль пожалуйста, а как же вайн вообще работает сейчас?Молча? В оригинале там "Preparation work for the GDI syscall interface."
> gdi32: Introduce NtGdiExtGetObjectW.
> gdi32: Reimplement GetObjectA on top of GetObjectW.https://github.com/GloriousEggroll/wine/commit/14a39fcfe785c...
> В вантузе же всё через GDI работает, как рассказывали мне BSD-шники.... из под WSL?
Чего это в среду, а не в пятницу?
Автор целую неделю коммиты не принимал. Может отдыхал, а может наводнение мимо него прошло (Александр Юлиард в где-то в Германии живёт)
Уже давно держу в dual-boot -е винду (с удаленным драйвером от LAN/WiFi), потому что иногда хочется поиграть.Дрежать винду/игры в оффлайне собираюьс и дальше (100% не доверяю ни репакам, ни крякам, и оф. телеметрии и онлай игры не интересуют).
Но вот сейчас мысль прошла, а не заменить ли винду на Linux + Wine? Или Proton? У кого есть опыт? Подскажите пожалуйта, возможно ли поставить систему, все настроить, потом деражть в оффлайне? Где есть хорошая документация, как играть в игры DirectX 9/10/11/12, помоему под Wine разные движки и твики и.т.д. Спасибо
Там всё не так радужно - на сайте вайна можно ознакомиться с полным списком
Используй Proton в Steam - игры будут сразу же работать из коробки, ничего настраивать не придётся.
зависит от конкретных программ/игр, в основном все работает норм, хотя иногда есть геморойПо поводу твиков и ошибок
1. Используйте dxvk (для dx 12 - vkd3d). значительно увеличит производительность и решает половину проблем
2. Некоторые игры работают только через протон (например gta 5)
3. Иногда игры не хотят запускаться если пишешь wine /path/to/game.exe но запускаються если делаешь cd /path/to/;wine game.exe
По поводу материалов:
https://www.protondb.com/
https://appdb.winehq.org/
https://lutris.net/gamesвпринципе, все не очень плохо, но могут быть проблемы
Люто плюсую, некоторые игры уже стали работать в Linux@Steam@Proton быстрее и менее геморройно чем в винде. Даже банально помогает тот факт, что под каждую игру отдельный Wine prefix, легче избежать Windows DLL Hell. Тот же Cyberpunk 2077 в день релиза уже работал.Проблемы в основном с редкими онлайн-играми с хитросделанными анти-читами, типо китайского поделия PUBG. Зато большинство онлайн-игр от нормальных контор, типо вся серия Battlefield, GTA Online, Red Dead Online работают давно.
Как ни странно, несмотря на 3х-крастную разницу в market-share с macOS, где нативные порты в AppStore продают. На Linux по-факту игорей работает на много больше. Потому что там Proton хоть и пытался, но так и не родился, закрылся на этапе beta, потому что Apple решил выпилить 32-bit аппы. Зато почти все порты под macOS имею порт и под Linux. При этом большинство тайтлов с поддержкой macOS так и не пересобрали под 64-bit, с этим даже Valve тупит. Да и многие тайтлы в AppStore до сих пор продаются, но на современной macOS не работают, это вообще феерично.
Короче огромный респект Valve и Габену, Linux можно спокойно ставить как основную ОС для игорей и забыть про dual-boot с вантузом.
Ах да есть ещё прекрасный открытый lutris, в котором чуть ли не под каждую игру есть скрипт установки с нужными фиксами, но иногда есть и отдельная сборка wine. По факту он работает лучше платного Crossover, который типо основной спонсор и разработчик Wine.
> Люто плюсую, некоторые игры уже стали работать в Linux@Steam@Proton быстрее и менее геморройно чем в винде.Ну то наверное только к очень старым играм относится, которые с новыми виндовсоми плохо совместимы. Обычно гемороя больше. Однако все не плохо, хотя для некоторых может быть сложновато
> Проблемы в основном с редкими онлайн-играми с хитросделанными анти-читами, типо китайского
Ну тот человек писал что ими не интересуется
> Зато почти все порты под macOS имею порт и под Linux.
Впринципе и то и то - POSIX, а значит портировать не слишком сложно. А если разработчик интересуется поддержкой других ОС кроме windows - вполне вероятно что он это сделает.
> При этом большинство тайтлов с поддержкой macOS так и не пересобрали под 64-bit, с этим даже Valve тупит.
Valve везде очень любят 32 бита.
Спасибо большое, и всем отсальным отписавшимся тоже. Буду пробовать.
Держу Linux для изучения. Играю, работаю на Windows 10, но больше времени провожу за ssh в работе с Linux. На винде у меня включен Traffic Shaping, не вижу подозрительной сетевой активности + Norton который любое новое соединения блокирует. Также у меня есть учетки на github и тп... и за раскрытия свой фамилии не приживаю. Телеметрия для меня без различна в мере того написанною в соглашениях.
Глянь на рутрекере раздел "Портированные игры для Linux" м обрати внимание раздачам от Kron4ek. Там в принципе несложно взять его раздачу за основу и обернуть другую игру. Я так уже штук 20 обернул
> Закрыты отчёты об ошибках, связанные с работой приложений: ExeInfoPE v0.0.3.0, QQMusic 8.6, DXVA Checker 3.x/4.x, Perfect World, Kodi, NetEase Cloud Music, Mathearbeit G 5.6.А коди-то на...зачем под вайном запускать? Есть же нативный? Или это не тот коди?
Дежурный комментарий под каждой новостью про Wine. Лови дежурный ответ: если проблема с совместимостью есть, она может проявиться и в других программах (или уже проявляется) и надо её устранить.
Плюс к этому: если есть баги, которые помимо закрытых проектов также проявляются в открытых, то их легче отладить и исправить именно на последних, т.к. доступны исходники и соответственно отладочные символы.
> Дежурный комментарий под каждой новостью про Wine. Лови дежурный ответ: если проблема
> с совместимостью есть, она может проявиться и в других программах (или
> уже проявляется) и надо её устранить.Ну, может это какой другой коди...
Как оно для запуска не-игр? Свежий софт работает? Фотошоп там, After effects, Solidworks, etc? Наверняка какие-нибудь заморочки с антипиратской защитой, или это тоже победили уже?
Могу сказать только по продуктам Adobe. Я бы сказал "иногда запускаются", но в целом работать невозможно. Если кто-то скажет что "и так работать можно", то это человек, который запускает фотошом для подрезки фотографий, а о других продуктах Adobe даже не слышал.
> Могу сказать только по продуктам Adobe. Я бы сказал "иногда запускаются", но
> в целом работать невозможно. Если кто-то скажет что "и так работать
> можно", то это человек, который запускает фотошом для подрезки фотографий, а
> о других продуктах Adobe даже не слышал.Да, Lightroom установился и запустился. Я из него профили для объектива и камеры вытащил, и... дальше уже пользовался нативным RawTherapee. =)))
проф-софт запускают на той оси, для которой он написан.если у тебя есть старая лицуха, то
https://www.codeweavers.com/compatibility?browse=&app_desc=&...
остальное ССЗБ.
>Реализована корректная поддержка тем оформления для полос прокрутки.Джвадцать ле...
Нет, на самом деле бесило сильно!