sugar-toolkit-gtk3/sugar-emulator

69 lines
2.1 KiB
Plaintext
Raw Normal View History

2006-10-16 13:35:07 +02:00
#!/usr/bin/python
# Copyright (C) 2006, Red Hat, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
import os
import sys
sourcedir = os.path.abspath(os.path.dirname(__file__))
2006-10-16 13:35:07 +02:00
if os.path.isfile(os.path.join(sourcedir, 'sugar/__uninstalled__.py')):
print 'Running sugar from ' + sourcedir + ' ...'
sys.path.insert(0, sourcedir)
else:
print 'Running the installed sugar...'
sourcedir = None
2006-10-16 13:35:07 +02:00
from sugar import env
from sugar import setup
2006-10-16 13:35:07 +02:00
if sourcedir:
bin_path = sourcedir
bin_path += ';' + os.path.join(sourcedir, 'shell')
bin_path += ';' + os.path.join(sourcedir, 'services/presence')
if os.environ.has_key('PATH'):
old_path = os.environ['PATH']
os.environ['PATH'] = bin_path + ':' + old_path
else:
os.environ['PATH'] = bin_path
source = os.path.join(sourcedir, 'activities')
runner = os.path.join(sourcedir, 'shell/sugar-activity-factory')
setup.setup_activities(source, env.get_activity_info_dir(), runner)
bin = os.path.join(sourcedir,
'services/presence/sugar-presence-service')
setup.write_service('org.laptop.Presence', bin,
env.get_activity_info_dir())
2006-10-16 13:35:07 +02:00
from sugar.emulator import Emulator
program = 'sugar-shell'
fullscreen = False
for i in range(1, len(sys.argv)):
if sys.argv[i] == '-fullscreen':
fullscreen = True
else:
program = sys.argv[i]
emulator = Emulator(fullscreen)
2006-10-16 13:35:07 +02:00
emulator.start()
os.execlp('dbus-launch', 'dbus-launch', '--exit-with-session',
'--config-file=%s' % env.get_dbus_config(), program)