Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bin/sugar-launch17
-rw-r--r--lib/sugar/env.py3
2 files changed, 15 insertions, 5 deletions
diff --git a/bin/sugar-launch b/bin/sugar-launch
index e47cb1e..a0a5387 100644
--- a/bin/sugar-launch
+++ b/bin/sugar-launch
@@ -42,12 +42,25 @@ if len(activities) == 0:
activity = activities[0]
cmd_args = activityfactory.get_command(activity)
+def _which(exec_file):
+ if 'PATH' in os.environ:
+ envpath = os.environ['PATH']
+ else:
+ envpath = defpath
+
+ for path in envpath.split(os.pathsep):
+ fullname = os.path.join(path, exec_file)
+ if os.path.exists(fullname):
+ return fullname
+
+ return None
+
def _get_interpreter(exec_file):
if os.path.exists(exec_file):
abs_path = exec_file
else:
- abs_path = os.path.join(env.get_bin_path(), exec_file)
- if not os.path.exists(abs_path):
+ abs_path = _which(exec_file)
+ if not abs_path:
return exec_file
f = open(abs_path)
diff --git a/lib/sugar/env.py b/lib/sugar/env.py
index 33b57f3..a067cb8 100644
--- a/lib/sugar/env.py
+++ b/lib/sugar/env.py
@@ -80,9 +80,6 @@ def get_user_library_path():
def get_locale_path(path=None):
return get_prefix_path('share/locale', path)
-def get_bin_path(path=None):
- return get_prefix_path('bin', path)
-
def get_service_path(name):
return _get_sugar_path('services', name)