Make the shell scripts just a tiny wrapper which setup
the python path and run main().
This commit is contained in:
		
							parent
							
								
									29fb25407f
								
							
						
					
					
						commit
						dbe42ac6d9
					
				
							
								
								
									
										3
									
								
								bin/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								bin/.gitignore
									
									
									
									
										vendored
									
									
								
							@ -1 +1,2 @@
 | 
				
			|||||||
sugar-native-factory
 | 
					sugar-control-panel
 | 
				
			||||||
 | 
					sugar-shell
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										0
									
								
								bin/sugar-activity
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										0
									
								
								bin/sugar-activity
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
								
								
									
										0
									
								
								bin/sugar-backup
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										0
									
								
								bin/sugar-backup
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
								
								
									
										26
									
								
								bin/sugar-control-panel.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								bin/sugar-control-panel.in
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,26 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env python
 | 
				
			||||||
 | 
					# Copyright (C) 2008, 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 sys
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sys.path.insert(0, '@prefix@/share/sugar/shell')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					from controlpanel.cmd import main
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					main()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										0
									
								
								bin/sugar-install-bundle
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										0
									
								
								bin/sugar-install-bundle
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
								
								
									
										26
									
								
								bin/sugar-shell.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								bin/sugar-shell.in
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,26 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env python
 | 
				
			||||||
 | 
					# Copyright (C) 2008, 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 sys
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sys.path.insert(0, '@prefix@/share/sugar/shell')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					from main import main
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					main()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -41,8 +41,10 @@ AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
AC_CONFIG_FILES([
 | 
					AC_CONFIG_FILES([
 | 
				
			||||||
bin/sugar
 | 
					bin/sugar
 | 
				
			||||||
 | 
					bin/sugar-control-panel
 | 
				
			||||||
 | 
					bin/sugar-shell
 | 
				
			||||||
shell/config.py
 | 
					shell/config.py
 | 
				
			||||||
], [chmod +x sugar])
 | 
					])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
