LINUX.ORG.RU

Wine портирован на OpenBSD

 , ,


0

2

Томас Фрохвайн (Thomas Frohwein) сообщил о портировании Wine на OpenBSD.

Известные ограничения:

  • заявлена поддержка только 64-разрядных программ (WoW64 не поддерживается);
  • внутренние тесты отключены, поскольку им нужен доступ к X-серверу, а несколько тестов всё ещё зависают.

В качестве успешно запускающихся программ называются ремастер игры «Ведьмак 3» (требуется vkd3d-proton) и редактор Notepad++.

>>> Рассылка



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 6)

Вроде не первое апреля. Ждем Тэо с ушатом экскрементов в каментах.

ant1 ★
()

Я про это некогда не задумывался, но если бы задумался, то подумал бы что одно там дцать лет уже есть. И даже проверять бы свои мысли не стал. Так что внезапно.

P.S. Не думал что я это скажу, но нужна реакция o_O

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от James_Holden

x86_16, x86_32 и x86_64 это всё варианты x86

Не x86 это arm mips и что там ещё.

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

По реконструкции дискуссии в рассылке было давно, но теперь заново добавили.

recei
() автор топика
Ответ на: комментарий от I-Love-Microsoft

Вобщем автор жёстко наврал.

Я перешёл по ссылке и там сразу видно:

We have since tested several dozens of 64-bit Windows software, mostly
successfully.
...
Biggest limitation is that WoW64 doesn't work, so 32bit Windows
software is still a no-op.

Вроде бы это означает что поддерживается x86_64, не поддерживается x86_32. Походу они только wine64 портировали, иначе не знаю как эти фразы понимать. Про не-x86 там никто не задумывался вообще.

firkax ★★★★★
()

некоторые ограничения внутренних тестов, поскольку их вывод завязан на x-org.

И это тоже враньё. У тестов не «некоторые ограничения», а они отключены. Да, из-за xorg, которого нет в сборочной среде. Но если их запустить то некоторые зависают, но автор объявления заявляет что в реальном применении проверил кучу игр и зависаний не увидел, однако над виснущими тестами работает.

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

И вот ещё фраза

until we can explore if some fencing in, potentially with unveil(2) can be done.

я не знаю точно как она переводится но есть подозрение что они собираются интегрировать туда сандбоксинг.

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

Я не модератор, а новость до сих пор в черновике так что исправить её можешь ты.

Нет, про «протестирована куча 64-бит софта» там написано однозначно, перепутать невозможно. С тем что 32-битный не поддерживается - есть шанс что они чего-то не договорили, но из сказанного тоже следует что он не поддерживается.

WOW64, если что, это как раз прослойка совместимости для запуска 32-битного софта в 64-битной винде.

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

Ну да, «всего лишь» не поддерживается процентов 90% игр. Но что это такое, да? Есть же x86_64.

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

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

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

Не знаю чего я отрицаю. И хейта никакого нет. Я просто обсуждаю содержание новости с целью её исправить.

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

Ну вы отрицаете факт, что какое-то действие могло случиться не специально, тем самым нарушаете принцип Оккама. Это подтверждает наличие хейта (учитывая ваши опусы в соседнем треде), тем самым вы не просто обсуждаете новость, с целью её исправить.

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

Есть байткод транс-компиляторы/кэшеры входящие в состав Box64 / FEX — именно так работает Платный Вайн в Макоси на АРМ

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

Тоесть, бинарник х86_64 перекомпилирывается в арм

…При первом запуске, с кешированием.

…И вайн в SysWOW64 поддерживает запуск 16бит бинарников, Вин95 и 3.11 например.

…Тоесть, на Линуксе, когда Вайн актуален и нормально собран, то … Он ЗАПУСКАЕТ БИНАРНИКИ 16, 32 и 64 Бит! (насчёт макоси — не пробовал. Мне известно только про кешированную перекомпиляцию бинарников х64 под арм)

Set440 ★★
()
Последнее исправление: Set440 (всего исправлений: 4)

Fallout 1/2 и Heroes 3 запускаются? Если нет то не нужно.

ant1 ★
()

о портировании Wine

О, там даже этого не было?

вывод завязан на x-org

И этого?! Что там вообще есть кроме тормозящих ФС и фимоза Тео?

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

Переведи на русский теперь, а то какая-то бессвязица и непонятно к чему. Тебя qulinxao покусал?

firkax ★★★★★
()

внутренние тесты отключены, поскольку им нужен доступ к X-серверу, а несколько тестов всё ещё зависают

Вот сразу видно деловой подход: тесты не проходят - тесты отключаем.

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

Чем эта бсд отличается от дебиана? Объяснити

Если коротко, то всем.

shaplov ★★★
()

Зачем на опенбзд переносить вайн, с учетом того, что винда опенбздунам и так всегда доступна по причине работы с опенбздей исключительно через путти?

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

Во-первых, мне сдаётся, что ты перепутал с фрёй.

Во-вторых, даже на фре этот мем был актуален, когда фря считалась дефолтной ОС для вебсервера, а вебмастер сидел на винде и нередко вообще мало что про юниксы знал. Отсюда и putty. В 2026 году, если человек пользуется любой из *BSD, есть весьма нехилый шанс предполагать, что в гробу он видал эту винду, да и линукс тоже. Да даже галерею ЛОРа можно потыкать по соответствующим тегам.

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

Во-первых, мне сдаётся, что ты перепутал с фрёй.

