Юусо Аласуутари (Juuso Alasuutari), специализирующийся на разработке систем обработки звука для Linux (автор фреймворка LASH (http://www.nongnu.org/lash/lash-manual.html)), сформировал (https://github.com/imaami/Proton/releases/tag/proton-i-4.13-3) проект
Proton-i, нацеленный на портирование актуальной кодовой базы Proton на более новые версии Wine, не дожидаясь новых значительных выпусков от компании Valve. В настоящее время уже предложен вариант Proton на базе Wine 4.13 (https://www.opennet.me/opennews/art.shtml?num=51213), по функциональности идентичный Proton 4.11-2 (основной проект Proton использует Wine 4.11).
Основная идея Proton-i в предоставлении возможности использования патчей, вносимых в свежие версии Wine (в каждом выпуске публикуется несколько сотен изменений), которые потенциально могут помочь в запуске игр, при запуске которых раньше наблюдались проблемы. Предполагается, что какие-то проблемы могут быть устранены в новых выпусках Wine, а какие-то могут решаться патчами Proton. Сочетание этих исправлений потенциально даёт возможность добиться более высокого качества работы игр, чем при использовании нового Wine и Proton по отдельности.
Напомним, что развиваемый компанией Valve проект Proton основан на наработках проекта Wine и нацелен на обеспечение запуска в Linux игровых приложений, созданных для Windows и представленных в каталоге Steam. Proton позволяет напрямую запускать в Linux-клиенте Steam игровые приложения, поставляемые только для Windows. Пакет включает в себя реализацию DirectX 9 (на базе D9VK), DirectX 10/11 (на базе DXVK) и 12 (на базе vkd3d), работающие через трансляцию вызовов DirectX в API Vulkan, предоставляет улучшенную поддержку игровых контроллеров и возможность использования полноэкранного режима независимо от поддерживаемых в играх разрешений экрана. По сравнению с оригинальным Wine значительно увеличена производительность многопоточных игр благодаря применению патчей "esync" (Eventfd Synchronization) или "futex/fsync (https://www.opennet.me/opennews/art.shtml?num=51197)".URL: https://www.reddit.com/r/linux_gaming/comments/cs577p/proton.../
Новость: https://www.opennet.me/opennews/art.shtml?num=51308
Начинается зоопарк!
Не зоопарк, а энотека!
Зачем? Ну зачем это? Не плодите сущности без необходимости? У одного перца в ж жжет что ли? Куда торопиться? Переведут все наработки постепенно. Ну куда ты лезешь?
Попугаям Кешам неведомек, что Wine одна из тех программ, от которой в стейбле пользы меньше, чем в тестинге. Попугаям Кешам важнее соблюдение формальностей.
Свя суть СПО в возможности сделать форк. Форки нестабильные движитель повозки прогресса, пускай она даже перед лошадью.
Ага, в тестинге уже поломали то, что в стейбле еще как-то работает
Самая главная проблема вайна в неприятии патчей. Патчи не принимают не только потому что они могут внести регрессионные изменения, но и потому что есть кросовер и его дерево исходников с которым патч может оказаться не совместим. При этом кросовер не идентичен вайну по функциональным возможностям.Имхо, чем больше у вайна форков, тем лучше. Эти ребята за свою историю умудрились сожрать свои форки и успешно застагнировать, пока не появился вэльв с протоном и другими проектами. Главное, чтобы лицензии были несовместимы.
Вайн это отличный пример того, что наличие копилефт лицензии при полном отсутствии конкуренции никоим образом не защищает от застоя.
> кросовер и его дерево исходников с которым патч может оказаться не совместимОткуда вы такую траву берете? Просто полистайте какие сейчас патчи в wine-staging... там собственно и принимать-то нечего, а в сумме 800+ патчей уровня "do not report error, keep going" и "special hack for gtx630m". В 2.5 играх это почему-то сработало, в остальных случаях может и навредить. Работают ли эти патчи на последних версиях wine и нужны ли они для последних версий wine никто толком сказать не может... но имеем 800+ патчей, которые загнивший апстрим не хочет принимать!
Я не буду спорить, там есть интересные вещи, но они сделаны слишком криво, чтобы тянуть их в апстрим. Тот же cuda-wrapper, поверх которого потом заводится аппаратно ускоренный PhysX (работает быстро, но с большими лагами ;) т.е. долго тупит, а потом быстро работает). И естественно этот wrapper не заработает на интеле и АМД.
> пока не появился вэльв с протономЧто же такого замечательного в протоне? Рабочий DXVK был задолго до протона, а FAudio уже интегрировали в ванильный wine. Может еще осталась база хаков? Но в рабочего неэмуляторе никаких специальных хаков требоваться не должно, поэтому в ПОСЛЕДНЕЙ ВЕРСИИ WINE эта база точно не потребуется ;)
>в ПОСЛЕДНЕЙ ВЕРСИИ WINE эта база точно не потребуетсяВ последней - это в той, после выпуска которой настанет конец света?
А вот и Staging для Proton
что то я не вижу открытого пул реквеста в оригинальном протоне. опять будет зоопарк из свежего протона на протухшем вине и протухшего протона на свежем вине?
А в пул реквесте нет смысла, график выхода оригинального протона от Valve привязан к внутреннему графику Valve. Ты им предложишь перестроить свои процессы разработки и привязать график выхода протона к графику выхода wine?
Попробуй создай сам такой пул реквест, а мы посмотрим насколько вежливо сотрудники valve тебя пошлют.
> jackdbusНо зачем? dbus это гномовский аналог dcop из KDE 2/3, и по-идее, если у вас не GNOME, то с выключенным dbus система будет работать, как и всегда. На практике, от dbus зависят также xfce и ldxe (потому что на GTK), внезапно KDE4 и выше, и bluez5. Остальное прекрасно работает без dbus, я проверял в openSUSE 15.1 с интерфейсом KDE3. Либреофис, гимп, фаерфокс, vlc - всё работает.
Выглядит, как чисто DE-шная служба, которой прикладное ПО не пользуется. jackdbus это первая такая программа, которую я вижу. Что она даёт?
Например, говорит пульсаудио, чтоб он освободил звуковуху, которая нужна запускаемому джеку, а после запуска джека говорит пульсе, что он может выводить поток на эту карту через джек. Ну и после завершения джека сообщает пульсе, что звуковуха свободна и её можно забирать.
Может ещё что-то умеет, но я не вкурсе.:)
> Но зачем? dbus это гномовский аналог dcop из KDE 2/3, и по-идее, если у вас не GNOME...
> ...Что она даёт?Два раза перечитал, пост, подумал, может шутка... но если нет, на всякий случай попытаюсь объяснить.
Такая штука как dbus не видна ни пользователю, ни системному администратору, потому что сделана она не для них. Это для программистов.
Пусть есть 3 приложения (разные процессы).
Приложение 1 необходимо воспользоваться функционалом приложения 2
Приложение 3 должно отреагировать когда приложение 1 закончило выполнение конкретной функции, из приложения 2.
И пусть приложение 3 находится на соседнем компьютере в сети.Взаимодействие между приложением 1 и 2 могут быть разными:
1) Приложение 2 хранит все свои функции в библиотеке (shared object) и приложение 1 их вызывает.
2) Приложение 2 умеет обмениваться данными через потоки и конвееры (unix pipes)
3) У нас есть системная шина для межпроцессного взаимодействия, где можно подписаться, отправлять и получать данные (IPC)
В случае, приложения 3 нам нужно либо:
1) Иметь высокоуровневое API на приложении 3 которое примет запрос от приложения 1 по сети
2) Иметь системную шину удалённого вызова процедур (RPC)Так вот D-bus - это протокол реализующий межпроцессное взаимодействие и удалённый вызов процедур (IPC/RPC) имеющий реализацию для разных ОС. На оффтопике за это отвечают DCOM/COM+ и MSRPC, если так понятнее.
Зачем нужны эти технологии, почему люди их используют?
1) Писать библиотеки или специальное API для внешних проектов - значит следить за неизменностью API и ABI
2) При использовании конвееров приложения должны договариваться о формате данных внутри потока и сохранять этот формат с обновлением версий. Тут также возникают проблемы с безопасностью в виду проблем с ACL.
IPC/RPC призван это устандартизировать и перевести в ООП-модель и также разграничить права.
Кроме того это вообще спор между монолитным и микросервисным приложением. Понятно, что монолитное приложение быстрее, но его иногда не получается горизонтально масштабировать, поэтому существуют микросервисы и шины данных.И вот тут мы переходим от теории к практике
1) Исторически ядро Linux построено на религиозной максиме о превозобладающей во всех случаях производительности в случае монолитности, поэтому ядро не стандартизирует IPC/RPC на своей стороне
2) В виду того, что на pipeline можно сделать мини-IPC и он стандартизирован Столлманом в POSIX они используются чаще.
3) Использование конвееров для приложений, которые не умеют сами открывать потоки и работать с сокетами вынуждает использовать конвееры stdin/stdout превращает Linux в операционную систему где всё крутится вокруг оболочки (bash и другие)
4) А в случае использования разделяемых библиотек... Из-за сложных взаимосвязей версий библиотек и отсутствия тотальной стандартизации межпроцессного взаимодействия на уровне ОС разработчик приложения зачастую не может быть уверен заработает ли его приложение в конкретной версии конкретной ОС. Поэтому требуется особая прослоечная сущность - меинтейнер дистрибутива, который соберёт всё вместе воедино и будет отлаливать баги, которые сам привнёс при портировании кода внутрь своего дистрибутива.Ирония в том, что незнание и непонимание сообществом IPC/RPC даже на мало-мальски базовом уровне - это та сила что с одной стороны сдерживает линукс на десктопе, а с другой стороны загоняет его на сервере в докер, потому что сложным огромным многосерверным приложением нужен IPC/RPC в отсутствии оного можно написать кучу вебсервисов засунуть в докер и подключить их к RabbitMQ, например.
>Но зачем? dbus это гномовский аналог dcop из KDE 2/3,
>и по-идее, если у вас не GNOMEтакже добавлю к товарищу ниже(http://www.opennet.me/openforum/vsluhforumID3/118190.html#36)
Читаем внимательно название темы, вспоминаем что proton это прежде всего проект valve, прежде всего для их собственной реализации возможности вин-игр а linux-системах, а прежде всего в их собственной рекомендованной SteamOS, которая по сути debian stable (просто с репами valve где свежее ядро и свежайшие дрова на видяхи), с DE внимание - Gnome3!
Отсюда, среди прочего вопрос:
зачем в гноме3 кедовское что-то там, если не по идее, у вас именно что GNOME3 и есть?!
>Сочетание этих исправлений потенциально даёт возможность добиться более высокого качества работы игрпотенциально - да. а на практике это приведёт к появлению новых глюков, которых не было ни в одном из оригинальных проектов...и ресурсов этого чела будет недостаточно, чтобы их все разрулить
Wine Staging адаптируют же сотни патчей под каждую новую версию Wine. Хоть и не один человек это делает. Двое
>> включает в себя реализацию DirectX 9 (на базе D9VK)А как давно включает? Вроде ранее говорилось о том что это ещё только в планах после обкатки DX10/11
Насколько давно сложно понять, но поддержку d9vk нужно ещё включать отдельно:
https://github.com/ValveSoftware/Proton/issues/102#issuecomm...х
> А как давно включает?Начиная с версии 4.11.
Тут список изменений: https://github.com/ValveSoftware/Proton/wiki/Changelog
Так это все равно никто юзать не будет, все используют протон так как он внутри стима а это что ?
Можно использовать standalone сборку вместо wine или конкретные сборки в Lutris.
Подозреваю, что его можно будет использовать внутри Steam так же как там используется несколько версий Proton одновременно и можно выбирать любую из них для запуска. Одной из особенностей клиента Steam для Linux является возможность подключать к нему сторонние модули помимо встроенного Proton. И на данный момент развивается уже два таких модуля:
• Boxtron - слой совместимости, который использует нативный DOSBox для запуска DOS-игр в клиенте Steam.
• Luxtorpeda - слой совместимости, который позволяет запускать некоторые игры, подменяя их Windows-движок на нативную версию, например применяя ioquake3 для Quake III или OpenXcom для X-COM: UFO Defense.
Так что не исключено, что Proton-i будет работать по тому же принципу.
Этот Proton-i тоже для использования внутри Steam: он распаковывается в папку ~/.local/share/Steam/compatibilitytools.d, после чего в настройках Steam его можно выбрать для использования.
Может нормальный wine сделать? И чтобы steam его качал и ставил? Зачем нужен отдельный протон вообще??
Так сделайте нормальный вайн. Кто вам мешает?
Да вроде сборки от Kron4ek или Lutris давно уже справляются с подобной задачей.
Хорошая вещь этот Proton. Теперь игроделам можно вообще не запариваться с поддержкой Linux, достаточно обеспечить ее запуск в протоне. И не важно, что возможны небольшие косяки и проседание fps в два раза.
Эта тема как вопрос поднималась ещё на заре игрового вайностроения. Теперь это уже не вопрос. Очередной поезд ушёл. Гейб делает своё дело и делает его хорошо. И теперь Линукс от игроделов стал ещё дальше чем был ранее. И это закономерный процесс.
Если Valve не хватило возможностей продвинуть свои Steam Machine, хоть они и старались, они пошли другим путем. Это закономерно.Linux к игроделам ближе все становится. Microsoft все для этого делает с каждым обновлением Win10.
> Linux к игроделам ближе все становится. Microsoft все для этого делает с каждым обновлением Win10.Ну, то что большая часть пациентов опнета живёт в альтернативной реальности, мне хорошо известно.
Десяточка пару раз так обновлялась, что хоть стой хоть падай. Из наиболее токсичного:
- Разломали геймпады пополам посредством запрета на монополизацию HID-устройства в новом API для USB. Сломали этим кучу игр, портированных с консолей на венду и заодно сломали всякие мапперы и макрогенераторы для геймпадов. Вынудили клиент стима написать целую подсистему для работы с геймпадами, который теперь впитал в себя возможности и мапперов, и частично макрописание и еще и менеджмент профилей для разных падов, коих тьма и разных игр, которых тьма.
- Разломали производительность внушительного количества игр через управление питанием, посредством принудительной замены профилей на экономичные. Логика в том, что появилась игровая панель, которая решает стоит тебе пользоваться мощностями компьютера или нет. Во время игры можно, а если нет - нельзя. Вот только эта самая панель "интеллектуально" определяет в игре ты или нет, посредством сравнения непонятно чего не понятно с чем через Xbox Live, которым на венде никто не пользуется. Включать обратно стало положено через открытие панели, когда активно окно игры и простановке в настройках оверлея галочки "Это игра" или что-то тому подобное.
- Новые обновления ломают старые игры, потому что десяточка это ролинг и она не так сильно парится по совместимости с оборудованием и ПО
- Зато она парится по телеметрии и магазину винды в котором UWP-блоатварь и полный треш, который продают за деньги. Кстати она еще и предустанавливает этот треш и умудряется рекомендовать и доустанавливать этот рекламный мусор через фековые "плитки" в пуске и рекомендации.Вообще-то, это у тебя альтернативная реальность.
Это виндовз вас просто пугается. У меня вот ничего не ломается. Что касается геймпадов, то там наоборот прогресс - с какого-то времени dualshock 4 стал поддерживаться самой виндой и без Стима и бубнов. Но вам же нужно убедить самого себя в собственном бреду. Мозг ведь уже пожран идеологией. Тут уже ничего не поделаешь.
>Linux к игроделам ближе все становится.MS тут не причём, сейчас гугель со своей стадией пытается утянуть гейминг в облака, just as planed, где всё это добро именно на linux и будет крутиться, посмотрите их воодушевляющие сектанские презентации, так что скоро всем наступит хорошо, совсем скоро наступит коммунизм (ну почти, за пока что назначенную абонентку в 10 бачей), и совсем скоро не надо будет уми^Wпокупать дорогое железо и можно будет играть с любого утюга (только не забываем о абонентке и о том что этим мечтателям как-то надо порешать проблемы инпутлагов и лютых пингов)в 4К 60fps!
P.S.: Мы надеемся и верим в гуголь, они же никогда не хоронили свои сервисы!
Чтобы игроделы парились с поддержкой Линукс, у Линукса должна быть заметная база пользователей. Менее 1% нахрен не нужны крупным издателям и я что-то не видел, чтобы до Протона издатели в очередь становились за портом на Линукс. Протон даёт призрачную надежду на увеличение геймерского сообщества на Линуксе, а будут геймеры, будут и порты, не взирая на Протон.
И тут уже фрагментацию устроили.
Условный Вася не хочет быть винтиком в чужой пирамидке, хочет быть фараоном в своей. Поэтому и форк. А в чужой пирамидке подчиняться кому-то надо, вдруг Pull Request не примут ) Это же такой удар по самолюбию!
искаробочным протоном можно пользоваться без наличия установленного стима на машине? Или самому собирать надо?
Вопрос нужно ставить по другому, зачем нужен вайн окромя стима ?
Лепет про МСО и Фотошоп как отмазка не принимается ...
игры не только в стиме продаются, как бы
Ты разработчик кросплатформенного приложения, которое по историческим или маркетинговым причинам использует Win32, но ты хочешь портировать его на другие ОС.
Кстати, это и есть основная цель проекта - реализовать API.
>искаробочным протоном можно пользоваться без наличия установленного стима на машине?Зачем? Вы не любите стим-клиент, потому что он проприетарен, так протон для проприетарных игр, так что одним зондом больше/одним меньше, не велика печаль. Вот только если вы опасаетесь, что нельзя будет пираточки или же игры не из стима так запускать, напрасно, уже проверено и можно и пираточки и не из стима под протоном, который в стиме, запускать, и стимклиент может в офлайн работать, так что играть можно!
Но если вы просто хотите попревозмогать что-то, ради своих сугубо изысканных занятий, в которых мусье один знает толк, тогда я вам честно не подскажу, можно ли, или нельзя, потому что сам я не настолько искусен в подобных дисциплинах и тупо не знаю как оно будет обстоять в случае ваших попыток, но вы можете попробовать и описать ваш сакральный опыт, например здесь!:)
>тогда я вам честно не подскажуну и ради чего тогда был этот комментарий? Иди своей дорогой, сталкер
>Вы не любите стим-клиент, потому что он проприетареня где то говорил подобное?
Не пользуюсь стимом только потому, что это еще одна прослойка между пользователем и играми, жрущая ресурсы фоном (и таки не мало. На топовом пека без разницы. На стареньком ноуте - весьма ощутимо)
У меня Windows и всё работает, что я делаю не так?
>> У меня WindowsПолагаю это
А что ты вообще тут делаешь?
стебешься над убогими. Не надо так делать, жалеть их надо.
Вера Надю уже придушила, только серебрянные боеприпасы и осина.