From 31b67050170a15112c31fbd3a390ff9934d90ebf Mon Sep 17 00:00:00 2001 From: aclist <92275929+aclist@users.noreply.github.com> Date: Wed, 21 Oct 2026 12:40:03 +0900 Subject: [PATCH] change: parse client from path --- dzgui/init/proc.py | 9 +++++++-- dzgui/views/dialogs/wizard.py | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/dzgui/init/proc.py b/dzgui/init/proc.py index 9be760f..1104433 100644 --- a/dzgui/init/proc.py +++ b/dzgui/init/proc.py @@ -3,6 +3,8 @@ import subprocess import shutil import logging +from pathlib import Path + from dzgui.const.constants import ( APP_NAME, STEAM_CMD, @@ -29,8 +31,6 @@ def is_steam_running(cmd: str) -> bool: raise TypeError("Not a valid Steam client selection") -# CHORE: test alternate clients -# TODO: has_flatpak_steam def is_flatpak_steam_running() -> bool: if has_cmd(FLATPAK_CMD) is False: return False @@ -54,3 +54,8 @@ def has_cmd(cmd: str) -> bool: if shutil.which(cmd) is not None: return True return False + + +def path_to_steam_cmd(path: Path) -> str: + cmd = FLATPAK_RUN_CMD if FLATPAK_STEAM_PATH in path else STEAM_CMD + return cmd diff --git a/dzgui/views/dialogs/wizard.py b/dzgui/views/dialogs/wizard.py index b755b4a..dcb4784 100644 --- a/dzgui/views/dialogs/wizard.py +++ b/dzgui/views/dialogs/wizard.py @@ -11,12 +11,16 @@ from dzgui.api.steam import get_steam_paths from dzgui.const.constants import ( APP_NAME, APP_NAME_LOWER, + FLATPAK_RUN_CMD, + FLATPAK_STEAM_PATH, HERO_PATH, LEGACY_CONFIG_PATH, + STEAM_CMD, ) from dzgui.const.boilerplate import config_boilerplate from dzgui.const.endpoints import STEAM_API_SETUP from dzgui.config import freedesktop +from dzgui.init.proc import path_to_steam_cmd from dzgui.init.migrate import migrate_legacy_conf from dzgui.managers.threading import call_on_thread, StoredFunc, ThreadingManager from dzgui.strings import wizard @@ -499,7 +503,9 @@ class Assistant(Gtk.Assistant): self.config_values = self.page_migration.migrated_conf return self.get_final_page() case SteamPathPage(): - self.config_values["default_steam_path"] = page.get_path_from_radio() + path = page.get_path_from_radio() + self.config_values["default_steam_path"] = path + self.config_values["client"] = path_to_steam_cmd(path) case SteamValidationPage(): self.config_values["steam_api"] = page.get_api_key() case PreferencesPage(): @@ -507,7 +513,6 @@ class Assistant(Gtk.Assistant): name, use_miles, client = self.page_prefs.get_prefs() self.config_values["name"] = name self.config_values["use_miles"] = use_miles - self.config_values["client"] = client self.page_shortcuts.set_steam_path( self.config_values["default_steam_path"] )