Author: dmeyer
Date: Mon Jan 30 19:22:56 2006
New Revision: 7904

Removed:
   trunk/apps/bin/freevo-daemon
Modified:
   trunk/ui/bin/freevo
   trunk/ui/src/helpers/main.py

Log:
move daemon mode into freevo main

Modified: trunk/ui/bin/freevo
==============================================================================
--- trunk/ui/bin/freevo (original)
+++ trunk/ui/bin/freevo Mon Jan 30 19:22:56 2006
@@ -49,10 +49,11 @@
     print '''\
 freevo [ script | options]
 options:
-  -fs            start freevo in a new x session in fullscreen
-  setup          run freevo setup to scan your environment
-  start          start freevo as daemon in background
-  stop           stop the current freevo process
+  -fs        start freevo in a new x session in fullscreen
+  -daemon    start in daemin mode, use remote to really start freevo
+  setup      run freevo setup to scan your environment
+  start      start freevo as daemon in background
+  stop       stop the current freevo process
 
 freevo can start the following scripts, use --help on these
 scripts to get more informations about options.
@@ -274,14 +275,13 @@
             sys.argv = [ sys.argv[0] ] + sys.argv[2:]
 
 
-elif arg and name == 'freevo' and not (arg in ['-force-fs',]):
+elif arg and name == 'freevo' and not (arg in ['-force-fs', '-daemon']):
     # ok, don't know about that arg, freevo should be started, but
     # it's also no freevo arg
     print 'unknown command line option: %s' % sys.argv[1:]
     print
     show_help()
 
-
 else:
     # arg for freevo
     proc += sys.argv[1:]
@@ -298,6 +298,9 @@
             print 'can\'t find helper %s' % name
             sys.exit(1)
 
+if arg and name == 'freevo' and arg == '-daemon':
+    name = 'daemon'
+
 if getpid(name, [ 'python' ] + proc)[1] and check:
     if name != 'freevo':
         print '%s still running, run \'freevo %s stop\' to stop' % (name, name)

Modified: trunk/ui/src/helpers/main.py
==============================================================================
--- trunk/ui/src/helpers/main.py        (original)
+++ trunk/ui/src/helpers/main.py        Mon Jan 30 19:22:56 2006
@@ -125,6 +125,35 @@
 # more kaa imports
 import kaa.notifier
 
+# parse arguments for daemon mode
+if len(sys.argv) >= 2 and sys.argv[1] == '-daemon':
+    from kaa.input import lirc
+
+    def handle_key(key):
+        if not key in ( 'EXIT', 'POWER' ):
+            return True
+        lirc.stop()
+        options = ''
+        if config.CONF.display in ( 'x11', 'dga' ) and not \
+               (os.environ.has_key('DISPLAY') and os.environ['DISPLAY']):
+            options = '-fs'
+        script = os.path.join(os.path.dirname(__file__), 
'../../../../../../bin/freevo')
+        script = os.path.normpath(script)
+        log.info('start %s %s', script, options)
+        os.system('%s %s >/dev/null 2>/dev/null' % (script, options))
+        lirc.init('freevo', config.LIRCRC)
+        log.info('freevo stopped')
+        return True
+
+    if not lirc.init('freevo', config.LIRCRC):
+        log.error('Could not initialize PyLirc!')
+        sys.exit(1)
+
+    kaa.notifier.signals['lirc'].connect(handle_key)
+    kaa.notifier.loop()
+    sys.exit(1)
+        
+    
 # freevo imports
 import gui
 import gui.displays


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog

Reply via email to