DavidoTek / ProtonUp-Qt

Install and manage GE-Proton, Luxtorpeda & more for Steam and Wine-GE & more for Lutris with this graphical user interface.
https://davidotek.github.io/protonup-qt
GNU General Public License v3.0
1.22k stars 40 forks source link

Glibc-eac #195

Open Pakrohk opened 1 year ago

Pakrohk commented 1 year ago

Is your feature request related to a problem? Please describe. Of course, some games require a specific version of glibc to run EAC

Describe the solution you want Please add the tkg team script to run glibc-eac to the software https://github.com/Frogging-Family/glibc-eac and put an option to set it on specific games (this field should be a envirment variable)

Describe the alternatives you have considered Added system to replace glibc call location with eac

additional field Everything is explained in the link I posted. https://linuxgamingcentral.com/posts/glibc-eac/

sonic2kk commented 1 year ago

Not sure which installer this would go into and how it would be applied. Probably it could be made available for all installers since it can apply to Steam, GOG, and Heroic, maybe Bottles would be an exception here, not sure. Though the issue then is where to put it, as it shouldn't really go in any of the Steam, GOG and Heroic dirs...

Another issue is the per-game environment variable. I'm not sure what benefit installing with ProtonUp-Qt has over just downloading and running the script manually, as you'd have to set the environment variables before launching ProtonUp-Qt anyway (and would these be detected in Flatpak?)

There is also the problem of displaying which games are "using" this in the ctinfodialog.


Of course it is not up to me, just voicing my opinion here, but this seems a little "out of scope" for ProtonUp-Qt, as this is not really a compatibility tool as-such.

Pakrohk commented 1 year ago

What is strange is that the flatpak version does not need this script at all What protonup-qt does is to prevent extra builds. I also agree with the environment variable, we need to find a solution for it. It can be like a launch option for steam. export var="str"


Yes, this was just a suggestion, it's up to the development team to see if it's practical.

DavidoTek commented 1 year ago

It seems like this has to be installed globally and only works on plain Arch (not on Steam Deck or other distros).

So it's more of a system dependency and less of a compatibility tool, right? Does it override the system's glibc?

What is strange is that the flatpak version does not need this script at all

Do you mean the Steam Flatpak? It includes an older version of glibc which hasn't the problem with EAC, see https://github.com/ValveSoftware/Proton/issues/6051#issuecomment-1399438322

There is also the problem of displaying which games are "using" this in the ctinfodialog.

It should be possible to read and write Steams command line options from some config file.

Of course it is not up to me, just voicing my opinion here, but this seems a little "out of scope" for ProtonUp-Qt, as this is not really a compatibility tool as-such.

If it has to be installed globally, I also think this is out of scope for ProtonUp-Qt. Also, it is more something for advanced users as it has the ability to break some other stuff.

Pakrohk commented 1 year ago

It seems like this has to be installed globally and only works on plain Arch (not on Steam Deck or other distros). So it's more of a system dependency and less of a compatibility tool, right? Does it override the system's glibc?

Yes, I know this, this is an issue with Arch based distros and may not exist on other distros (Steam Deck systems have also received Hotfixes) It can also be used without installing Global on the system, this is possible with the help of the export environment. https://wiki.archlinux.org/title/environment_variables Of course, I must declare that my knowledge is not sufficient in this matter, forgive me if there is a mistake.

DavidoTek commented 1 year ago

It can also be used without installing Global on the system, this is possible with the help of the export environment

Okay, that's interesting. Something like LD_PRELOAD=/path/to/glibc-eac.so could work.