diff options
author | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-12 21:35:52 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-12 21:35:52 (GMT) |
commit | bb60b8ad3eefa7d98cd0d7659860209d5c411001 (patch) | |
tree | b50182c9fbbbbad4a06cff6602387dfed71e5792 /sugar | |
parent | d41c761e022ef9858c34edae9850611215665029 (diff) |
Cleanup environemnt setup
Diffstat (limited to 'sugar')
-rw-r--r-- | sugar/Makefile.am | 3 | ||||
-rw-r--r-- | sugar/__installed__.py.in | 6 | ||||
-rw-r--r-- | sugar/__uninstalled__.py | 17 | ||||
-rw-r--r-- | sugar/env.py | 21 | ||||
-rwxr-xr-x | sugar/setup.py | 8 |
5 files changed, 47 insertions, 8 deletions
diff --git a/sugar/Makefile.am b/sugar/Makefile.am index 2a06eb4..91a7362 100644 --- a/sugar/Makefile.am +++ b/sugar/Makefile.am @@ -7,7 +7,6 @@ sugar_PYTHON = \ bots.py \ env.py \ setup.py \ - util.py \ - LogWriter.py + util.py EXTRA_DIST = __uninstalled__.py diff --git a/sugar/__installed__.py.in b/sugar/__installed__.py.in index 15e39a3..e93fd20 100644 --- a/sugar/__installed__.py.in +++ b/sugar/__installed__.py.in @@ -1,4 +1,8 @@ +sugar_source_dir = None sugar_data_dir = '@prefix@/share/sugar' -sugar_activity_runner = '@prefix@/bin/sugar-activity' sugar_activities_dir = '@prefix@/share/sugar/activities' sugar_dbus_config = '@prefix@/share/sugar/dbus-installed.conf' + +sugar_python_path = ['@prefix@/share/sugar/shell', + '@prefix@/share/sugar/activities] +sugar_bin_path = [] diff --git a/sugar/__uninstalled__.py b/sugar/__uninstalled__.py index a478e0c..b34ffaf 100644 --- a/sugar/__uninstalled__.py +++ b/sugar/__uninstalled__.py @@ -1,7 +1,16 @@ import os +import tempfile -_source_dir = os.path.dirname(os.path.dirname(__file__)) +sugar_source_dir = os.path.dirname(os.path.dirname(__file__)) -sugar_data_dir = os.path.join(_source_dir, 'shell/data') -sugar_activities_dir = os.path.join(_source_dir, 'activities') -sugar_dbus_config = os.path.join(_source_dir, 'dbus-uninstalled.conf') +sugar_data_dir = os.path.join(sugar_source_dir, 'shell/data') +sugar_activities_dir = os.path.join(tempfile.gettempdir(), 'sugar') +sugar_dbus_config = os.path.join(sugar_source_dir, 'dbus-uninstalled.conf') + +sugar_python_path = [] +sugar_python_path.append(sugar_source_dir) +sugar_python_path.append(os.path.join(sugar_source_dir, 'shell')) +sugar_python_path.append(os.path.join(sugar_source_dir, 'activities')) + +sugar_bin_path = [] +sugar_bin_path.append(os.path.join(sugar_source_dir, 'shell')) diff --git a/sugar/env.py b/sugar/env.py index cbfd6c8..6d5fba0 100644 --- a/sugar/env.py +++ b/sugar/env.py @@ -7,6 +7,8 @@ try: except ImportError: from sugar.__installed__ import * +import sugar.setup + def add_to_python_path(path): sys.path.insert(0, path) if os.environ.has_key('PYTHONPATH'): @@ -14,6 +16,25 @@ def add_to_python_path(path): else: os.environ['PYTHONPATH'] = path +def add_to_bin_path(path): + if os.environ.has_key('PATH'): + old_path = os.environ['PATH'] + os.environ['PATH'] = path + ':' + old_path + else: + os.environ['PATH'] = path + +def setup(): + for path in sugar_python_path: + add_to_python_path(path) + + for path in sugar_bin_path: + add_to_bin_path(path) + + if sugar_source_dir: + source = os.path.join(sugar_source_dir, 'activities') + runner = os.path.join(sugar_source_dir, 'shell/sugar-activity-factory') + sugar.setup.setup_activities(source, get_activities_dir(), runner) + def get_user_dir(): if os.environ.has_key('SUGAR_NICK_NAME'): nick = get_nick_name() diff --git a/sugar/setup.py b/sugar/setup.py index 05dacb3..ba5d750 100755 --- a/sugar/setup.py +++ b/sugar/setup.py @@ -48,7 +48,13 @@ def setup_activity(source, dest_path, bin): fileobject.close() def setup_activities(source_path, dest_path, bin): - """Scan a directory for activities and install them.""" + """Scan a directory for activities and install them.""" + if not os.path.isdir(dest_path): + os.mkdir(dest_path) + else: + # FIXME delete the whole directory + pass + if os.path.isdir(source_path): for filename in os.listdir(source_path): activity_dir = os.path.join(source_path, filename) |