AC_OUTPUT([
 | 
					AC_OUTPUT([
 | 
				
			||||||
Makefile
 | 
					Makefile
 | 
				
			||||||
 | 
				
			|||||||
@ -2,8 +2,9 @@ SUBDIRS = controlpanel hardware model view intro
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
sugardir = $(pkgdatadir)/shell
 | 
					sugardir = $(pkgdatadir)/shell
 | 
				
			||||||
sugar_PYTHON =			\
 | 
					sugar_PYTHON =			\
 | 
				
			||||||
    config.py           \
 | 
						config.py           	\
 | 
				
			||||||
	logsmanager.py		\
 | 
						logsmanager.py		\
 | 
				
			||||||
 | 
						main.py			\
 | 
				
			||||||
	shellservice.py
 | 
						shellservice.py
 | 
				
			||||||
 | 
					
 | 
				
			||||||
confdir = $(pkgdatadir)/shell
 | 
					confdir = $(pkgdatadir)/shell
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
sugardir = $(pkgdatadir)/shell/controlpanel
 | 
					sugardir = $(pkgdatadir)/shell/controlpanel
 | 
				
			||||||
sugar_PYTHON = 				\
 | 
					sugar_PYTHON = 				\
 | 
				
			||||||
	__init__.py			\
 | 
						__init__.py			\
 | 
				
			||||||
 | 
						cmd.py				\
 | 
				
			||||||
	control.py
 | 
						control.py
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										7
									
								
								bin/sugar-control-panel → shell/controlpanel/cmd.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										7
									
								
								bin/sugar-control-panel → shell/controlpanel/cmd.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							@ -1,5 +1,3 @@
 | 
				
			|||||||
#!/usr/bin/env python
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Copyright (C) 2007, One Laptop Per Child
 | 
					# Copyright (C) 2007, One Laptop Per Child
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This library is free software; you can redistribute it and/or
 | 
					# This library is free software; you can redistribute it and/or
 | 
				
			||||||
@ -23,8 +21,6 @@ from gettext import gettext as _
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
from sugar import env
 | 
					from sugar import env
 | 
				
			||||||
 | 
					
 | 
				
			||||||
sys.path.insert(0, env.get_shell_path())
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
from controlpanel import control
 | 
					from controlpanel import control
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
def cmd_help():
 | 
					def cmd_help():
 | 
				
			||||||
@ -82,6 +78,3 @@ def main():
 | 
				
			|||||||
                    method(*args)
 | 
					                    method(*args)
 | 
				
			||||||
                except Exception, e:
 | 
					                except Exception, e:
 | 
				
			||||||
                    print _("sugar-control-panel: %s"% e)
 | 
					                    print _("sugar-control-panel: %s"% e)
 | 
				
			||||||
 | 
					 | 
				
			||||||
if __name__ == '__main__':
 | 
					 | 
				
			||||||
    main()
 | 
					 | 
				
			||||||
							
								
								
									
										21
									
								
								bin/sugar-shell → shell/main.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										21
									
								
								bin/sugar-shell → shell/main.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							@ -1,4 +1,3 @@
 | 
				
			|||||||
#!/usr/bin/env python
 | 
					 | 
				
			||||||
# Copyright (C) 2006, Red Hat, Inc.
 | 
					# Copyright (C) 2006, Red Hat, Inc.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This program is free software; you can redistribute it and/or modify
 | 
					# This program is free software; you can redistribute it and/or modify
 | 
				
			||||||
@ -33,8 +32,6 @@ from sugar import env
 | 
				
			|||||||
from sugar import logger
 | 
					from sugar import logger
 | 
				
			||||||
from sugar.profile import get_profile
 | 
					from sugar.profile import get_profile
 | 
				
			||||||
 | 
					
 | 
				
			||||||
sys.path.insert(0, env.get_shell_path())
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
from view.Shell import Shell
 | 
					from view.Shell import Shell
 | 
				
			||||||
from model.shellmodel import ShellModel
 | 
					from model.shellmodel import ShellModel
 | 
				
			||||||
from shellservice import ShellService
 | 
					from shellservice import ShellService
 | 
				
			||||||
@ -102,6 +99,9 @@ def main():
 | 
				
			|||||||
    _start_matchbox()
 | 
					    _start_matchbox()
 | 
				
			||||||
    _setup_translations()
 | 
					    _setup_translations()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    hw_manager = hardwaremanager.get_manager()
 | 
				
			||||||
 | 
					    hw_manager.startup()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    icons_path = env.get_data_path('icons')
 | 
					    icons_path = env.get_data_path('icons')
 | 
				
			||||||
    gtk.icon_theme_get_default().append_search_path(icons_path)
 | 
					    gtk.icon_theme_get_default().append_search_path(icons_path)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -131,7 +131,8 @@ def main():
 | 
				
			|||||||
               print RuntimeError("%s connection manager not found!" % cm_name)
 | 
					               print RuntimeError("%s connection manager not found!" % cm_name)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            while not check_cm(cm['busname']):
 | 
					            while not check_cm(cm['busname']):
 | 
				
			||||||
                print "Waiting for %s on: DBUS_SESSION_BUS_ADDRESS=%s" %(cm_name, os.environ["DBUS_SESSION_BUS_ADDRESS"])
 | 
					                print "Waiting for %s on: DBUS_SESSION_BUS_ADDRESS=%s" % \
 | 
				
			||||||
 | 
					                    (cm_name, os.environ["DBUS_SESSION_BUS_ADDRESS"])
 | 
				
			||||||
                try:
 | 
					                try:
 | 
				
			||||||
                    time.sleep(5)
 | 
					                    time.sleep(5)
 | 
				
			||||||
                except KeyboardInterrupt:
 | 
					                except KeyboardInterrupt:
 | 
				
			||||||
@ -142,18 +143,6 @@ def main():
 | 
				
			|||||||
    shell = Shell(model)
 | 
					    shell = Shell(model)
 | 
				
			||||||
    service = ShellService(shell)
 | 
					    service = ShellService(shell)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if __name__ == '__main__':
 | 
					 | 
				
			||||||
    # running the gtk.main outside of the main() function allows us to 
 | 
					 | 
				
			||||||
    # profile startup times.  To profile startup times replace the following
 | 
					 | 
				
			||||||
    # call to main with:
 | 
					 | 
				
			||||||
    # import cProfile
 | 
					 | 
				
			||||||
    # cProfile.run('main()', '/home/olpc/sugar-startup.stats')
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    main()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    hw_manager = hardwaremanager.get_manager()
 | 
					 | 
				
			||||||
    hw_manager.startup()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    try:
 | 
					    try:
 | 
				
			||||||
        gtk.main()
 | 
					        gtk.main()
 | 
				
			||||||
    except KeyboardInterrupt:
 | 
					    except KeyboardInterrupt:
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user