Pull to refresh

Comments 53

Лаек за труд, но зачем? ИМХО, проще поставить Windows для программ под Windows, и не мучать пятую точку.

Привет. Спасибо за коментарий.

В данном случае я в вами согласен, но иногда бывают случаи, что нужно использовать конкретно Linux и в нём нужно поднять приложение с винды.

У меня в университете на компах стоит линь, и там сисадмину нужно было поднять программу T-Flex Cad. Почему нельзя поднять винду там? Ну, спустили сверху что должен быть линь, и е...ь как хочешь.

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

Да и если ты запускаешь пару игр через стим на лине, стоит всё же знать и как это всё внутри работает. Имхо, полезно может быть.

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

В личное владение соглашусь, что проще виндой пользоваться. И не соглашусь с автором в комментарии выше о "линь(таких людей становится больше, поскольку их не устраивает винда... Ну не ставят люди Линукс, т.к юзабилити всё ещё никакое даже с условием, что MS старается ухудшить винду.

Но прочитал статью с удовольствием и отметил себе на всякий случай и для рекомендации коллегам.

А плюс статьи в том, что игры - это частность и пример автора. Мне интересна по причине "импортозамещения" когда сверху давят требования, а ПО не готово. Да и не будет готово из-за тех ограничений и трудоемкости перевода.

Зы: но имел бы я в виду добровольно эти заниматься дома для запуска виндоуспрогоамм, когда есть отличный эмулятор виндовс от ms с поддержкой программ по поколениям лучшей, чем Линукс может предложить.

>когда есть отличный эмулятор виндовс от ms с поддержкой программ по поколениям
А можете, пожалуйста, просвятить о чём речь? А то я не до конца понял о чём вы говорите, а интересно.

эмулятор виндовс от ms

Это про режим совместимости, вероятнее всего.

С учётом наличия WSL - на Линукс ещё не скоро захочется, даже если мелкомягкие ускорят темпы деградации винды - до среднего линукса там всё ещё как до луны.

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

А плюс статьи в том, что игры - это частность и пример автора.

А тем временем SteamDeck фактически пересадил весь мобильный ПК гейминг на Linux. SteamOS уже официально на другие портативные консоли пошла. И прикол в том, что некоторые игры через wine в итоге лучше работают, чем нативно.

Если использование программы под Windows предполагается не в формате "несколько часов подряд буду адски трудицца в ней и только в ней, ни на что прочее не отвлекаясь", то куда удобнее запускать её на своей основной системе и не перезагружаться в Винду - из Винды туды-сюды. Да даже и в вышеописанном формате, всё равно удобнее. Фатальные проблемы с несовместимостью я не рассматриваю - там уж куда деваться. Из-за них мне пришлось недавно установить Windows 10 второй системой - года полтора не пользовался и с непривычки охренел, как всё долго, мучительно и - не сказать "сложно", но какое-то иное прилагательное со схожим смысловым оттенком вполне применимо. Несколько программ использовал на Linux через Bottles - и быстрее, и проще в разы, на порядки (чем ставить ради них опять Винду, не чем ставить их в уже установленную когда-то ранее Винду). Единственный плюс Windows - что там-то уж точно(?) заработает, в отличие от лотереи с форками Wine.

С тем что точно разработает не сошлашусь. Я года 3 назад столкнулся с таким перлом, что Oblivion и F3 запускаться под 10 виндой не хотели на отрез. Точнее не так, запуститься то они запускались, но вылетали всегда через минут 10.

Прикол в том, что я тогда перешёл на линь на полгода, и в вайне всё работало.

А потом я поставил 11 винду и вот тут вообще прифигел, ибо ОНО ТУТ РАБОТАЕТ СРАЗУ. Я так и не понял в чём приколы перлов были на 10, но вот так.

Есть неочевидный бонус: в вайне работают проги, которые не работают в совремнных версиях винды

Я именно вайном как то поднял старую прогу на labview, надо было на пайтон перенести

