ulwgl_run: refactor logic for PROTONPATH

- Prioritize checking the Proton version first instead of including the logic as apart of fetching the Proton. This way, we also allow clients to assign other Proton forks such as GE-Proton instead of strictly ULWGL-Proton.
This commit is contained in:
R1kaB3rN 2024-02-23 16:55:54 -08:00
parent ac684f4262
commit aaf76af54b
No known key found for this signature in database

View File

@ -120,25 +120,29 @@ def check_env(
env["WINEPREFIX"] = os.environ["WINEPREFIX"] env["WINEPREFIX"] = os.environ["WINEPREFIX"]
if "PROTONPATH" not in os.environ: # Proton Version
os.environ["PROTONPATH"] = "" if (
get_ulwgl_proton(env) "PROTONPATH" in os.environ
elif ( and os.environ["PROTONPATH"]
Path("~/.local/share/Steam/compatibilitytools.d/" + os.environ["PROTONPATH"]) and Path(
"~/.local/share/Steam/compatibilitytools.d/" + os.environ["PROTONPATH"]
)
.expanduser() .expanduser()
.is_dir() .is_dir()
): ):
env["PROTONPATH"] = ( log.debug(msg("Proton version selected", Level.DEBUG))
Path("~/.local/share/Steam/compatibilitytools.d/") os.environ["PROTONPATH"] = (
.expanduser() Path("~/.local/share/Steam/compatibilitytools.d")
.joinpath(os.environ["PROTONPATH"]) .joinpath(os.environ["PROTONPATH"])
.expanduser()
.as_posix() .as_posix()
) )
elif not Path(os.environ["PROTONPATH"]).expanduser().is_dir():
if "PROTONPATH" not in os.environ:
os.environ["PROTONPATH"] = "" os.environ["PROTONPATH"] = ""
get_ulwgl_proton(env) get_ulwgl_proton(env)
else:
env["PROTONPATH"] = os.environ["PROTONPATH"] env["PROTONPATH"] = os.environ["PROTONPATH"]
# If download fails/doesn't exist in the system, raise an error # If download fails/doesn't exist in the system, raise an error
if not os.environ["PROTONPATH"]: if not os.environ["PROTONPATH"]: