Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar/env.py
blob: 6d5fba052bfa32f4ca23aa0c733557936e5fc0b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import os
import sys
import pwd

try:
	from sugar.__uninstalled__ import *
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'):
		os.environ['PYTHONPATH'] += ':' + 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()
		return os.path.expanduser('~/.sugar-%s/' % nick)
	else:
		return os.path.expanduser('~/.sugar')

def get_nick_name():
	if os.environ.has_key('SUGAR_NICK_NAME'):
		return os.environ['SUGAR_NICK_NAME']
	else:
		return pwd.getpwuid(os.getuid())[0]

def get_data_dir():
	return sugar_data_dir

def get_dbus_config():
	return sugar_dbus_config

def get_data_file(filename):
	return os.path.join(get_data_dir(), filename)
		
def get_activities_dir():
	return sugar_activities_dir