Unify configs so we can get rid of all those branches per machine. Also Wayland changes for Violet
This commit is contained in:
parent
5a0041e7d5
commit
6dd362247e
10 changed files with 274 additions and 105 deletions
|
@ -0,0 +1,30 @@
|
|||
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
|
Loading…
Add table
Add a link
Reference in a new issue