Преглед на файлове

Fix unneeded space in process name, only write time to display when the minute changes and not every second

Helmut Pozimski преди 10 години
родител
ревизия
d214e19eb5
променени са 2 файла, в които са добавени 31 реда и са изтрити 23 реда
  1. 1 1
      setup.py
  2. 30 22
      stdd

+ 1 - 1
setup.py

@@ -10,7 +10,7 @@ from distutils.core import setup
 
 setup(
 	name="stdd",
-	version="0.9",
+	version="0.9.1",
 	author_email="helmut@pozimski.eu",
 	description="stdd, simple time display daemon",
 	long_description=("stdd is a small daemon written in python which displays"

+ 30 - 22
stdd

@@ -28,7 +28,7 @@ parameters, only 3 are currently defined:
 	* --config (path to configuration file)
 
 """
-parser = OptionParser(prog="stdd", version="%prog 0.9", add_help_option=True)
+parser = OptionParser(prog="stdd", version="%prog 0.9.1", add_help_option=True)
 parser.add_option("-d", "--daemon", action="store_true", dest="daemon",
 	help="run stdd as daemon")
 parser.add_option("-u", "--user", dest="user", help="define an unprivileged \
@@ -113,8 +113,13 @@ if options.daemon is True:
 	daemon.Start()
 	logger.info("daemon started")
 	cmdline = ""
+	cmdcounter = 0
 	for element in sys.argv:
-		cmdline = cmdline + " " + element
+		if cmdcounter > 0:
+			cmdline = cmdline + " " + element
+		else:
+			cmdline = cmdline + element
+		cmdcounter = cmdcounter + 1
 	daemon.SetName("stdd", cmdline)
 	if options.user is not None and options.group is not None:
 		""" To determine the user and group id, use the passwd
@@ -154,6 +159,7 @@ else:
 
 
 def main():
+	minute_written = 61
 	while True:
 		date_now = datetime.datetime.now()
 		logger.debug("got datetime: " + str(date_now))
@@ -176,26 +182,28 @@ def main():
 			if config.set_brightness_high.minute == minute:
 				logger.debug("setting display brightness high")
 				display.setBrightness(config.brightness_high)
-		try:
-			position2 = str(hour)[1]
-		except IndexError:
-			position2 = str(hour)[0]
-			position1 = "0"
-
-		else:
-			position1 = str(hour)[0]
-		try:
-			position4 = str(minute)[1]
-		except IndexError:
-			position4 = str(minute)[0]
-			position3 = "0"
-		else:
-			position3 = str(minute)[0]
-		logger.debug("writing time to display")
-		display.writeDigit(0, int(position1))
-		display.writeDigit(1, int(position2))
-		display.writeDigit(3, int(position3))
-		display.writeDigit(4, int(position4))
+		if minute_written != minute:
+			try:
+				position2 = str(hour)[1]
+			except IndexError:
+				position2 = str(hour)[0]
+				position1 = "0"
+
+			else:
+				position1 = str(hour)[0]
+			try:
+				position4 = str(minute)[1]
+			except IndexError:
+				position4 = str(minute)[0]
+				position3 = "0"
+			else:
+				position3 = str(minute)[0]	
+			logger.debug("writing time to display")
+			display.writeDigit(0, int(position1))
+			display.writeDigit(1, int(position2))
+			display.writeDigit(3, int(position3))
+			display.writeDigit(4, int(position4))
+			minute_written = minute
 		time.sleep(1)
 
 if __name__ == "__main__":