LINUX.ORG.RU

Wine 8.10

 


0

1

Вышла новая версия Wine — 8.10

Wine — прослойка совместимости приложений для Windows с POSIX-совместимыми ОС, транслирующая вызовы Windows API в вызовы POSIX на лету вместо эмуляции логики Windows вроде виртуальной машины. С момента выпуска версии 8.9 было закрыто 13 отчётов об ошибках и внесено 271 изменение.

Значимые изменения:

  • Все трансляции из PE файлов в unix-библиотеки теперь используют интерфейс системных вызовов,
  • Улучшена работа ограничения перемещения курсора мыши в заданной области,
  • Добавлена поддержка резервации виртуальной памяти (placeholder),
  • В библиотеке ntdll в функции NtFreeVirtualMemory() добавлена поддержка флага MEM_COALESCE_PLACEHOLDERS, а в функции NtUnmapViewOfSectionEx() флага MEM_PRESERVE_PLACEHOLDER,
  • Обновлены файлы локалей и часовых поясов.

>>> Подробности

★★★★

Проверено: Poisoned ()

Ответ на: комментарий от amd_amd

Флешки нормально работают, просто обращаешься к ним по системным путям. А для специфических устройств вроде есть wineusb.

Werenter ★★★
()

Все трансляции из PE файлов в unix-библиотеки теперь используют интерфейс системных вызовов,

Я конечно понимаю их желание обеспечить работу win32 в 64битном процессе. Но всё этоиломает один простой юзкейс wine - winelib и маленькая обёртка для консольных windows приложений. 10-15 лет назад wine был маааленькой прослойкой запускающей exe без лишних зависимостей. Весь дистрибутив wine умещался в 10 мегабайт. При этом добавлял кода относительно виндового саиый минимум. Сейчас wine пытается в полной мере повторить юзерспейс винды. С одной стороны это должно давать большую совместимость (по факту она постоянно отваливается). С другой стороны это увеличивает оверхед.

mittorn ★★★★★
()

Как избавиться от страха подхватить видузячьи вирусы? У Wine есть защита ядра от виндузячьих штучек? Уже лет 5-7 не устанавливаю из-за этого, хотя иногда бывает нужно. Игры на отдельном оффтопике, так что острой необходимости нет.

xwicked ★★☆
()
Ответ на: комментарий от mittorn

С одной стороны это должно давать большую совместимость (по факту она постоянно отваливается). С другой стороны это увеличивает оверхед.

Больше кода - больше ошибок - это логично, к сожалению...

xwicked ★★☆
()
Ответ на: комментарий от mittorn

Ну в те времена Wine пилили только линуксоиды. А теперь Steam (со свом Протоном), Mac (все пытаються удержать свою ос на плаву), даже сама МС пилит Wine для своего WSL, так что напихано туда много чего.

mx__ ★★★★★
()
Ответ на: комментарий от mittorn

виндовые программы запущеные в wine не видят накопители подключеные по usb, накопители бывают разные - просто флешка или навигатор в который вставлена флешкарта, в любом случае виндопрограммы не видят этого, а мне бы этого хотелось - вот и спросил может запилили уже?

amd_amd ★★★★★
()
Ответ на: комментарий от Werenter

про доступ к файлам

чем осуществляется доступ к файлам? из под wine запущена некая виндовая программа которая видит вставленую в машину флешку?

amd_amd ★★★★★
()
Ответ на: комментарий от amd_amd

Я просто не понял, о чём речь. Виндопрограммы могут иметь доступ к флешке через файловую систему. А именно про прямой доступ - вроде есть wineusb, но я не разбирался.

Werenter ★★★
()
Ответ на: комментарий от amd_amd

Софт работающий прямо с разделами в обход фс работает, но для этого надо дать доступ юзеру к диску. Восстанавливалки удалённых файлов точно работают. Про доступ вне раздела не уверен, physicaldrive только нулевой видно, но может и это можно заставить работать

mittorn ★★★★★
()
Ответ на: комментарий от amd_amd

