Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Application crashes on Proton prefix but not on default prefix #366

Open
farelmapm opened this issue Nov 27, 2024 · 3 comments
Open

Application crashes on Proton prefix but not on default prefix #366

farelmapm opened this issue Nov 27, 2024 · 3 comments

Comments

@farelmapm
Copy link

Describe the bug
I'm trying to run Synthesis (https://github.com/Mutagen-Modding/Synthesis), an application for modding Bethesda games. I can run this application on my default wine prefix, but if I try to launch this application in my proton prefix it crashes at startup.

To Reproduce
Steps to reproduce the behavior:

  1. Run protontricks-launch --appid<appid> wine Synthesis.exe,
  2. Application fails to launch at all, nothing pops up.

Expected behavior
The application runs and opens without issue.

System (please complete the following information):

  • Distro: Arch Linux
  • Protontricks installation method: AUR
  • Protontricks version: protontricks (1.12.0)
  • Steam version: No beta participation

Additional context
As I said before, without using protontricks-launch and using the default wine prefix, I can run the application just fine. Here's the output of running the application through the normal wine prefix for comparison.

Output of wine Synthesis.exe (runs as normal): https://gist.github.com/farelmapm/48abd2238f902ac671a228b4c4ff030e
Output of protontricks-launch -vv --appid 489830 Synthesis.exe: https://gist.github.com/farelmapm/feb5c84417effd0201b2a1b012581138

@Matoking
Copy link
Owner

The error seems to happen after Protontricks has set up the environment, so could be something in the Wine prefix. Have you already installed some verbs for the user's default Wine prefix? Running winetricks list-installed outside Protontricks and then installing any missing verbs using Protontricks might help. Also, Synthesis seems to use the .NET framework, so installing some of the dotnet verbs might help.

Other than that, I'm not sure what might be to blame. The Valve's fork of Wine (aka Proton) has some patches of its own, so something running on Wine 9.0 is not a guarantee it will run on Proton 9.0, or vice versa.

@farelmapm
Copy link
Author

I did have dotnet installed on my Proton prefix, but even then a clean Wine prefix without dotnet installed could run the program just fine. I'm thinking that it's a Proton issue instead of a Protontricks issue, but the only thing of note that I could think of is on the log of the protontricks-launch command, it listed .NET Version: 8.0.11, which is the .NET version I have installed in my actual Linux machine on Arch, not the one installed on the Proton prefix. Removing dotnet from my machine omits this line from the log, but it doesn't actually solve the problem. So maybe somehow Proton is actually using .NET made for Linux which has a different architecture and leads to an incorrect alignment issue as stated in the log? Note that I don't actually understand what an "incorrect alignment" error is, that's just what ChatGPT told me it was so take it with a huge grain of salt.

So what I'm thinking of is to somehow tell Proton to actually use the .NET provided with the prefix, which sounds like something that I should be able to do with DLL overrides in winecfg but I don't know which library I need to override or whether that is the actual solution to the problem.

@farelmapm
Copy link
Author

Okay, so after creating a brand new proton prefix, I managed to get it to work. My .NET installation in the old prefix was very likely corrupted since I can't even run the uninstaller for it. I managed to recreate the issue on a brand new proton prefix possibly by switching from one Windows version in winecfg to another (from Windows 10 to Windows XP for example) while running an application in that same prefix. I don't know if this makes it a Wine/Winetricks/Protontricks issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants