From: Sascha Silbe <sascha@silbe.org>
Subject: [PATCH] don't use rainbow if it has been uninstalled, but the config file remains (#1317)
Some distros retain config files after removing packages, so /etc/olpc-security
might exist even if rainbow is not installed.
Signed-off-by: Sascha Silbe <sascha@silbe.org>
---
src/sugar/activity/activityfactory.py | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/src/sugar/activity/activityfactory.py b/src/sugar/activity/activityfactory.py
index ee0fd92..30fd14b 100644
a
|
b
|
class ActivityCreationHandler(gobject.GObject): |
244 | 244 | self._handle.object_id, |
245 | 245 | self._handle.uri) |
246 | 246 | |
| 247 | dev_null = file('/dev/null', 'w') |
247 | 248 | environment_dir = None |
248 | | if os.path.exists('/etc/olpc-security'): |
| 249 | rainbow_found = subprocess.call(['which', 'rainbow-run'], |
| 250 | stdout=dev_null, stderr=dev_null) == 0 |
| 251 | use_rainbow = rainbow_found and os.path.exists('/etc/olpc-security') |
| 252 | if use_rainbow: |
249 | 253 | environment_dir = tempfile.mkdtemp() |
250 | 254 | command = ['/usr/bin/sudo', '-E', '--', |
251 | 255 | '/usr/bin/rainbow-run', |