Головокружительный объем. Даже скролить устал. Юзаю Crossover под маком. И со временем все меньше в нем потребности почему-то.

Мак это по-сути винда на другой платформе. Программ под него настолько же много, как и под винду. Плюсом огромное кол-во проприетарных программ, каких на линуксе нет и вряд-ли будут. Там wine нужен только для игр

Отличный материал, вот что-то такое хочется перманентно видеть на хабре. Ничего сверх-нового не узнал, но представляю как этот труд может помочь тем, кто впервые сталкивается с wine, даже после продолжительной работы под GNU\Linux.
Автору плюсик в карму!

Спасибо, старался как раз для новичков. Помню себя в начале и мне очень не хватало подобной информации. Потому вот сделал.

Играю через бутылки, полет нормальный. Большинство проблем (со старыми играми, преимущественно) вылечились использованием другого раннера (caffe) и установкой зависимостей из меню бутылок.

Lutris же наоборот, когда я его пробовал, показался крайне нестабильным - мог запросто успешно запустить игру один раз сразу после установки, и ни разу больше.

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

Чисто ради интереса - а не пробовали подобные эксперименты провести на ReactOS?

Нет, не пробовал, но могу ради интереса.

Но одно дело wine, а другое вся система построенная вокруг него. Звучит, мягко скажем, нестабильно.

Обновление прошлого ответа:

Я щас ради интереса попробовал запустить реакт на машине, но ничего не выгорело, оно сыпет бсодами и я даже в GUI не вошёл, не то что пробовать там что-то запускать...

Ни дев, ни реализ версии тут просто не запускаются. Так что - не судьба.

Реакт он очень специфический, к тому же в альфе ещё(ага, за сколько там лет разработки? 20?), так что это ещё менее привлекательно, чем запускать что-то в wine...

Мда... Можно делать это все, а можно ничего этого не делать, сами знаете как.

Я читал тут статью где человечки писал что steamos запускает игры через свой протон или как там называется которая является глубоким форком wine , так ли это ? Если да почему его как базу не использовать ?

Ах да .net corr виндовый ставить на wine это конечно да...

АХ ДА 2. Эта статья как символ и манифест что linux не приходин для использования что 30 лет назад , что сейчас. )

>Я читал тут статью где человечки писал что steamos запускает игры через свой протон или как там называется которая является глубоким форком wine , так ли это ? Если да почему его как базу не использовать ?
Я рассматриваю wine в данный статье как софт для запуска преимущественное программ, не игр. Протон, как и вайн, достаточно топорно переносят обычный софт, а вся жизнь состоит не только из "развлекалова". С играми, как раз, у меня никогда проблем запуска не было(ну почти).

>Ах да .net corr виндовый ставить на wine это конечно да...

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

>АХ ДА 2. Эта статья как символ и манифест что linux не приходин для использования что 30 лет назад , что сейчас. )

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

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

Это не нужно делать. export, как и cd, влияет только на текущий процесс и его потомков

О, спасибо. Этого не знал. Я чисто убедился, что они не просочатся в остальную систему

Прочитав заголовок ожидал увидеть описание установки Wine на что-то типа FreeBSD, но никак не Ubuntu. Т.к. Ubuntu это Linux-based операционная система. Если в тексте пишете что у вас исключительно для debian-based, то и в заголовке отражайте суть, а то после заголовка статья выглядит так как будто автор особо не разбирается в этих самых юниксах и линуксах, но знает какие-то команды для убунты.

Под FreeBSD только KDE можно патчить, а не wine устанавливать. Правда уже сколько лет прошло, а я нигде на просторах интернета так и не увидел пошаговую инструкцию как же пропатчить KDE под FreeBSD...

Процесс весёлый, но тогда уж лучше нативный гном поставить, а не кде тащить, который портирует один человек.

Процесс везде один - ищете пакеты, ставите из пакетника(ну в случае с фряшкой можно и из портов, я с ней работал). Только парралельно с этим нужно решать столько гемора, что проще гайд делать там, где работает всё и сразу.