Не-а. Опёнка тоже видят обычно максимум в SSH, потому что стоит он на роутере в обувной коробке.

Да даже галерею ЛОРа можно потыкать по соответствующим тегам.

Ага, вот как раз под одним из последних скринов с фрей и кедами ОП сказал, что фря у него на ноуте для постоянного пользования - вон, четвертый раз уже ставит.

Четвертый раз. Для постоянного пользования, бгг :)

liksys ★★★★
()

Ну так ещё не портирован получается! Тесты зависают и homm3 не запустится.

kirill_rrr ★★★★★
()

То есть фаф не запустится. Печаль беда. А почему? Зафейлили добавить дескрипторы х32 кода в gdt? Я не совсем понимаю в чем обосрамс.

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

Если чо нужны тупо дескрипторы. Для х32 кода надо не давать map выделять адреса выше 4гб и прослойку для перехода туда-сюда между 32битным и 64битным кодом в userspace.

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

Учи русский язык, прямым текстом всё написано. Конкретно в этой новости - в скобках после фразы.

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

Вот его и не сделали в этом порте.

Wine весь userspace, если что.

Впрочем, кажется есть такая цитата

32 bit apps are likely no go as they require user LDT, even if you can use WOW64. 32 \
bit instructions are decoded as different instructions in 64 bit (INC/DEC in 32bit \
mode, but just a REX prefix in 64 bit for example) so code will likely not fault \
immediately but keep running garbage for good few instructions before it fails with \
#UD/#GP -> SIGILL/SIGSEGV.

так что возможно ты частично прав, что дело в таблицах дескрипторов. Но не в том что в wine что-то недоделали, а в том что openbsd не позволяет их менять, и не будет позволять т.к. жертвовать своими техниками безопасности ради wine они не станут. Так же как в openbsd нельзя использовать gs в юзерспейсе, но с этим они решили: ловят sigsegv от попыток и эмулируют.

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

Для меня это несколько в одном

  • Обоже! Ужас то какой!
  • Обожечки какая прелесть!!! Ща абассусь! Но страшно! Выключай
  • А-хе-реть!! Памагити
  • О нееет, как так та!!!
  • И так далее…

А o_O Это эмоция в ступоре, типа

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

Дом2 короче получился. Все на лобное место (или как там)

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 2)
Ответ на: комментарий от firkax

32 bit apps are likely no go as they require user LDT

слышь, чорт. ты хоть раз видел 32битную игру для windows которая LDT трогала?

я то знаю что такое LDT, это наследие 286, которое пришло буквально от военщины. никто вообще этим говном не пользовался. ни одна игра кроме тех кто под дос вообще не знает про LDT. и даже под дос никто в здравом уме не использовал LDT.

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

на самом деле, нет никаких проблем с user LDT потому что оно нахер не нужно.

просто ставим заглушку и наблюдаем как ничего не случилось.

нет игр которые даже древние как жопа заточеные на 286 использовали LDT. ну зачем, если есть GDT? Если игра 32битная, то там или unreal 32bit mode, либо dos4gw или его аналоги. но обычно это dos4gw. это ДОС. поддержку которого вроде выпилили хз когда.

но один хер дальше были игры для винды95+ где уже не было «дескрипторов», а было плоское пространство памяти.

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

Это не я писал, а авторы порта wine на openbsd. Вероятно, у них есть какие-то причины так писать. Судя по дальнейшим фразам про проблемы из-за отличающихся инструкций 32/64, они сначала собирались использовать LDT чтобы объфвить в ней 32-битный сегмент, а затем, когда поняли что это нельзя, подумали про эмуляцию 32-битной системы команд в 64-битном сегменте, но это оказалось слишком проблемно.

Твоё описание истории использования LDT несколько отклоняется от реальности, но в данном случае это несущественно. Программы для win32 и правда вряд ли её сами использовали.

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

да что ты черт подери такое несешь. для работы нужно всего лишь расположенные особым образом для syscall/sysenter дескрипторы кода32бит, кода64бит, кода ядра, данных, tss, и всё. ldt вообще из х86-64 выкинули. В винде нет поддержки LDT, а 32битный софт работает. Прикинь!

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

а у них реально нет 32битного дескриптора в GDT.

https://github.com/openbsd/src/blob/master/sys/arch/amd64/include/segments.h#L254

https://github.com/openbsd/src/blob/master/sys/arch/amd64/amd64/machdep.c#L1855

вот жеж жопорукие жопоруки. все исправляемо буквально за несколько строк кода. хоть самому бери и правь этот цирк с поросями.

#define	GUCODE_SEL	4	/* User code descriptor */
#define	GUCODE32_SEL	5	/* User 32bit code descriptor */
#define NGDT_MEM 6


set_mem_segment(GDT_ADDR_MEM(cpu_info_primary.ci_gdt, GUCODE_SEL), 0,
	    atop(VM_MAXUSER_ADDRESS) - 1, SDT_MEMERA, SEL_UPL, 1, 0, 1);
set_mem_segment(GDT_ADDR_MEM(cpu_info_primary.ci_gdt, GUCODE32_SEL), 0,
	    atop(VM_MAXUSER_ADDRESS) - 1, SDT_MEMERA, SEL_UPL, 1, 0, 0);

ну может еще на sysret/sysleave наложить патч на принудительное прописывание CS=35 SS=27… вроде всё.

ckotctvo
()
Последнее исправление: ckotctvo (всего исправлений: 3)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.