Switcher to minimal launcher, which will fix launch issues
authorEd Page <eopage@byu.net>
Fri, 25 Dec 2009 16:23:52 +0000 (10:23 -0600)
committerEd Page <eopage@byu.net>
Fri, 25 Dec 2009 16:23:52 +0000 (10:23 -0600)
src/telepathy-theonering
src/theonering.py [new file with mode: 0755]

index f80f22b..fa072c9 100755 (executable)
@@ -1,113 +1,9 @@
-#!/usr/bin/env python
+#!/usr/bin/python
 
-"""
-Telepathy-TheOneRing - Telepathy plugin for GoogleVoice
-Copyright (C) 2009  Ed Page eopage AT byu DOT net
-
-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.1 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-"""
-
-import os
 import sys
-import signal
-import logging
-import gobject
-
-import dbus.glib
-import telepathy.utils as telepathy_utils
-
-import util.linux as linux_utils
-import util.go_utils as gobject_utils
-import constants
-import connection_manager
-
-
-IDLE_TIMEOUT = 5000
-
-
-def run_theonering(persist):
-       linux_utils.set_process_name(constants.__app_name__)
-
-       try:
-               os.makedirs(constants._data_path_)
-       except OSError, e:
-               if e.errno != 17:
-                       raise
-
-       @gobject_utils.async
-       def quit():
-               manager.quit()
-               mainloop.quit()
-
-       def timeout_cb():
-               if len(manager._connections) == 0:
-                       logging.info('No connection received - quitting')
-                       quit()
-               return False
-
-       if persist:
-               shutdown_callback = None
-       else:
-               gobject.timeout_add(IDLE_TIMEOUT, timeout_cb)
-               shutdown_callback = quit
-
-       signal.signal(signal.SIGTERM, quit)
-
-       try:
-               manager = connection_manager.TheOneRingConnectionManager(shutdown_func=shutdown_callback)
-       except dbus.exceptions.NameExistsException:
-               logging.warning('Failed to acquire bus name, connection manager already running?')
-               sys.exit(1)
-
-       mainloop = gobject.MainLoop(is_running=True)
-
-       while mainloop.is_running():
-               try:
-                       mainloop.run()
-               except KeyboardInterrupt:
-                       quit()
-
-
-def main(logToFile):
-       try:
-               os.makedirs(constants._data_path_)
-       except OSError, e:
-               if e.errno != 17:
-                       raise
-
-       telepathy_utils.debug_divert_messages(os.getenv('THEONERING_LOGFILE'))
-       if logToFile:
-               logging.basicConfig(
-                       level=logging.DEBUG,
-                       format='(%(asctime)s) %(levelname)s:%(name)s:%(message)s',
-                       datefmt='%H:%M:%S',
-               )
-       else:
-               logging.basicConfig(level=logging.DEBUG, filename=constants._user_logpath_)
-       logging.info("telepathy-theonering %s-%s" % (constants.__version__, constants.__build__))
-       logging.info("OS: %s" % (os.uname()[0], ))
-       logging.info("Kernel: %s (%s) for %s" % os.uname()[2:])
-       logging.info("Hostname: %s" % os.uname()[1])
+sys.path.insert(0,"/usr/lib/theonering/")
 
-       persist = 'THEONERING_PERSIST' in os.environ
-       persist = True
 
-       try:
-               run_theonering(persist)
-       finally:
-               logging.shutdown()
+import theonering
 
-if __name__ == "__main__":
-       main(False)
+theonering.main(logToFile=True)
diff --git a/src/theonering.py b/src/theonering.py
new file mode 100755 (executable)
index 0000000..58b00fe
--- /dev/null
@@ -0,0 +1,114 @@
+#!/usr/bin/env python
+
+"""
+Telepathy-TheOneRing - Telepathy plugin for GoogleVoice
+Copyright (C) 2009  Ed Page eopage AT byu DOT net
+
+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.1 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+"""
+
+import os
+import sys
+import signal
+import logging
+import gobject
+
+import dbus.glib
+import telepathy.utils as telepathy_utils
+
+import util.linux as linux_utils
+import util.go_utils as gobject_utils
+import constants
+import connection_manager
+
+
+IDLE_TIMEOUT = 5000
+
+
+def run_theonering(persist):
+       linux_utils.set_process_name(constants.__app_name__)
+
+       try:
+               os.makedirs(constants._data_path_)
+       except OSError, e:
+               if e.errno != 17:
+                       raise
+
+       @gobject_utils.async
+       def quit():
+               manager.quit()
+               mainloop.quit()
+
+       def timeout_cb():
+               if len(manager._connections) == 0:
+                       logging.info('No connection received - quitting')
+                       quit()
+               return False
+
+       if persist:
+               shutdown_callback = None
+       else:
+               gobject.timeout_add(IDLE_TIMEOUT, timeout_cb)
+               shutdown_callback = quit
+
+       signal.signal(signal.SIGTERM, quit)
+
+       try:
+               manager = connection_manager.TheOneRingConnectionManager(shutdown_func=shutdown_callback)
+       except dbus.exceptions.NameExistsException:
+               logging.warning('Failed to acquire bus name, connection manager already running?')
+               sys.exit(1)
+
+       mainloop = gobject.MainLoop(is_running=True)
+
+       while mainloop.is_running():
+               try:
+                       mainloop.run()
+               except KeyboardInterrupt:
+                       quit()
+
+
+def main(logToFile):
+       try:
+               os.makedirs(constants._data_path_)
+       except OSError, e:
+               if e.errno != 17:
+                       raise
+
+       telepathy_utils.debug_divert_messages(os.getenv('THEONERING_LOGFILE'))
+       if logToFile:
+               logging.basicConfig(
+                       level=logging.DEBUG,
+                       format='(%(asctime)s) %(levelname)s:%(name)s:%(message)s',
+                       datefmt='%H:%M:%S',
+               )
+       else:
+               logging.basicConfig(level=logging.DEBUG, filename=constants._user_logpath_)
+       logging.info("telepathy-theonering %s-%s" % (constants.__version__, constants.__build__))
+       logging.info("OS: %s" % (os.uname()[0], ))
+       logging.info("Kernel: %s (%s) for %s" % os.uname()[2:])
+       logging.info("Hostname: %s" % os.uname()[1])
+
+       persist = 'THEONERING_PERSIST' in os.environ
+       persist = True
+
+       try:
+               run_theonering(persist)
+       finally:
+               logging.shutdown()
+
+
+if __name__ == "__main__":
+       main(False)