diff options
Diffstat (limited to 'sugar/session')
-rw-r--r-- | sugar/session/DbusProcess.py | 37 | ||||
-rw-r--r-- | sugar/session/Emulator.py | 87 | ||||
-rw-r--r-- | sugar/session/Makefile.am | 9 | ||||
-rw-r--r-- | sugar/session/MatchboxProcess.py | 35 | ||||
-rw-r--r-- | sugar/session/Process.py | 36 | ||||
-rw-r--r-- | sugar/session/TestSession.py | 26 | ||||
-rw-r--r-- | sugar/session/UITestSession.py | 38 | ||||
-rw-r--r-- | sugar/session/__init__.py | 0 |
8 files changed, 0 insertions, 268 deletions
diff --git a/sugar/session/DbusProcess.py b/sugar/session/DbusProcess.py deleted file mode 100644 index fb3246e..0000000 --- a/sugar/session/DbusProcess.py +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright (C) 2006, Red Hat, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -import os - -from sugar.session.Process import Process -from sugar import env - -class DbusProcess(Process): - def __init__(self): - config = env.get_dbus_config() - cmd = "dbus-daemon --print-address --config-file %s" % config - Process.__init__(self, cmd) - - def get_name(self): - return 'Dbus' - - def start(self): - Process.start(self, True) - dbus_file = os.fdopen(self._stdout) - addr = dbus_file.readline().strip() - dbus_file.close() - os.environ["DBUS_SESSION_BUS_ADDRESS"] = addr diff --git a/sugar/session/Emulator.py b/sugar/session/Emulator.py deleted file mode 100644 index 4468509..0000000 --- a/sugar/session/Emulator.py +++ /dev/null @@ -1,87 +0,0 @@ -# Copyright (C) 2006, Red Hat, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -import os -import socket -import sys - -from sugar.session.Process import Process -import sugar.env - -def get_display_number(): - """Find a free display number trying to connect to 6000+ ports""" - retries = 20 - display_number = 1 - display_is_free = False - - while not display_is_free and retries > 0: - s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - try: - s.connect(('127.0.0.1', 6000 + display_number)) - s.close() - - display_number += 1 - retries -= 1 - except: - display_is_free = True - - if display_is_free: - return display_number - else: - logging.error('Cannot find a free display.') - sys.exit(0) - -class XephyrProcess(Process): - def __init__(self): - self._display = get_display_number() - cmd = 'Xephyr :%d -ac -screen 800x600' % (self._display) - Process.__init__(self, cmd) - - def get_name(self): - return 'Xephyr' - - def start(self): - Process.start(self) - os.environ['DISPLAY'] = ":%d" % (self._display) - -class XnestProcess(Process): - def __init__(self): - self._display = get_display_number() - cmd = 'Xnest :%d -ac -geometry 800x600' % (self._display) - Process.__init__(self, cmd) - - def get_name(self): - return 'Xnest' - - def start(self): - Process.start(self) - os.environ['DISPLAY'] = ":%d" % (self._display) - -class Emulator: - """The OLPC emulator""" - def start(self): - try: - process = XephyrProcess() - process.start() - except: - try: - process = XnestProcess() - process.start() - except: - print 'Cannot run the emulator. You need to install \ - Xephyr or Xnest.' - sys.exit(0) diff --git a/sugar/session/Makefile.am b/sugar/session/Makefile.am deleted file mode 100644 index 8c1e4f7..0000000 --- a/sugar/session/Makefile.am +++ /dev/null @@ -1,9 +0,0 @@ -sugardir = $(pythondir)/sugar/session -sugar_PYTHON = \ - __init__.py \ - DbusProcess.py \ - Emulator.py \ - MatchboxProcess.py \ - Process.py \ - TestSession.py \ - UITestSession.py diff --git a/sugar/session/MatchboxProcess.py b/sugar/session/MatchboxProcess.py deleted file mode 100644 index b6a7e35..0000000 --- a/sugar/session/MatchboxProcess.py +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (C) 2006, Red Hat, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -import os - -from sugar.session.Process import Process -from sugar import env - -class MatchboxProcess(Process): - def __init__(self): - kbd_config = os.path.join(env.get_data_dir(), 'kbdconfig') - options = '-kbdconfig %s ' % kbd_config - - options += '-use_titlebar no ' - options += '-theme olpc ' - - command = 'matchbox-window-manager %s ' % options - Process.__init__(self, command) - - def get_name(self): - return 'Matchbox' diff --git a/sugar/session/Process.py b/sugar/session/Process.py deleted file mode 100644 index 80bed1a..0000000 --- a/sugar/session/Process.py +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (C) 2006, Red Hat, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -import logging - -import gobject - -class Process: - """Object representing one of the session processes""" - - def __init__(self, command): - self._command = command - - def get_name(self): - return self._command - - def start(self, standard_output=False): - args = self._command.split() - flags = gobject.SPAWN_SEARCH_PATH - result = gobject.spawn_async(args, flags=flags, - standard_output=standard_output) - self._stdout = result[2] diff --git a/sugar/session/TestSession.py b/sugar/session/TestSession.py deleted file mode 100644 index 2381548..0000000 --- a/sugar/session/TestSession.py +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (C) 2006, Red Hat, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -from sugar.session.DbusProcess import DbusProcess -from sugar import env - -class TestSession: - def start(self): - env.setup_python_path() - - process = DbusProcess() - process.start() diff --git a/sugar/session/UITestSession.py b/sugar/session/UITestSession.py deleted file mode 100644 index 1daf9d0..0000000 --- a/sugar/session/UITestSession.py +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (C) 2006, Red Hat, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library 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 -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the -# Free Software Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -import os - -from sugar.session.DbusProcess import DbusProcess -from sugar.session.MatchboxProcess import MatchboxProcess -from sugar.session.Emulator import Emulator -from sugar import env - -class UITestSession: - def start(self): - env.setup_python_path() - - if os.environ.has_key('SUGAR_EMULATOR') and \ - os.environ['SUGAR_EMULATOR'] == 'yes': - emulator = Emulator() - emulator.start() - - process = MatchboxProcess() - process.start() - - process = DbusProcess() - process.start() diff --git a/sugar/session/__init__.py b/sugar/session/__init__.py deleted file mode 100644 index e69de29..0000000 --- a/sugar/session/__init__.py +++ /dev/null |