Release Wine-GE-Proton8-26 Released · GloriousEggroll/wine-ge-custom
github.com
external-link
Changes: Update wine bleeding edge Rebase staging patches Additional notes: I won't outright say this is the last wine-ge build, but we are getting close. The reason is that myself, alongside the...

Changes:

  • Update wine bleeding edge

  • Rebase staging patches

Additional notes:

I won’t outright say this is the last wine-ge build, but we are getting close. The reason is that myself, alongside the other devs for lutris, heroic, and bottles, have begun working together on ULWGL (https://github.com/Open-Wine-Components/ULWGL-launcher?tab=readme-ov-file#what-is-this).

Essentially ULWGL will allow you to run your non-steam games using Proton, Proton-GE, or other Proton forks using the same pressure vessel containerization and runtime that Valve use to run games with Proton. This means your games will run the exact same way as proton runs games, but outside and independant from Steam.

A vital part of this is that we’ve begun to build the ULWGL database (https://github.com/Open-Wine-Components/ULWGL-database), which provides various existing launchers and related tools a way to get unified game fixes (winetricks, dll overrides, environment variables, etc) for non-steam games.

To explain it briefly, the current path for running games in wine is like this:

  1. some installer with a custom script (lutris, heroic, bottles, etc) starts the install via wine. This custom script may contain things the game needs like winetricks, dll overrides, environment variables and so on.

  2. when the script runs, it starts wine using either a custom runtime (lutris and bottles currently have their own, heroic uses system libraries if i recall) or native system libraries. It calls winetricks or sets overrides or environment variables as directed by whatever script is running. Keep in mind the install script solely depends on who made it (lutis, bottles, heroic,?) and they can all differ or be completely missing fixes altogether.

  3. wine then runs the game using either native system libraries or whatever custom runtimes are configured for whatever launcher is being used (lutris,bottles, heroic)

That’s a lot of points of failure between different launchers. The script could differ between launchers. Scripts could have different winetricks or overrides or environment variables between launchers. Runtimes could differ or not exist at all.

With ULWGL – all of that is handled under one unified roof. So the way to run wine games changes:

  1. Launcher passes ‘codename’ and ‘store’ to the ULWGL database. The database then provides a ulwgl ID for the game based on the codename and store it received

  2. Launcher then passes the ULWGL ID to the ULWGL launcher

  3. ULWGL launcher then launches the game using proton + valve’s runtime + pressure vessel environment (the same thing used in proton in steam), and uses the ULWGL ID to identify protonfix scripts and apply them. Protonfix scripts essentially replace the install scripts various launchers use.

This way all games have the exact same running environment and the exact same protonfix scripts, and work can be done in unison to fix any problems on the protonfix script instead of each and every individual launcher script or other external files.

This is why Wine-GE will eventually no longer be needed, because ULWGL makes its need obsolete by allowing non steam games to run with Proton in a unified runtime environment with unified fixes. The original purpose wine-ge was created is because at the time there was no way to run non-steam games with Proton PROPERLY. Sure, you could hobble some scripts together and do it, but the biggest part of the problem at that time was nobody was using Valve’s runtime or pressure vessel, which by not doing so heavily breaks parts that Proton relies on to run properly. Now that ULWGL is created, it creates an almost mirrored way to run non steam games the way steam runs steam games in proton. I say almost because of course we’ve added tweaks and things like protonfixes into the mix.

Lutris and Heroic have already begun implementing ULWGL, with bottles soon to follow:

https://github.com/lutris/lutris/commit/c16242bccadf9e4de691e975013e03924494607e

https://github.com/lutris/lutris/commit/abd8d9c5cdd2dacad2968d63975bddd43953a23b

https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/pull/3480

For tracking further information and changes ongoing ULWGL all repositories can be found here:

https://github.com/Open-Wine-Components

So the guy warning not to use Proton outside Steam, creates a wrapper to run Proton outside Steam?

Essentially ULWGL will allow you to run your non-steam games using Proton, Proton-GE, or other Proton forks using the same pressure vessel containerization and runtime that Valve use to run games with Proton

This is the crucial piece of information. In less technical terms: Proton is designed to run in a very specific environment and it might be incompatible with your system. Steam runs Proton inside a bubble so that it interacts less with your system and so the incompatibilities don’t become a problem. ULWGL aims to create the same bubble so it’s the correct way to run proton.

Ah, thanks.

ggppjj
link
fedilink
45M

I mean, what were the warnings? “It’s hard to do it right”? Seems like a person warning about a problem and offering a solution from a position of knowledge.

More about Gamescope and other bundled stuff creating issues, i believe. Which is why i’m wondering.

This feels like when the Mighty Morphin’ Power Rangers combined to make the Megazord.

I’m cautiously optimistic because despite their solution being simple in nature it will still take a fuck ton of work and community effort to get the proposed Protonfix DB going. With that said I have no doubt this will be awesome once it’s completed, and I cannot wait to try this out! Stuff like this makes me wish I was a systems/OS dev and not backend/API/cloud.

Hell yeah! That containerization sounds nice!

I’ve been using Bottles for that purpose. It works okay, but not exactly lightweight (in fact far from it).

I do have a question about GloriusEggroll’s work. I know it’s supposed to iron out corner case bugs for a lot of games, but what is it exactly, a bunch of patches? Why is it not mainlined?

Bottles isn’t ideal for games tho. It’s tailored for general apps.

I mean… It has (at least most of) everything I need. Definitely far from ideal.

I am just wondering if proton ge will be discontinued and merge with new launcher. How we use proton ge to launch steam game?

@frost19@lemmy.world
bot account
link
fedilink
65M

It’s the other way around. Wine-ge will be discontinued and you use ULWGL to use proton-ge outside steam. It’s not a “launcher” launcher like lutris or bottles, just a script to launch proton without steam.

Why is it not mainlined into Proton, you mean? It uses proprietary (not open source) components. Proton is a fully open source project, and therefore cannot incorporate GE’s tweaks. But GE is free to continue making his special fork, and it’s a great option for most users that don’t mind using closed source software.

What proprietary stuff are you talking about? I’m aware that the stuff we’d be running on Proton-GE would be closed-source, but same goes with Proton & Wine.

Codecs for one.

This makes sense. Where can I read more about this?

Create a post

Gaming on the GNU/Linux operating system.

Recommended news sources:

Related chat:

Related Communities:

Please be nice to other members. Anyone not being nice will be banned. Keep it fun, respectful and just be awesome to each other.

  • 0 users online
  • 18 users / day
  • 139 users / week
  • 381 users / month
  • 1.43K users / 6 months
  • 1 subscriber
  • 729 Posts
  • 7.27K Comments
  • Modlog