Я мог бы и на арче запилить, только сначала мне бы пришлось вспомнить какие пакеты я тащил на этапе установки, чтобы работало вот абсолютно всё, а не забыть, как я, net-utils и сидеть без инета в терминале, ребутаясь в установочный носительно, чтобы опять всё смонтировать и поставить один-два пакета.

Тут статья чисто про сам вайн, который везде будет один и тот же, что на фряшке, что на арче, что на, просто господи, маке.

Чертовски обстоятельно, отдельные респекты автору за выбор ретро-тайтлов)

Спасибо, Дружище, за такую прекрасную статью, но... С замиранием сердца ждал, ну когда же будет установка Майкрософт Офиса современных версий? Не дождался... Эх, жаль. Про автокады, фотошопы знаю, оно не работает ни в каком виде. А вот офис... Пробовал какие-то "100% рабочие" инструкции , но всё равно мимо. Максимум что удалось запустить - это 2007, и то, там не работал ПаверПойнт. Такую бы обстоятельную статью для Майкрософт Офиса современных версий. Всё равно - плюс в карму от меня.

Фотошоп и лайтрум вполне себе работают, если устраивают старые версии без всяких AI фичей. В бесплатном зеленом магазине даже лежат сразу обернутые в вайн.

У меня запускался CS6 всегда, кое-как CC2019 и CC2021. Illustrator не запускался ни разу до работоспособного состояния. Я уже давно смирился и даже не пытаюсь их заставить работать. Сам, если нужно, делаю всё в гимпе и фигме(нативная) или в инкскейпе. Меня устраивает, значить тащить силком адобовский софт смысла не вижу.

Я сам уже давно не пользуюсь офисом от МС. Устраивает либра и OnlyOffice. С оффисом будет проблема +- та же, что с фотошопом. Проблемы есть, как их решать - да фиг их знает.

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

Я бы и рад использовать Либру, но работаю в академической среде, а там диссертации с таким математическими формулами... В Либре с этим всё ОЧЕНЬ плохо. Просто КАТАСТРОФИЧЕСКИ.

Попробуй OnlyOffice. Он должен лучше обрабатывать подобное чудо. Я вообще в гуглодоки после хабра перебираюсь, он удобнее для меня оказался. А функционал +- тот же. Я вот подумываю там курсовую в следующем году сделать, если пройдёт, то вообще кайф будет.

Пробовал, одним из первых, когда искал приемлемые альтернативы. Да, признаю, он ГОРАЗДО лучше работал с формулами и прочим научным контентом, но... Китайцы явно перестарались с навязчивой монетизацией продукта. Он ПОСТОЯННО что-то от меня хотел. То вываливались окна с рекламой, то перейти на версию про, то задонатить, то обновиться. Я не могу такое ставить профессуре. Они почти все хорошие и добрые люди, в основном, но терпению может и прийти конец. Как-то не хочется быть съеденным заживо. :-)

Респект за труд! Подробно расписан опыт на примерах. Использую wine для игрушек уже давно, согласен с тем, что подробной документации достаточно мало . Для новичков самое то, считаю.

Спасибо за комментарий, как раз для новичков и делал)

Привет. Кое-что добавлю

И system32 и syswow64 содержат исключительно только 32-битные версии библиотек. Различие имён папок здесь из-за версии самой винды, а не dll.

system32 - 32 битные библиотеки в 32-битной Видне.

syswow64 - 32 битные библиотеки в 64-битной Винде. (syswow64 => system windows on windows 64).

Поэтому если положили 64-разрядную библиотеку в не ту дверь папку, то ошибка c000007b  = BAD_IMAGE_FORMAT - как раз случай с путаницей образов 32 битных и 64 битных либ. (Ожидается 32 битный, а лежит 64 битный или наоборот).

Второе, есть волшебный ключик --force у winetricks. Без него нормально d3dx9 не поставишь. (Сталкер не запуститься, если --force не указывали).

