Matoking / protontricks

A wrapper that does winetricks things for Proton enabled games, requires Winetricks.
GNU General Public License v3.0
1.63k stars 35 forks source link

Can't use Protontricks #113

Closed UltraBlackLinux closed 3 years ago

UltraBlackLinux commented 3 years ago

Describe the bug/Steps to reproduce Whenever clicking on a protontricks --gui entry, it just crashes:

protontricks (INFO): Found active custom Proton installation: Proton-stl
protontricks (INFO): WINE environment variable is not available. Setting WINE environment variable to Proton bundled version
Traceback (most recent call last):
  File "/usr/bin/protontricks", line 33, in <module>
    sys.exit(load_entry_point('protontricks==1.5.3.dev11+g5955b17', 'console_scripts', 'protontricks')())
  File "/usr/lib/python3.9/site-packages/protontricks/cli/main.py", line 199, in main
    run_command(
  File "/usr/lib/python3.9/site-packages/protontricks/util.py", line 316, in run_command
    str(proton_app.proton_dist_path / "bin" / "wine")
TypeError: unsupported operand type(s) for /: 'NoneType' and 'str'

Expected behavior It shouldn't crash

System (please complete the following information):

Additional context SteamTinkerLaunch

havarc commented 3 years ago

Nevermind, different problem.

Matoking commented 3 years ago

@UltraBlackLinux The issue here appears to be SteamTinkerLaunch that you have enabled for the Steam app. SteamTinkerLaunch/proton-stl is very different from Proton installations such as the ones that Valve ships or Proton-GE, so it's not supported by Protontricks. Protontricks did not check for this and assumed every Windows -> Linux compatibility tool was a specific kind of Proton installation, causing the error.

STL has its own launcher that should hopefully do the same as Protontricks; it can be launched from command-line using stl launcher. While it technically uses the same Proton installations that Steam installs, SteamTinkerLaunch has its own method for configuring and running Steam apps using Proton that would be difficult to support in Protontricks.

I've added a change to non_proton_tool branch to print a more readable error instead of crashing with a cryptic stack trace. If you're on pipx, you can install and test it by running:

$ pipx install --force git+https://github.com/Matoking/protontricks.git@non_proton_tool

Could you test if it prints a proper error this time around?

UltraBlackLinux commented 3 years ago

@UltraBlackLinux The issue here appears to be SteamTinkerLaunch that you have enabled for the Steam app. SteamTinkerLaunch/proton-stl is very different from Proton installations such as the ones that Valve ships or Proton-GE, so it's not supported by Protontricks. Protontricks did not check for this and assumed every Windows -> Linux compatibility tool was a specific kind of Proton installation, causing the error.

STL has its own launcher that should hopefully do the same as Protontricks; it can be launched from command-line using stl launcher. While it technically uses the same Proton installations that Steam installs, SteamTinkerLaunch has its own method for configuring and running Steam apps using Proton that would be difficult to support in Protontricks.

I've added a change to non_proton_tool branch to print a more readable error instead of crashing with a cryptic stack trace. If you're on pipx, you can install and test it by running:

$ pipx install --force git+https://github.com/Matoking/protontricks.git@non_proton_tool

Could you test if it prints a proper error this time around?

Oh well - Actually I am currently having some problems with the Proton-stl thingy, where I am not able to install directx 11 - it's also not preinstalled, while it's working with proton :/ I hoped to maybe install it with protontricks, but oh well... Thanks anyways!