diff --git a/CHANGELOG.md b/CHANGELOG.md index 549e283..7cdf9c6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Add support for new Steam library configuration file. + ## [1.7.5] - 2022-10-27 ### Added diff --git a/hephaistos/helpers.py b/hephaistos/helpers.py index f2dbced..66b7c15 100644 --- a/hephaistos/helpers.py +++ b/hephaistos/helpers.py @@ -80,13 +80,17 @@ class HadesNotFound(FileNotFoundError): ... TRY_STEAM = { Platform.WINDOWS: [ + os.path.expandvars(r'%programfiles%\Steam\config'), + os.path.expandvars(r'%programfiles(x86)%\Steam\config'), os.path.expandvars(r'%programfiles%\Steam\steamapps'), os.path.expandvars(r'%programfiles(x86)%\Steam\steamapps'), ], Platform.MACOS: [ + os.path.expanduser(r'~/Library/Application Support/Steam/config'), os.path.expanduser(r'~/Library/Application Support/Steam/SteamApps'), ], Platform.LINUX: [ # Proton wrapper library path + os.path.expanduser(r'~/.steam/steam/config'), os.path.expanduser(r'~/.steam/steam/steamapps'), ], } @@ -142,7 +146,7 @@ def try_detect_hades_dirs() -> list[Path]: potential_hades_dirs.append(Path(heroic_config_json['Min']['install_path'])) except KeyError: pass - return [hades_dir for hades_dir in potential_hades_dirs if hades_dir.exists() and is_valid_hades_dir(hades_dir, False)] + return set([hades_dir for hades_dir in potential_hades_dirs if hades_dir.exists() and is_valid_hades_dir(hades_dir, False)]) def __try_windows_save_dirs() -> list[Path]: