Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ynsta/steamcontroller.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStany MARCEL <stanypub@gmail.com>2016-11-23 00:56:57 +0300
committerStany MARCEL <stanypub@gmail.com>2016-11-23 01:00:55 +0300
commit7ba1740349e706f3732c6cd85fb612cdf22f8977 (patch)
tree886c76dcc38f8fdcae1f812172827b57ba87369a
parente9b6cee25313881e5e637f67bff2d10a2d1bde8f (diff)
Verify if steam client running before running (to be improved)
Signed-off-by: Stany MARCEL <stanypub@gmail.com>
-rwxr-xr-xsetup.py2
-rw-r--r--src/daemon.py13
2 files changed, 10 insertions, 5 deletions
diff --git a/setup.py b/setup.py
index f3258f1..6697d6f 100755
--- a/setup.py
+++ b/setup.py
@@ -6,7 +6,7 @@ from setuptools import setup, Extension
uinput = Extension('libuinput',
sources = ['src/uinput.c'])
-deps = ['libusb1']
+deps = ['libusb1', 'psutil']
if sys.version_info < (3,4):
deps.append('enum34')
diff --git a/src/daemon.py b/src/daemon.py
index 0535ea0..029f360 100644
--- a/src/daemon.py
+++ b/src/daemon.py
@@ -9,6 +9,7 @@ import time
import atexit
import signal
import syslog
+import psutil
class Daemon(object):
"""A generic daemon class.
@@ -89,10 +90,14 @@ class Daemon(object):
self.daemonize()
syslog.syslog(syslog.LOG_INFO, '{}: started'.format(os.path.basename(sys.argv[0])))
while True:
- try:
- self.run()
- except Exception as e: # pylint: disable=W0703
- syslog.syslog(syslog.LOG_ERR, '{}: {!s}'.format(os.path.basename(sys.argv[0]), e))
+ # look if steam is running
+ if len([p for p in psutil.process_iter() if p.name() == 'steam']) == 0:
+ try:
+ self.run()
+ except Exception as e: # pylint: disable=W0703
+ syslog.syslog(syslog.LOG_ERR, '{}: {!s}'.format(os.path.basename(sys.argv[0]), e))
+ else:
+ syslog.syslog(syslog.LOG_INFO, '{}: steam client is runing'.format(os.path.basename(sys.argv[0])))
time.sleep(2)
def stop(self):