class package:
- def __init__(self):
- self.name = ""
- self.version = ""
- self.emerge_time = ""
- self.emerge_date = ""
+ def __init__(self, name, version='', emerge_time='', emerge_date=''):
+ self.name = name
+ self.version = version
+ self.emerge_time = emerge_time
+ self.emerge_date = emerge_date
- def printable_time(self):
+ def time(self):
time = self.emerge_time
days = time/(3600*24)
minutes = int(minutes)
seconds = int(round(seconds))
- pdays, phours, pminutes, pseconds = str()
+ pdays = str()
+ phours = str()
+ pminutes = str()
+ pseconds = str()
if days > 0:
pdays = (green_start + str(days) + color_stop + " day")
if minutes != 1:
pminutes += "s"
- pseconds = green_start + str(seconds) + color_stop + " second")
+ pseconds = (green_start + str(seconds) + color_stop + " second")
if seconds != 1:
pseconds += "s"
return (pdays + phours + pminutes + pdays)
-
+
+ def date(self):
+ date = datetime.datetime.fromtimestamp(self.emerge_date)
+
+ year = str(date.year)
+ month = str(date.month)
+ day = str(date.day)
+ hour = str(date.hour)
+ minute = str(date.minute)
+ second = str(date.second)
+
+ date = "{:%d.%m.%Y %H:%M:%S}".format(date)
+
+ return date
+
+
def open_log():
"""Attempt to open the LOGFILE."""
-def search_log_for_package(package):
+def search_log_for_package(user_package):
log = open_log()
for line in log:
if ((">>>" in line) and ("emerge" in line)):
- if package in line:
+ if user_package in line:
+ version = line.partition(user_package)[2].partition(' ')[0]
+
time_string = line.partition(">>>")
start_time = float(time_string[0].strip().strip(':'))
elif ((":::" in line) and ("completed emerge" in line)):
- if package in line:
+ if user_package in line:
time_string = line.partition(":::")
stop_time = float(time_string[0].strip().strip(':'))
emerge_time = stop_time - start_time
-# date = 0 # get date
- print line
- packages.append((package, emerge_time))
+ packages.append(package(user_package, version, emerge_time, start_time))
+
+
+def print_stuff():
+ for p in packages:
+ print(green_start + p.name + p.version + color_stop + " >>> " + p.time()
+ + " >>> " + p.date())
+
-def main(status, package=None):
+def main(status, user_package=None):
if status == "package":
- search_log_for_package(package)
- print packages
+ search_log_for_package(user_package)
+ print_stuff()
elif status == "current":