The configuration process is in charge of creating for example, a symbolic link between $(WINEPREFIX)/dosdevices/PhysicalDrive0 and /dev/hda0. If such a link cannot be found, and the device name looks like a DOS disk name (like C:), Wine first tries to get the Unix device from the path $(WINEPREFIX)/dosdevices/c: (i.e. the device which is mounted on the target of the symbol link); if this doesn't give a Unix device, Wine checks whether $(WINEPREFIX)/dosdevices/c:: exists. If so, it's assumed to be a link to the actual Unix device. For example, for a CD Rom, $(WINEPREFIX)/dosdevices/e:: would be a symbolic link to /dev/cdrom. If this doesn't exist (we're still handling a device name of the C: form), Wine tries to get the Unix device from the system information (/etc/mtab and /etc/fstab on Linux). We cannot apply this method in all the cases, because we have no insurance that the directory can actually be found. One could have, for example, a CD Rom which he/she want only to use as audio CD player (i.e. never mounted), thus not having any information of the device itself. If all of this doesn't work either, some basic operations are checked: if the devicename is NUL, then /dev/null is returned. If the device name is a default serial name (COM1 up to COM9) (resp. printer name LPT1 up to LPT9), then Wine tries to open the Nth serial (resp. printer) in the system. Otherwise, some basic old DOS name support is done AUX is transformed into COM1 and PRN into LPT1), and the whole process is retried with those new names.

mittorn ★★★★★
()

вместо эмуляции логики Windows вроде виртуальной машины

А как бы это выглядело? o_O

eugrus ★★★★★
()

Diablo четвёртая нормально под вином дышит?

Sahas ★★★★☆
()
Ответ на: комментарий от mittorn

Я конечно понимаю их желание обеспечить работу win32 в 64битном процессе.

Не только. Это также делается для поддержки разных DRM'ов и прочего. См.: https://www.winehq.org/announce/8.0

X-Pilot ★★★★★
()

транслирующая вызовы Windows API в вызовы POSIX на лету вместо эмуляции логики Windows вроде виртуальной машины.

Виртуальные машины не эмулируют логику windows, они эмулируют отдельный проц и прочее железо, а windows в них уже настоящий. А вот «логику windows» эмулирует как раз wine.

firkax ★★★★★
()
Ответ на: комментарий от Udacha

В gfn очень маленький список игр, и он очень зависит от канала, ну и у него нет официального клиента под линукс.

AleksK ★★★
()
Ответ на: комментарий от Skullnet

А вдруг там специальный вирус, который ждет много лет и ничего не делает, и собирается активизироваться, когда его запустят под wine…

Werenter ★★★
()

С момента выпуска версии 8.9 было закрыто 13 отчётов об ошибках

Закрытие отчета об ошибке как-то коррелирует с закрытием бага?

А какое общее количество ошибок?

chenbr0
()
Ответ на: комментарий от Mischutka

Сильно по-разному. wine-mono и wine-gecko самые жирные части, но без них ничего нормально не работает(хотя игрульки возможно и будут работать, но прикладной софт точно нет). Сам wine весит в арче(как в других дистрах не знаю) где-то полгига. mono и gecko ещё половину, следовательно вайн весит около гигабайта. Ещё понадобятся 32-битные библиотеки, но они весят немного.

Werenter ★★★
()
Последнее исправление: Werenter (всего исправлений: 1)
Ответ на: комментарий от mittorn

Я конечно понимаю их желание обеспечить работу win32 в 64битном процессе.

Не только «их». Забудь про мультилиб, бро. Никто, ради вайна, его в макось не вернёт.

Но всё этоиломает один простой юзкейс wine - winelib и маленькая обёртка для консольных windows приложений.

Для этого есть HX.

10-15 лет назад wine был маааленькой прослойкой

Он был маленьким по тем временам, а современный вайн - маленький по нынешним временам. Ничего не изменилось. :)

запускающей exe без лишних зависимостей.

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

Сейчас wine пытается в полной мере повторить юзерспейс винды.

Ну вот армовая винда содержит в себе даже транслятор х86 инструкций. Вайну придётся и это повторить, когда/если они решат запускать х86 виндовые проги на арме. А как иначе?

С другой стороны это увеличивает оверхед.

У меня для вас хорошая новость. Запускайте на х86_64 машине под вайном только х86_64 проги, а на армовой машине запускайте под вайном только aarch64 проги. И не будет вам оверхеда. А вот если вы хотите всякое старьё из 90х под ним гонять - скажите спасибо, что он вообще это позволяет делать. :)

anonmyous
()
Ответ на: комментарий от Mischutka

