Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/debian/patches/0001_fix_system_activity_locale_path.patch
blob: 2dd0261d5f605aed69fdc5e31fbfa99c840c74d9 (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
diff --git a/src/sugar/activity/activityfactory.py b/src/sugar/activity/activityfactory.py
--- a/src/sugar/activity/activityfactory.py
+++ b/src/sugar/activity/activityfactory.py
@@ -116,6 +116,9 @@ def get_environment(activity):
     environ['PATH'] = bin_path + ':' + environ['PATH']
     #environ['RAINBOW_STRACE_LOG'] = '1'
 
+    if activity.path.startswith(env.get_user_activities_path()):
+        environ['SUGAR_LOCALEDIR'] = os.path.join(activity.path, 'locale')
+
     if activity.bundle_id in [ 'org.laptop.WebActivity', 
                                'org.laptop.GmailActivity',
                                'org.laptop.WikiBrowseActivity'
diff --git a/src/sugar/activity/main.py b/src/sugar/activity/main.py
--- a/src/sugar/activity/main.py
+++ b/src/sugar/activity/main.py
@@ -89,8 +89,11 @@ def main():
 
     gtk.icon_theme_get_default().append_search_path(bundle.get_icons_path())
 
-    gettext.bindtextdomain(bundle.get_bundle_id(),
-                           bundle.get_locale_path())
+    locale_path = None
+    if 'SUGAR_LOCALEDIR' in os.environ:
+        locale_path = os.environ['SUGAR_LOCALEDIR']
+
+    gettext.bindtextdomain(bundle.get_bundle_id(), locale_path)
     gettext.textdomain(bundle.get_bundle_id())
 
     splitted_module = args[0].rsplit('.', 1)