From 3ca124dd916f82dcfd4f069daf1a3f342956e520 Mon Sep 17 00:00:00 2001 From: Andreas Oberritter Date: Fri, 28 Jan 2011 04:55:10 +0100 Subject: [PATCH] switch to opkg --- lib/python/Components/DreamInfoHandler.py | 2 +- lib/python/Components/Ipkg.py | 8 ++--- .../CleanupWizard/CleanupWizard.py | 2 +- .../SystemPlugins/OldSoftwareUpdate/plugin.py | 14 ++++----- .../SoftwareManager/SoftwareTools.py | 10 +++---- .../SystemPlugins/SoftwareManager/plugin.py | 30 +++++++------------ lib/python/Screens/PluginBrowser.py | 12 ++++---- main/bsod.cpp | 6 ++-- 8 files changed, 35 insertions(+), 49 deletions(-) diff --git a/lib/python/Components/DreamInfoHandler.py b/lib/python/Components/DreamInfoHandler.py index 03d52157..8e9c29d1 100755 --- a/lib/python/Components/DreamInfoHandler.py +++ b/lib/python/Components/DreamInfoHandler.py @@ -397,7 +397,7 @@ class DreamInfoHandler: def installIPK(self, directory, name): if self.blocking: - os.system("ipkg install " + directory + name) + os.system("opkg install " + directory + name) self.installNext() else: self.ipkg = IpkgComponent() diff --git a/lib/python/Components/Ipkg.py b/lib/python/Components/Ipkg.py index 71447775..cc559657 100755 --- a/lib/python/Components/Ipkg.py +++ b/lib/python/Components/Ipkg.py @@ -19,9 +19,8 @@ class IpkgComponent: CMD_UPDATE = 3 CMD_UPGRADE = 4 - def __init__(self, ipkg = '/usr/bin/ipkg'): + def __init__(self, ipkg = 'opkg'): self.ipkg = ipkg - self.opkgAvail = fileExists('/usr/bin/opkg') self.cmd = eConsoleAppContainer() self.cache = None self.callbackList = [] @@ -90,10 +89,7 @@ class IpkgComponent: if data.find('Downloading') == 0: self.callCallbacks(self.EVENT_DOWNLOAD, data.split(' ', 5)[1].strip()) elif data.find('Upgrading') == 0: - if self.opkgAvail: - self.callCallbacks(self.EVENT_UPGRADE, data.split(' ', 1)[1].split(' ')[0]) - else: - self.callCallbacks(self.EVENT_UPGRADE, data.split(' ', 1)[1].split(' ')[0]) + self.callCallbacks(self.EVENT_UPGRADE, data.split(' ', 1)[1].split(' ')[0]) elif data.find('Installing') == 0: self.callCallbacks(self.EVENT_INSTALL, data.split(' ', 1)[1].split(' ')[0]) elif data.find('Removing') == 0: diff --git a/lib/python/Plugins/SystemPlugins/CleanupWizard/CleanupWizard.py b/lib/python/Plugins/SystemPlugins/CleanupWizard/CleanupWizard.py index d8de3544..797010c6 100755 --- a/lib/python/Plugins/SystemPlugins/CleanupWizard/CleanupWizard.py +++ b/lib/python/Plugins/SystemPlugins/CleanupWizard/CleanupWizard.py @@ -88,7 +88,7 @@ class CleanupWizard(WizardLanguage, Rc): if self.NextStep is not 'end': if not self.Console: self.Console = Console() - cmd = "ipkg list_installed | grep enigma2" + cmd = "opkg list_installed | grep enigma2" self.Console.ePopen(cmd, self.buildListInstalled_Finished) self.buildListRef = self.session.openWithCallback(self.buildListfinishedCB, MessageBox, _("Please wait while searching for removable packages..."), type = MessageBox.TYPE_INFO, enable_input = False) else: diff --git a/lib/python/Plugins/SystemPlugins/OldSoftwareUpdate/plugin.py b/lib/python/Plugins/SystemPlugins/OldSoftwareUpdate/plugin.py index c7216382..22e54369 100644 --- a/lib/python/Plugins/SystemPlugins/OldSoftwareUpdate/plugin.py +++ b/lib/python/Plugins/SystemPlugins/OldSoftwareUpdate/plugin.py @@ -10,7 +10,7 @@ from os import popen class Upgrade(Screen): skin = """ - + """ @@ -39,7 +39,7 @@ class Upgrade(Screen): self.close() def doUpdateDelay(self): - lines = popen("ipkg update && ipkg upgrade -force-defaults -force-overwrite", "r").readlines() + lines = popen("opkg update && opkg upgrade -force-defaults -force-overwrite", "r").readlines() string = "" for x in lines: string += x @@ -87,7 +87,7 @@ class PacketList(GUIComponent): class Ipkg(Screen): skin = """ - + """ @@ -109,13 +109,13 @@ class Ipkg(Screen): def fillPacketList(self): - lines = popen("ipkg list", "r").readlines() + lines = popen("opkg list", "r").readlines() packetlist = [] for x in lines: split = x.split(' - ') packetlist.append([split[0].strip(), split[1].strip()]) - lines = popen("ipkg list_installed", "r").readlines() + lines = popen("opkg list_installed", "r").readlines() installedlist = {} for x in lines: @@ -138,7 +138,7 @@ class Ipkg(Screen): self.close() def doUpdateDelay(self): - lines = popen("ipkg update && ipkg upgrade", "r").readlines() + lines = popen("opkg update && opkg upgrade", "r").readlines() string = "" for x in lines: string += x @@ -161,4 +161,4 @@ def IpkgMain(session, **kwargs): def Plugins(**kwargs): return [PluginDescriptor(name="Old Softwareupdate", description="Updates your receiver's software", icon="update.png", where = PluginDescriptor.WHERE_PLUGINMENU, fnc=UpgradeMain), - PluginDescriptor(name="IPKG", description="IPKG frontend", icon="update.png", where = PluginDescriptor.WHERE_PLUGINMENU, fnc=IpkgMain)] + PluginDescriptor(name="opkg", description="opkg frontend", icon="update.png", where = PluginDescriptor.WHERE_PLUGINMENU, fnc=IpkgMain)] diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/SoftwareTools.py b/lib/python/Plugins/SystemPlugins/SoftwareManager/SoftwareTools.py index ee0bec74..8b8fc97c 100755 --- a/lib/python/Plugins/SystemPlugins/SoftwareManager/SoftwareTools.py +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/SoftwareTools.py @@ -205,7 +205,7 @@ class SoftwareTools(DreamInfoHandler): if self.list_updating: if not self.UpdateConsole: self.UpdateConsole = Console() - cmd = "ipkg list" + cmd = "opkg list" self.UpdateConsole.ePopen(cmd, self.IpkgListAvailableCB, callback) def IpkgListAvailableCB(self, result, retval, extra_args = None): @@ -241,7 +241,7 @@ class SoftwareTools(DreamInfoHandler): if self.NetworkConnectionAvailable == True: if not self.UpdateConsole: self.UpdateConsole = Console() - cmd = "ipkg install enigma2-meta enigma2-plugins-meta enigma2-skins-meta" + cmd = "opkg install enigma2-meta enigma2-plugins-meta enigma2-skins-meta" self.UpdateConsole.ePopen(cmd, self.InstallMetaPackageCB, callback) else: self.InstallMetaPackageCB(True) @@ -270,7 +270,7 @@ class SoftwareTools(DreamInfoHandler): if self.list_updating: if not self.UpdateConsole: self.UpdateConsole = Console() - cmd = "ipkg list_installed" + cmd = "opkg list_installed" self.UpdateConsole.ePopen(cmd, self.IpkgListInstalledCB, callback) def IpkgListInstalledCB(self, result, retval, extra_args = None): @@ -331,7 +331,7 @@ class SoftwareTools(DreamInfoHandler): def startIpkgUpdate(self, callback = None): if not self.Console: self.Console = Console() - cmd = "ipkg update" + cmd = "opkg update" self.Console.ePopen(cmd, self.IpkgUpdateCB, callback) def IpkgUpdateCB(self, result, retval, extra_args = None): @@ -366,4 +366,4 @@ class SoftwareTools(DreamInfoHandler): return False return True -iSoftwareTools = SoftwareTools() \ No newline at end of file +iSoftwareTools = SoftwareTools() diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/plugin.py b/lib/python/Plugins/SystemPlugins/SoftwareManager/plugin.py index 896d9f2c..480707d0 100755 --- a/lib/python/Plugins/SystemPlugins/SoftwareManager/plugin.py +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/plugin.py @@ -1517,7 +1517,7 @@ class IPKGMenu(Screen): def fill_list(self): self.flist = [] - self.path = '/etc/ipkg/' + self.path = '/etc/opkg/' if (os_path.exists(self.path) == False): self.entry = False return @@ -1708,7 +1708,6 @@ class PacketManager(Screen, NumericalTextInput): self.cache_file = eEnv.resolve('${libdir}/enigma2/python/Plugins/SystemPlugins/SoftwareManager/packetmanager.cache') #Path to cache directory self.oktext = _("\nAfter pressing OK, please wait!") self.unwanted_extensions = ('-dbg', '-dev', '-doc', 'busybox') - self.opkgAvail = fileExists('/usr/bin/opkg') self.ipkg = IpkgComponent() self.ipkg.addCallback(self.ipkgCallback) @@ -1862,7 +1861,7 @@ class PacketManager(Screen, NumericalTextInput): self.list_updating = False if not self.Console: self.Console = Console() - cmd = "ipkg list" + cmd = "opkg list" self.Console.ePopen(cmd, self.IpkgList_Finished) #print event, "-", param pass @@ -1885,7 +1884,7 @@ class PacketManager(Screen, NumericalTextInput): if not self.Console: self.Console = Console() - cmd = "ipkg list_installed" + cmd = "opkg list_installed" self.Console.ePopen(cmd, self.IpkgListInstalled_Finished) def IpkgListInstalled_Finished(self, result, retval, extra_args = None): @@ -1898,13 +1897,10 @@ class PacketManager(Screen, NumericalTextInput): l = len(tokens) version = l > 1 and tokens[1].strip() or "" self.installed_packetlist[name] = version - if self.opkgAvail: - if not self.Console: - self.Console = Console() - cmd = "opkg list-upgradable" - self.Console.ePopen(cmd, self.OpkgListUpgradeable_Finished) - else: - self.buildPacketList() + if not self.Console: + self.Console = Console() + cmd = "opkg list-upgradable" + self.Console.ePopen(cmd, self.OpkgListUpgradeable_Finished) def OpkgListUpgradeable_Finished(self, result, retval, extra_args = None): if result: @@ -1949,16 +1945,10 @@ class PacketManager(Screen, NumericalTextInput): for x in self.packetlist: status = "" if self.installed_packetlist.has_key(x[0]): - if self.opkgAvail: - if self.upgradeable_packages.has_key(x[0]): - status = "upgradeable" - else: - status = "installed" + if self.upgradeable_packages.has_key(x[0]): + status = "upgradeable" else: - if self.installed_packetlist[x[0]] == x[1]: - status = "installed" - else: - status = "upgradeable" + status = "installed" else: status = "installable" self.list.append(self.buildEntryComponent(x[0], x[1], x[2], status)) diff --git a/lib/python/Screens/PluginBrowser.py b/lib/python/Screens/PluginBrowser.py index 69bf80f7..359552eb 100755 --- a/lib/python/Screens/PluginBrowser.py +++ b/lib/python/Screens/PluginBrowser.py @@ -155,9 +155,9 @@ class PluginDownloadBrowser(Screen): 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: @@ -166,17 +166,17 @@ class PluginDownloadBrowser(Screen): 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() @@ -256,4 +256,4 @@ class PluginDownloadBrowser(Screen): self.list = list self["list"].l.setList(list) -language.addCallback(languageChanged) \ No newline at end of file +language.addCallback(languageChanged) diff --git a/main/bsod.cpp b/main/bsod.cpp index f76283e7..12d8dc23 100644 --- a/main/bsod.cpp +++ b/main/bsod.cpp @@ -199,9 +199,9 @@ void bsodFatal(const char *component) xml.close(); xml.open("software"); - xml.cDataFromCmd("enigma2software", "ipkg list_installed | grep enigma2"); - xml.cDataFromCmd("dreamboxsoftware", "ipkg list_installed | grep dream"); - xml.cDataFromCmd("gstreamersoftware", "ipkg list_installed | grep gst"); + xml.cDataFromCmd("enigma2software", "opkg list_installed | grep enigma2"); + xml.cDataFromCmd("dreamboxsoftware", "opkg list_installed | grep dream"); + xml.cDataFromCmd("gstreamersoftware", "opkg list_installed | grep gst"); xml.close(); xml.open("crashlogs"); -- 2.30.2