разве сейчас это имеет какое-то значение? террабайтные m.2 диски продаются в любом ларьке рядом с колбасой и сыром. плюс любая игра или профессиональный софт уже давно перевалили за 50gb+. Вайн по сравнению с этим капля в трусах

Unixson
()
Ответ на: комментарий от Udacha

можно запускать под Geforce Now на смарт ТВ?

В некоторых местах Земли можно, в некоторых, составляющих примерно 99% ее поверхности - нельзя или нет смысла.

Вот для них - вайн.

James_Holden ★★★
()
Ответ на: комментарий от Unixson

любая игра или профессиональный софт уже давно перевалили за 50gb+

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

Werenter ★★★
()
Ответ на: комментарий от rhaport

тебе на пальцах объяснить? игры же ну) втыкания в консоль не единственное что люди делают за ПК. Портированные рядом не стояли, не надо если что) Не надо вонь наводить)

Unixson
()
Последнее исправление: Unixson (всего исправлений: 1)
Ответ на: комментарий от anonmyous

Не только «их». Забудь про мультилиб, бро. Никто, ради вайна, его в макось не вернёт.

Да кого долбёт эта макось?

Для этого есть HX.

Можно поподробнее, есть ли более-менее работоспособные ветки (умеющие amd64 хотя бы),

Он был маленьким по тем временам, а современный вайн - маленький по нынешним временам. Ничего не изменилось. :)

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

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

Мультилибовых - да. Мне вообще нравится идея запуска 32битного кода в 64битном процессе. Помимо отсутствия мультилиба это позволит 64битную версию драйвера opengl использовать. В некоторых случаях она аж в 4 раза быстрее по CPU получается (реально ловил 400 fps против 100)

Ну вот армовая винда содержит в себе даже транслятор х86 инструкций. Вайну придётся и это повторить, когда/если они решат запускать х86 виндовые проги на арме. А как иначе?

См. что делает hangover. Можно сказать - уже


У меня для вас хорошая новость. Запускайте на х86_64 машине под вайном только х86_64 проги, а на армовой машине запускайте под вайном только aarch64 проги. И не будет вам оверхеда. А вот если вы хотите всякое старьё из 90х под ним гонять - скажите спасибо, что он вообще это позволяет делать. :)
не, я как раз говорил об оверхеде этой конфигурации, когда запускается win64 софт на amd64 системе. Впрочем он небольшой и куда меньше всяких флетпаков, так что я тут из мухи слона раздуваю по современным меркам

mittorn ★★★★★
()
Ответ на: комментарий от hobbit

Пока технические вопросы обсуждают, то «пирожок с повидлом», а шаг вправо или влево, то «пирожок не с повидлом».

Forum0888
()
Последнее исправление: Forum0888 (всего исправлений: 4)
Ответ на: комментарий от mittorn

Да кого долбёт эта макось?

Убунта тоже несколько раз дропнуть мультилиб порывалась. Но неадекватные юзера вайна, вместо того, чтобы долбать разрабов самого вайна, стали публично клевать убунту! В результате, убунтоидам пришлось отзывать решение о дропе мультилиба и извиняться перед этими неадекватами.

Можно поподробнее, есть ли более-менее работоспособные ветки (умеющие amd64 хотя бы),

В смысле win64 проги гонять? Нет, он именно для легаси сделан. С вайном он конкурировать не намерен.

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

Я не то, чтобы сильно в теме вайна, но разве нельзя там отключить сборки 32битных РЕшников, и ограничиться работой с win64 прогами?

Мне вообще нравится идея запуска 32битного кода в 64битном процессе.

Ну слава яйцам. Хотя, пока они это пилят, это быстро теряет актуальность. В конечном итоге это всё нужно будет исключительно для легаси, так как недостатка нативных win64 прог уже как бы и нет особо.

См. что делает hangover. Можно сказать - уже

Этот проект мёртв уже года 3 как. Пока Джулиард ни скажет, ничего не поедет. А он - чел не слишком адекватный, раз выпилом мультилиба занялся только сейчас, а 20 лет всем тем, кто ему это предлагал, отвечал лишь ПНХ.

не, я как раз говорил об оверхеде этой конфигурации, когда запускается win64 софт на amd64 системе.

А для них разве нужны все эти танцы с РЕ32?

