From a329299b3cb9a0d800a90f8d0d374c36ebe5f79a Mon Sep 17 00:00:00 2001 From: Nose Date: Thu, 22 Jan 2026 12:11:05 -0800 Subject: [PATCH] h --- docs/img/hydrus/review-services.png | Bin 0 -> 63985 bytes scripts/run_client.py | 29 +++++++++++++++++++++------- 2 files changed, 22 insertions(+), 7 deletions(-) create mode 100644 docs/img/hydrus/review-services.png diff --git a/docs/img/hydrus/review-services.png b/docs/img/hydrus/review-services.png new file mode 100644 index 0000000000000000000000000000000000000000..9f6c61f83d5bae503aee10e5ab275e76fd0352e8 GIT binary patch literal 63985 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 z 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 literal 0 HcmV?d00001 diff --git a/scripts/run_client.py b/scripts/run_client.py index 7c29576..d2c7458 100644 --- a/scripts/run_client.py +++ b/scripts/run_client.py @@ -137,6 +137,9 @@ def parse_requirements_file(req_path: Path) -> List[str]: def verify_imports(venv_py: Path, packages: List[str]) -> bool: + # Skip mpv check as it is problematic to install and causes slow startups + packages = [p for p in packages if p.lower() != "mpv"] + # Map some package names to import names (handle common cases where package name differs from import name) import_map = { "pyyaml": "yaml", @@ -150,7 +153,6 @@ def verify_imports(venv_py: Path, packages: List[str]) -> bool: "service-identity": "service_identity", "show-in-file-manager": "showinfm", "opencv-python-headless": "cv2", - "mpv": "mpv", "pyside6": "PySide6", } @@ -1018,16 +1020,29 @@ def main(argv: Optional[List[str]] = None) -> int: print("Failed to launch client detached:", exc) return 5 else: + p = None try: - # If headless on Windows, ensure no window shows even for foreground run + # On Windows, if we are already using pythonw.exe, we don't need CREATE_NO_WINDOW + # as the process already has no console. Avoiding extra flags helps with + # service termination mapping. kwargs = {} - if os.name == "nt" and headless: + if os.name == "nt" and headless and "pythonw.exe" not in str(venv_py).lower(): kwargs["creationflags"] = 0x08000000 - subprocess.run(cmd, cwd=str(cwd), env=env, **kwargs) - return 0 - except subprocess.CalledProcessError as e: - print("hydrus client exited non-zero:", e) + + p = subprocess.Popen(cmd, cwd=str(cwd), env=env, **kwargs) + p.wait() + return p.returncode + except Exception as e: + if not args.quiet: + print(f"Hydrus client error: {e}") return 5 + finally: + # Ensure the child process is terminated if the monitor process is killed + if p and p.poll() is None: + try: + p.terminate() + except Exception: + pass if __name__ == "__main__":