From 43d6598be6db526832c9a8cd79b7c3da83e410b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20W=C3=BCrthner?= <5859228+crysxd@users.noreply.github.com> Date: Sat, 5 Oct 2024 12:35:14 +0200 Subject: [PATCH] fix: remove octoapp_store dir when uninstalling (#562) Co-authored-by: dw-0 --- kiauh/extensions/octoapp/__init__.py | 1 - kiauh/extensions/octoapp/octoapp_extension.py | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/kiauh/extensions/octoapp/__init__.py b/kiauh/extensions/octoapp/__init__.py index eb76fe4..d7ea5d4 100644 --- a/kiauh/extensions/octoapp/__init__.py +++ b/kiauh/extensions/octoapp/__init__.py @@ -14,7 +14,6 @@ OA_REPO = "https://github.com/crysxd/OctoApp-Plugin.git" # directories OA_DIR = Path.home().joinpath("octoapp") OA_ENV_DIR = Path.home().joinpath("octoapp-env") -OA_STORE_DIR = OA_DIR.joinpath("octoapp-store") # files OA_REQ_FILE = OA_DIR.joinpath("requirements.txt") diff --git a/kiauh/extensions/octoapp/octoapp_extension.py b/kiauh/extensions/octoapp/octoapp_extension.py index c5d293d..3789145 100644 --- a/kiauh/extensions/octoapp/octoapp_extension.py +++ b/kiauh/extensions/octoapp/octoapp_extension.py @@ -10,6 +10,7 @@ import json from typing import List from components.moonraker.moonraker import Moonraker +from components.klipper.klipper import Klipper from core.instance_manager.instance_manager import InstanceManager from core.logger import DialogType, Logger from extensions.base_extension import BaseExtension @@ -131,6 +132,7 @@ class OctoappExtension(BaseExtension): try: self._remove_OA_instances(ob_instances) + self._remove_OA_store_dirs() self._remove_OA_dir() self._remove_OA_env() remove_config_section(f"include {OA_SYS_CFG_NAME}", mr_instances) @@ -181,6 +183,21 @@ class OctoappExtension(BaseExtension): run_remove_routines(OA_DIR) + + def _remove_OA_store_dirs(self) -> None: + Logger.print_status("Removing OctoApp for Klipper store directory ...") + + klipper_instances: List[Moonraker] = get_instances(Klipper) + + for instance in klipper_instances: + store_dir = instance.data_dir.joinpath("octoapp-store") + if not store_dir.exists(): + Logger.print_info(f"'{store_dir}' does not exist. Skipped ...") + return + + run_remove_routines(store_dir) + + def _remove_OA_env(self) -> None: Logger.print_status("Removing OctoApp for Klipper environment ...")