anonmyous
()
Ответ на: комментарий от Unixson

ну я понял, что где-то пропустил. У меня переход на Линукс совпал по возрасту с завершением игрового возрастного периода. Поэтому тема не актуальна. Помню, что лет 15 назад дико мучился с wine как раз, чтобы запустить игру. Но с тех пор ни разу не нуждался. Надеюсь он стал лучше.

rhaport
()
Ответ на: комментарий от rhaport

Надеюсь он стал лучше

Честно говоря небо и земля. Больше не надо гуглить пойдет ли игра или нет. в 99% случаях все работает. если нет - то есть protondb и там можно посмотреть обходные пути и прочие шаманства. И даже они приобрели человеческий вид)

Не работает/плохо работает сейчас только то что требует EAC (EasyAntiCheet, BattlEye, etc). Но и тут работа ведется. А так все остальное пашет либо не хуже, либо на чуть более низком (или же наоборот более высоком) фреймрейте. Но все в приделах допустимого.

Тащемта прошел cyberpunk 2077, Witcher 3, тестил Forza Horizon 5, Doom Eternal, Elden Ring, Hogwarts Legasy. Есть конечно микростатеры, чутка не идеально пока что, но лет 7 назад запустить свежую игру на линуксе считалось чем-то невозможным.

Unixson
()
Ответ на: комментарий от anonmyous

дропнуть мультилиб

Разве плохо иметь в системе дополнительный набор библиотек? Кушатс они не просят, зато поддержка легаси софта) Софта и так мало, так еще носом воротят… Видите ли 32бита у них легаси. Вон винда вообще обратную совместимость чуть ли не с WinXP до сих пор тянет, и правильно делает. В идеале не должно такого быть в принципе чтобы программа не запускалась. И пофиг сколько этой программе лет (в разумных пределах разумеется).

P.S: Хотя может это у меня гиперкомпенсация из-за линукса. То библиотеки нет, то она не там лежит, то посев, то понос. Иди дружище мануалы читать километровые. Я жить хочу, а не маны читать. Поэтому ко всяким «выпиливаниям» чего-то из дистрибутивов отношусь крайне негативно. Явно же отхлебнет что-то. Пусть лучше лишнее лежит, но работает. Чем полурабочее, но зато без легаси. ИМХО

Unixson
()
Последнее исправление: Unixson (всего исправлений: 1)
Ответ на: комментарий от Unixson

ко всяким «выпиливаниям» чего-то из дистрибутивов отношусь крайне негативно. Явно же отхлебнет что-то. Пусть лучше лишнее лежит, но работает. Чем полурабочее, но зато без легаси. ИМХО

+1

hobbit ★★★★★
()
Ответ на: комментарий от xwicked

Где мне можно найти вирус\троян\шифровальщик под венду? Не видел лет 12-15 уже. И не слышал от знакомых ни о каких их проявлениях.

dk__
()
Ответ на: комментарий от rhaport

Я, например, под wine гоняю программу для домашней бухгалтерии. Нативные аналоги есть, но жутко неэргономичные, на мой взгляд. Хотя некоторые ЛОРовцы как раз их и нахваливают.

Одно время хотел написать линуксовый аналог, никакого rocket science там нет, обычная реляционная БД плюс посидеть над удобством окон и хоткеев. Но всё равно это отняло бы кучу времени, после чего меня бы ещё говном закидали «зачем это, если есть божественный GnuCash». А тут программа просто работает под вайном.

hobbit ★★★★★
()
Ответ на: комментарий от dk__

Где мне можно найти вирус\троян\шифровальщик под венду? Не видел лет 12-15 уже. И не слышал от знакомых ни о каких их проявлениях.

В любой школьной сети или техникума / ВУЗа. Они там всегда жили и будут жить вечно. Я как эникей постоянно с ними сталкиваюсь в клиентских компах/буках.

xwicked ★★☆
()
Ответ на: комментарий от dk__

WannaCry, Petya? Это явно не 12-15 лет. И я наблюдал лично, как в 2019 году знакомые с подобной дрянью сталкивались, как та дрянь конкретно называлась, уже не помню.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от hobbit

Я помню одно врем была мода на шифровальщики-вымогатели. А ранее на порнобанеры. Первое, вроде бы 5-7 лет назад и более, второе 10-15.

dk__
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.