aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pywal/colors.py4
-rw-r--r--pywal/util.py5
2 files changed, 7 insertions, 2 deletions
diff --git a/pywal/colors.py b/pywal/colors.py
index a507b41..41b2a44 100644
--- a/pywal/colors.py
+++ b/pywal/colors.py
@@ -117,10 +117,10 @@ def get(img, light=False, backend="default", cache_dir=CACHE_DIR):
# Dynamically import the backend we want to use.
# This keeps the dependencies "optional".
try:
- __import__("pywal.backends.%s" % backend)
+ util.variable_import("pywal.backends.%s" % backend)
except ImportError:
+ util.variable_import("pywal.backends.wal")
backend = "wal"
- __import__("pywal.backends.%s" % backend)
logging.info("Using %s backend.", backend)
backend = sys.modules["pywal.backends.%s" % backend]
diff --git a/pywal/util.py b/pywal/util.py
index 0c678c9..e245404 100644
--- a/pywal/util.py
+++ b/pywal/util.py
@@ -92,6 +92,11 @@ def create_dir(directory):
os.makedirs(directory, exist_ok=True)
+def variable_import(module):
+ """Import a module dynamically."""
+ __import__(module)
+
+
def setup_logging():
"""Logging config."""
logging.basicConfig(format=("[%(levelname)s\033[0m] "