[kupfer] config: Make sure we include installed DATADIR in config.get_data_file



commit 082e711f5a05ab32a1d18861c1b4a09fc0b74172
Author: Ulrik Sverdrup <ulrik sverdrup gmail com>
Date:   Sun Aug 23 04:10:10 2009 +0200

    config: Make sure we include installed DATADIR in config.get_data_file

 kupfer/config.py           |   14 +++++++++++---
 kupfer/main.py             |    2 +-
 kupfer/version_subst.py.in |    1 +
 3 files changed, 13 insertions(+), 4 deletions(-)
---
diff --git a/kupfer/config.py b/kupfer/config.py
index dd41564..b44e5ec 100644
--- a/kupfer/config.py
+++ b/kupfer/config.py
@@ -34,10 +34,18 @@ def get_data_file(filename):
 	Return path to @filename if it exists
 	anywhere in the data paths, else return None
 	"""
-	# Add "./data" in workdir for running from builddir
 	data_paths = []
-	data_paths.append("./data")
-	data_paths.extend(base.load_data_paths(PACKAGE_NAME))
+	try:
+		from . import version_subst
+	except ImportError:
+		first_datadir = "./data"
+	else:
+		first_datadir = os.path.join(version_subst.DATADIR, PACKAGE_NAME)
+
+	data_paths.append(first_datadir)
+	for data_path in base.load_data_paths(PACKAGE_NAME):
+		if not data_path in data_paths:
+			data_paths.append(data_path)
 
 	for direc in data_paths:
 		file_path = os.path.join(direc, filename)
diff --git a/kupfer/main.py b/kupfer/main.py
index 4c3944b..e84665d 100644
--- a/kupfer/main.py
+++ b/kupfer/main.py
@@ -8,7 +8,7 @@ def setup_locale_and_gettext():
 	package_name = "kupfer"
 	localedir = "./locale"
 	try:
-		import version_subst
+		from . import version_subst
 	except ImportError:
 		pass
 	else:
diff --git a/kupfer/version_subst.py.in b/kupfer/version_subst.py.in
index f165763..3747c4b 100644
--- a/kupfer/version_subst.py.in
+++ b/kupfer/version_subst.py.in
@@ -1,3 +1,4 @@
 VERSION = "@VERSION@"
 PACKAGE_NAME = "@PACKAGE@"
 LOCALEDIR = "@LOCALEDIR@"
+DATADIR = "@DATADIR@"



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]