diff --git a/kiauh/modules/klipper/__init__.py b/kiauh/modules/klipper/__init__.py index e69de29..a9b4efc 100644 --- a/kiauh/modules/klipper/__init__.py +++ b/kiauh/modules/klipper/__init__.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python + +# ======================================================================= # +# Copyright (C) 2020 - 2023 Dominik Willner # +# # +# This file is part of KIAUH - Klipper Installation And Update Helper # +# https://github.com/dw-0/kiauh # +# # +# This file may be distributed under the terms of the GNU GPLv3 license # +# ======================================================================= # + +from pathlib import Path + +KLIPPER_DIR = f"{Path.home()}/klipper" +KLIPPER_ENV_DIR = f"{Path.home()}/klippy-env" +KLIPPER_REQUIREMENTS_TXT = f"{KLIPPER_DIR}/scripts/klippy-requirements.txt" +DEFAULT_KLIPPER_REPO_URL = "https://github.com/Klipper3D/klipper" + +EXIT_KLIPPER_SETUP = "Exiting Klipper setup ..." diff --git a/kiauh/modules/klipper/klipper.py b/kiauh/modules/klipper/klipper.py index 5c187e2..01c92a0 100644 --- a/kiauh/modules/klipper/klipper.py +++ b/kiauh/modules/klipper/klipper.py @@ -16,7 +16,8 @@ from pathlib import Path from typing import List from kiauh.instance_manager.base_instance import BaseInstance -from kiauh.utils.constants import CURRENT_USER, SYSTEMD, KLIPPER_DIR, KLIPPER_ENV_DIR +from kiauh.modules.klipper import KLIPPER_DIR, KLIPPER_ENV_DIR +from kiauh.utils.constants import CURRENT_USER, SYSTEMD from kiauh.utils.logger import Logger from kiauh.utils.system_utils import create_directory diff --git a/kiauh/modules/klipper/klipper_setup.py b/kiauh/modules/klipper/klipper_setup.py index 5c41c40..b9d6b43 100644 --- a/kiauh/modules/klipper/klipper_setup.py +++ b/kiauh/modules/klipper/klipper_setup.py @@ -16,6 +16,13 @@ from typing import List, Union from kiauh.config_manager.config_manager import ConfigManager from kiauh.instance_manager.instance_manager import InstanceManager +from kiauh.modules.klipper import ( + EXIT_KLIPPER_SETUP, + DEFAULT_KLIPPER_REPO_URL, + KLIPPER_DIR, + KLIPPER_ENV_DIR, + KLIPPER_REQUIREMENTS_TXT, +) from kiauh.modules.klipper.klipper import Klipper from kiauh.modules.klipper.klipper_dialogs import ( print_instance_overview, @@ -30,7 +37,6 @@ from kiauh.modules.klipper.klipper_utils import ( handle_single_to_multi_conversion, ) from kiauh.repo_manager.repo_manager import RepoManager -from kiauh.utils.constants import KLIPPER_DIR, KLIPPER_ENV_DIR from kiauh.utils.input_utils import ( get_confirm, get_number_input, @@ -59,7 +65,7 @@ def run_klipper_setup(install: bool) -> None: if install: add_additional = handle_existing_instances(instance_manager) if is_klipper_installed and not add_additional: - Logger.print_info("Exiting Klipper setup ...") + Logger.print_info(EXIT_KLIPPER_SETUP) return install_klipper(instance_manager) @@ -100,12 +106,12 @@ def install_klipper(instance_manager: InstanceManager) -> None: question = f"Number of{' additional' if len(instance_list) > 0 else ''} Klipper instances to set up" install_count = get_number_input(question, 1, default=1, allow_go_back=True) if install_count is None: - Logger.print_info("Exiting Klipper setup ...") + Logger.print_info(EXIT_KLIPPER_SETUP) return instance_names = set_instance_names(instance_list, install_count) if instance_names is None: - Logger.print_info("Exiting Klipper setup ...") + Logger.print_info(EXIT_KLIPPER_SETUP) return if len(instance_list) < 1: @@ -143,10 +149,7 @@ def setup_klipper_prerequesites() -> None: cm = ConfigManager() cm.read_config() - repo = str( - cm.get_value("klipper", "repository_url") - or "https://github.com/Klipper3D/klipper" - ) + repo = str(cm.get_value("klipper", "repository_url") or DEFAULT_KLIPPER_REPO_URL) branch = str(cm.get_value("klipper", "branch") or "master") repo_manager = RepoManager( @@ -159,7 +162,7 @@ def setup_klipper_prerequesites() -> None: # install klipper dependencies and create python virtualenv install_klipper_packages(Path(KLIPPER_DIR)) create_python_venv(Path(KLIPPER_ENV_DIR)) - klipper_py_req = Path(f"{KLIPPER_DIR}/scripts/klippy-requirements.txt") + klipper_py_req = Path(KLIPPER_REQUIREMENTS_TXT) install_python_requirements(Path(KLIPPER_ENV_DIR), klipper_py_req) diff --git a/kiauh/utils/constants.py b/kiauh/utils/constants.py index f795697..60662ce 100644 --- a/kiauh/utils/constants.py +++ b/kiauh/utils/constants.py @@ -12,8 +12,6 @@ import os import pwd -from pathlib import Path - # text colors and formats COLOR_MAGENTA = "\033[35m" # magenta COLOR_GREEN = "\033[92m" # bright green @@ -21,15 +19,6 @@ COLOR_YELLOW = "\033[93m" # bright yellow COLOR_RED = "\033[91m" # bright red COLOR_CYAN = "\033[96m" # bright cyan RESET_FORMAT = "\033[0m" # reset format - # current user CURRENT_USER = pwd.getpwuid(os.getuid())[0] - SYSTEMD = "/etc/systemd/system" - -KLIPPER_DIR = f"{Path.home()}/klipper" -KLIPPER_ENV_DIR = f"{Path.home()}/klippy-env" -MOONRAKER_DIR = f"{Path.home()}/moonraker" -MOONRAKER_ENV_DIR = f"{Path.home()}/moonraker-env" -MAINSAIL_DIR = f"{Path.home()}/mainsail" -FLUIDD_DIR = f"{Path.home()}/fluidd"