# winetricks d3dx9 - ERR: not worked!
# Add key "--force" to install Stalker

winetricks --force d3dx9


В третьих, DeepSeek предлагает общее решение по dotnet-у, которое легко гуглится в Reddit-е, здесь

Пробовали ли Вы winetricks с ключом "--force"?

В четвёртых - taskmgr - бесполезен, если Вы захотите запрещать использовать некоторые CPU ядра для плохо оптимизированных игр (Far cry 3). Нужно вручную перед запуском игры через bash помечать указанные ядра как неактивные через "chcpu". Пример:

# mark CPU 6 - 11 as offline  (-d => disable, -e => enable) 
# Note: CPU 0 - cannot be disabled as it is in use by kernel.

sudo chcpu -d 6-11

И включать их по новой, когда нужно

sudo chcpu -e 6-11



И последнее - как Вы верно заметили, для игр нужно качать шрифты, т.к. Wine оставляет папку drive_c\Windows\Fonts в префиксе пустой. Нужно вручную качать архив шрифтов и копировать шрифты в данную папку.

Игра "The Forest" - напрямую читает шрифты оттуда. Если их нет, то игра будет глючить (и язык не поменяешь, т. к. отсутствуют шрифты для трансляции).


P. S. И ещё наличие "32" в exe-шнике ещё не говорит о том, что игра запустится в 32-битном префиксе. Например, игра "Subnautica" требует исключительно 64-битный префикс. Даже если запускать "Subnautica32.exe". Потому что под "32" понимается скорее всего режим совместимости в 64-разрядной Windows)

Оо, спасибо за пояснения. Некоторых вещей не знал. Я не особо много игрался с вайном чтобы их все найти, полезно узнать.

Про встроенные программы(типа taskmgr) я упомянул лишь для того, что они там есть, я не сталкивался с реальным их применением, тк. я чаще пользуюсь Lutris, нежели чистым вайном.

А куда класть 64-битные либы, если syswow64 тоже для 32? Напрямую в windows?

С --force не сталкивался ни разу. Не приходилось.

В Windows 64-bit в папке system32 лежат 64-битные либы, а в папке syswow64 - 32-битные. И да, они (разрабы Windows) **анулись на отличненько.

Интуитивно что писос однако

Хороший труд. Я когда-нибудь еще раз подойду к "этому снаряду." Но именно поэтому, когда мне требовались Вин-программы на рабочем ноуте с Линуксом (был Минт), я поставил Винду второй осью (разрешили). Всё, что нужно было юзать в обоих осях - лежало как обычно в разделе d:

Здравствуйте, спасибо за коментарий.

Если вам нужно использовать проф. софт, то, возможно, вайн тут мало поможет. Было огромное кол-во у меня примеров, когда именно такой софт не запускался, или запускался с крайним трудом.

Из недавнего - T-Flex cad 17. По их гайду с сайта, подходит ТОЛЬКО определённая версия вайн, которую откуда доставать я так и не понял(там толи 6, толи 7), только определённые манипуляции, чтобы завести не учебную версию, там нужны такие танцы с бубном, что я психанул и сделал виртуалку. Это было раз в 10 быстрее, чем пробовать запускать незапускаемое через вайн.

Нашёл недавно способ поставить Фотошоп, для того чтобы его поставить нужна... Винда! Ну или виртуалка. Тогда появляется вопрос - а на кой чёрт мне нужно это тащить всё в вайн, если у меня уже есть всё рабочее из виртуалки?

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

Да-да.. те самые программы из серии CAD-CAE .. В том числе Алгозит https://algozit.khpi.ru/algozit/ не пошел, он на С++ написан.. и версии под 64 разряда нет.. Короче я колдовал не только с Вайном.. ПлейОнЛинукс.. что-то еще.. и бросил ))

Мне даже интересно стало попробовать когда-нибудь его завести. Если выйдет - отпишусь

