import socket import importlib from libqtile.log_utils import logger def load_config_class(): # Try to import host-specific configuration first hostname = socket.gethostname().lower() if hostname: try: host_module = importlib.import_module(f"kuro.config.{hostname}") return getattr(host_module, "Config") except ImportError: pass logger.warning(f"No host-specific configuration available for {hostname}. Loading general config...") # If no config yet, load general Kuro Config object try: conf_module = importlib.import_module("kuro.config") return getattr(conf_module, "Config") except ImportError as e: pass logger.error("Could not load Kuro Config. Trying to load BaseConfig. Error: {}".format(e)) # If no config yet, load fallback BaseConfig try: base_module = importlib.import_module("kuro.base") return getattr(base_module, "BaseConfig") except ImportError as e: pass return None