from enigma import * from Screens.Screen import Screen from Screens.MessageBox import MessageBox from Components.ActionMap import ActionMap from Components.Label import Label import os class Example(Screen): skin = """ """ def __init__(self, session): self.skin = Example.skin Screen.__init__(self, session) self["text"] = Label(_("Please press OK!")) self["actions"] = ActionMap(["WizardActions"], { "ok": self.ok, "back": self.close }, -1) def ok(self): self.session.openWithCallback(self.doUpdate, MessageBox, _("Do you want to update your Dreambox?\nAfter pressing OK, please wait!")) def doUpdate(self, val = False): if val: lines = os.popen("ipkg update && ipkg upgrade", "r").readlines() string = "" for x in lines: string += x self["text"].setText(_("Updating finished. Here is the result:") + "\n\n" + string) else: self.close() def main(session): session.open(Example) def getPicturePath(): return "" def getPluginName(): return "Softwareupdate"