From 84ecfc46a062fcf902164e49854ebd405f0d672e Mon Sep 17 00:00:00 2001 From: Argish42 Date: Thu, 7 Aug 2014 11:05:13 +0200 Subject: [PATCH] TimeWrapper --- uptime.py | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 uptime.py diff --git a/uptime.py b/uptime.py new file mode 100644 index 0000000..1272b48 --- /dev/null +++ b/uptime.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +from i3pystatus import IntervalModule, formatp +from i3pystatus.core.util import TimeWrapper + +class Uptime(IntervalModule): + """ + Outputs Uptime + """ + + settings = ( + ("format","Format string"), + ("color","String color"), + ("alert","If you want the string to change color"), + ("seconds_alert","How many seconds necessary to start the alert"), + ("color_alert","Alert color"), + ) + + file = "/proc/uptime" + format = "up {uptime}" + color = "#ffffff" + alert = False + seconds_alert = 3600 + color_alert = "#ff0000" + + def run(self): + with open(self.file,'r') as f: + seconds = float(f.read().split()[0]) + fdict = { + "uptime" : TimeWrapper(seconds, "%h:%m"), + } + + if self.alert: + if seconds > self.seconds_alert: + self.color = self.color_alert + self.output = { + "full_text": formatp(self.format, **fdict), + "color": self.color + }