diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2006-02-21 22:07:04 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2006-02-21 22:07:04 +0000 |
| commit | 0d0e876391a62eaf9960d4dee660f4106e513611 (patch) | |
| tree | ec5919e952080d4026dcaf3e68d1b68611898acc /lib/python/Plugins | |
| parent | 18bb424f19d31bbdaf0a3fc34ee19f1b4dd94bec (diff) | |
| download | enigma2-0d0e876391a62eaf9960d4dee660f4106e513611.tar.gz enigma2-0d0e876391a62eaf9960d4dee660f4106e513611.zip | |
add fp upgrade plugin
Diffstat (limited to 'lib/python/Plugins')
| -rw-r--r-- | lib/python/Plugins/fpupgrade/Makefile.am | 0 | ||||
| -rw-r--r-- | lib/python/Plugins/fpupgrade/__init__.py | 0 | ||||
| -rw-r--r-- | lib/python/Plugins/fpupgrade/plugin.py | 54 |
3 files changed, 54 insertions, 0 deletions
diff --git a/lib/python/Plugins/fpupgrade/Makefile.am b/lib/python/Plugins/fpupgrade/Makefile.am new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/lib/python/Plugins/fpupgrade/Makefile.am diff --git a/lib/python/Plugins/fpupgrade/__init__.py b/lib/python/Plugins/fpupgrade/__init__.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/lib/python/Plugins/fpupgrade/__init__.py diff --git a/lib/python/Plugins/fpupgrade/plugin.py b/lib/python/Plugins/fpupgrade/plugin.py new file mode 100644 index 00000000..f945fa7b --- /dev/null +++ b/lib/python/Plugins/fpupgrade/plugin.py @@ -0,0 +1,54 @@ +from Screens.Screen import Screen +from Components.ActionMap import ActionMap +from Components.Label import Label +from Plugins.Plugin import PluginDescriptor + +def getUpgradeVersion(): + import os + r = os.popen("fpupgrade --version").read() + if r[:16] != "FP update tool v": + return None + else: + return int(r[16:]) + +class FPUpgrade(Screen): + skin = """ + <screen position="150,200" size="450,200" title="FP upgrade required" > + <widget name="text" position="0,0" size="550,50" font="Regular;20" /> + <widget name="oldversion_label" position="10,100" size="290,25" font="Regular;20" /> + <widget name="newversion_label" position="10,125" size="290,25" font="Regular;20" /> + <widget name="oldversion" position="300,100" size="50,25" font="Regular;20" /> + <widget name="newversion" position="300,125" size="50,25" font="Regular;20" /> + </screen>""" + def __init__(self, session): + self.skin = FPUpgrade.skin + Screen.__init__(self, session) + + from Tools.DreamboxHardware import getFPVersion + version = str(getFPVersion() or "N/A") + newversion = str(getUpgradeVersion() or "N/A") + + self["text"] = Label(_("Your frontprocessor firmware must be upgraded.\nPress OK to start upgrade.")) + self["oldversion_label"] = Label(_("Current version:")) + self["newversion_label"] = Label(_("New version:")) + + self["oldversion"] = Label(version) + self["newversion"] = Label(newversion) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.ok, + "cancel": self.close, + }) + + def ok(self): + self.close(4) + +def Plugins(): + from Tools.DreamboxHardware import getFPVersion + version = getFPVersion() + newversion = getUpgradeVersion() or 0 + if version is not None and version <= newversion: + return PluginDescriptor(name="FP Upgrade", where = PluginDescriptor.WHERE_WIZARD, fnc=FPUpgrade) + else: + return [ ] |
