From: Dana Jansens Date: Sat, 9 Feb 2008 23:26:15 +0000 (-0500) Subject: make xdg-autostart check for PyXDG and print a better error than a backtrace. and... X-Git-Url: https://git.brokenzipper.com/gitweb?a=commitdiff_plain;h=b2e52c7b48ee64213b4d9e3fbab0d35f66410122;p=chaz%2Fopenbox make xdg-autostart check for PyXDG and print a better error than a backtrace. and make the executing actually work --- diff --git a/tools/xdg-autostart/xdg-autostart b/tools/xdg-autostart/xdg-autostart index 6cee1342..daa9117d 100755 --- a/tools/xdg-autostart/xdg-autostart +++ b/tools/xdg-autostart/xdg-autostart @@ -22,10 +22,16 @@ ME="xdg-autostart" VERSION="1.0" -from xdg import BaseDirectory -from xdg.DesktopEntry import DesktopEntry -from xdg.Exceptions import ParsingError import os, glob, sys +try: + from xdg import BaseDirectory + from xdg.DesktopEntry import DesktopEntry + from xdg.Exceptions import ParsingError +except ImportError: + print + print "ERROR:", ME, "requires PyXDG to be installed" + print + sys.exit(1) def main(argv=sys.argv): if "--help" in argv[1:]: @@ -154,8 +160,8 @@ class AutostartFile(): if self.de.getPath(): os.chdir(self.de.getPath()) if self.shouldRun(envs): - print "Running autostart file: " + self.path - os.system(self.de.getExec()); + args = ["/bin/sh", "-c", "exec " + self.de.getExec()] + os.spawnv(os.P_NOWAIT, args[0], args); os.chdir(here) def show_help():