И ещë на AMDGPU в Linux-е ставят щадящие по питанию параметры, урезая производительность.

В Linux-е у драйвера amdgpu включен режим заикания "PP_STUTTER_MODE" (0x20000) is set". Этот режим усекает частоту памяти для GPU по пороговым параметрам. Его можно выключить, указав параметр модуля в загрузчике "amdgpu.ppfeaturemask=0xfff5bfff"

Можно также в придачу включить разгон и выключить GFX_OFF режим, но разгон не поддерживается на двух мониторах (особенности amdgpu). Так что безопаснее выключить только режим заикания. Единственное - это увеличит энергопотребление и нагрев.

Фича за разгон эта PP_OVERDRIVE_MASK (0x4000).

Фича, выключающая GFX > PP_GFXOFF_MASK (0x8000)

При включенном GFX нужно будет включить фичу PP_GFX_DCS_MASK

(0x80000)

С учëтом всех указанных фич маска будет такой

amdgpu.ppfeaturemask=0xfffd7fff

Статья огромна. Изучить некоторые моменты мне надо будет, но позже.

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

Главное чтобы ссылка не была хабром забанена, а так ничего.

Ещё одно. Некоторых библиотек нет в winetricks. Вот почему популярность WIne растёт медленно, так это из-за проблем с зависимостями. Вот ещё свежий пример. Игра "Satisfactory". Требует две вещи.

1) Самые свежие библиотеки среди Visual Runtime C++ (2015 - 2022). (*2022 - требуемые. Версии ниже не запустят игру, а в winetricks их нет). Достать их можно спокойно у майкрософт (Последняя версия Microsoft) по ссылке здесь.

2) Библиотеки для движка Unreal Engine. Пред. релизные версии (< 1.0) используют движок Unreal Engine 4. (Ищите гуглом UE4PrereqSetup_x64.exe).

Но релиз перешёл на движок Unreal Engine 5. И библиотеки 4 версии также теперь не запускают игру.

Вот и выходит, что почти каждая игра требует танцев с бубном.

Опять же смотря что запускать. Для моих целей таких танцев не требовалось, ибо мой тапок не запустит последние версии игр раз, второе я в низ и не особо хочу играть. Мой предел игр это ~2015 год, и то это будут индюшки. В последнее время я играть совсем перестал и мне интересен вайн именно с ТЗ запуска прикладного софта, а не игр. Он нужен в обычной жизни чаще. А игры через стим запускаются хорошо, там еще и все библы в комплекте идут.

А игры через стим запускаются хорошо, там еще и все библы в комплекте идут.

не все. А программы тем более не все.

UPD. Игра запустилась. Зря грешил на библиотеки Unreal Engine. Как раз они-то и работают нормально. Как оказалось причиной был Vulkan (DXVK). Вернее, его отсутствие. Необходимо было скачать DXVK нужной версии (1.10.3) отсюда. Затем скопировать библиотеки (*dll) из папки архива x64 (для 64-битного префикса) в папку "system32". Ну и ещё в WInecfg проверить, что для них установлено соответствие "сторонняя, затем встроенная". И игра запустилась. Запускал для DirectX 11 API.
И по сравнению с "Subnauica" игра под вулканом выдаёт стабильные 60 FPS и быстро работает, а вот в "Subnautica" средний FPS 30-40, и местами есть подгрузки. Но она работает на "OpenGL". А он медленее вулкана.

В общем качайте Visual Runtime C++ (2015 - 2022) отсюда.

Качаете DXVK 1.10.3 отсюда (не исходники, а первый архив).

Ну и ещё не забудьте из "Redist" поставить доп. ПО "UE4PrereqSetup_x64.exe" - либы Unreal Engine 4. И будет Вам "Satisfactory".

И да, эти библиотеки нужно на каждый префикс переносить.

у тебя расписано как поменять версию Windows? Именно релиз установить, а не в winecfg переключить.

Sign up to leave a comment.

Articles