"red": self.delete,
"green": self.download
})
+ self["SoftwareActions"] = ActionMap(["ColorActions"],
+ {
+ "red": self.openExtensionmanager
+ })
self["PluginDownloadActions"].setEnabled(False)
+ self["SoftwareActions"].setEnabled(False)
self.onFirstExecBegin.append(self.checkWarnings)
self.onShown.append(self.updateList)
self.list = [PluginEntryComponent(plugin) for plugin in self.pluginlist]
self["list"].l.setList(self.list)
if fileExists(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/SoftwareManager/plugin.py")):
- self["red"].setText("")
+ self["red"].setText(_("Manage extensions"))
self["green"].setText("")
+ self["SoftwareActions"].setEnabled(True)
self["PluginDownloadActions"].setEnabled(False)
else:
self["red"].setText(_("Remove Plugins"))
self["green"].setText(_("Download Plugins"))
+ self["SoftwareActions"].setEnabled(False)
self["PluginDownloadActions"].setEnabled(True)
def delete(self):
self.updateList()
self.checkWarnings()
+ def openExtensionmanager(self):
+ if fileExists(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/SoftwareManager/plugin.py")):
+ try:
+ from Plugins.SystemPlugins.SoftwareManager.plugin import PluginManager
+ except ImportError:
+ self.session.open(MessageBox, _("The Softwaremanagement extension is not installed!\nPlease install it."), type = MessageBox.TYPE_INFO,timeout = 10 )
+ else:
+ self.session.openWithCallback(self.PluginDownloadBrowserClosed, PluginManager)
class PluginDownloadBrowser(Screen):
DOWNLOAD = 0
def runInstall(self, val):
if val:
if self.type == self.DOWNLOAD:
- self.session.openWithCallback(self.installFinished, Console, cmdlist = ["ipkg install " + "enigma2-plugin-" + self["list"].l.getCurrentSelection()[0].name])
+ self.session.openWithCallback(self.installFinished, Console, cmdlist = ["opkg install " + "enigma2-plugin-" + self["list"].l.getCurrentSelection()[0].name])
elif self.type == self.REMOVE:
- self.session.openWithCallback(self.installFinished, Console, cmdlist = ["ipkg remove " + "enigma2-plugin-" + self["list"].l.getCurrentSelection()[0].name])
+ self.session.openWithCallback(self.installFinished, Console, cmdlist = ["opkg remove " + "enigma2-plugin-" + self["list"].l.getCurrentSelection()[0].name])
def setWindowTitle(self):
if self.type == self.DOWNLOAD:
self.setTitle(_("Remove plugins"))
def startIpkgListInstalled(self):
- self.container.execute("ipkg list_installed enigma2-plugin-*")
+ self.container.execute("opkg list_installed enigma2-plugin-*")
def startIpkgListAvailable(self):
- self.container.execute("ipkg list enigma2-plugin-*")
+ self.container.execute("opkg list enigma2-plugin-*")
def startRun(self):
self["list"].instance.hide()
if self.type == self.DOWNLOAD:
if not PluginDownloadBrowser.lastDownloadDate or (time() - PluginDownloadBrowser.lastDownloadDate) > 3600:
# Only update from internet once per hour
- self.container.execute("ipkg update")
+ self.container.execute("opkg update")
PluginDownloadBrowser.lastDownloadDate = time()
else:
self.startIpkgListAvailable()
self.list = list
self["list"].l.setList(list)
-language.addCallback(languageChanged)
\ No newline at end of file
+language.addCallback(languageChanged)