git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'pootle-import'
[enigma2.git]
/
lib
/
python
/
Components
/
Ipkg.py
diff --git
a/lib/python/Components/Ipkg.py
b/lib/python/Components/Ipkg.py
old mode 100644
(file)
new mode 100755
(executable)
index
361b136
..
cc55965
--- a/
lib/python/Components/Ipkg.py
+++ b/
lib/python/Components/Ipkg.py
@@
-1,4
+1,5
@@
from enigma import eConsoleAppContainer
from enigma import eConsoleAppContainer
+from Tools.Directories import fileExists
class IpkgComponent:
EVENT_INSTALL = 0
class IpkgComponent:
EVENT_INSTALL = 0
@@
-18,9
+19,8
@@
class IpkgComponent:
CMD_UPDATE = 3
CMD_UPGRADE = 4
CMD_UPDATE = 3
CMD_UPGRADE = 4
- def __init__(self, ipkg = '
/usr/bin/i
pkg'):
+ def __init__(self, ipkg = '
o
pkg'):
self.ipkg = ipkg
self.ipkg = ipkg
-
self.cmd = eConsoleAppContainer()
self.cache = None
self.callbackList = []
self.cmd = eConsoleAppContainer()
self.cache = None
self.callbackList = []
@@
-31,8
+31,8
@@
class IpkgComponent:
def runCmd(self, cmd):
print "executing", self.ipkg, cmd
def runCmd(self, cmd):
print "executing", self.ipkg, cmd
- self.cmd.appClosed.
get().
append(self.cmdFinished)
- self.cmd.dataAvail.
get().
append(self.cmdData)
+ self.cmd.appClosed.append(self.cmdFinished)
+ self.cmd.dataAvail.append(self.cmdData)
if self.cmd.execute(self.ipkg + " " + cmd):
self.cmdFinished(-1)
if self.cmd.execute(self.ipkg + " " + cmd):
self.cmdFinished(-1)
@@
-52,12
+52,14
@@
class IpkgComponent:
self.runCmd("list")
elif cmd == self.CMD_INSTALL:
self.runCmd("install " + args['package'])
self.runCmd("list")
elif cmd == self.CMD_INSTALL:
self.runCmd("install " + args['package'])
+ elif cmd == self.CMD_REMOVE:
+ self.runCmd("remove " + args['package'])
self.setCurrentCommand(cmd)
def cmdFinished(self, retval):
self.callCallbacks(self.EVENT_DONE)
self.setCurrentCommand(cmd)
def cmdFinished(self, retval):
self.callCallbacks(self.EVENT_DONE)
- self.cmd.appClosed.
get().
remove(self.cmdFinished)
- self.cmd.dataAvail.
get().
remove(self.cmdData)
+ self.cmd.appClosed.remove(self.cmdFinished)
+ self.cmd.dataAvail.remove(self.cmdData)
def cmdData(self, data):
print "data:", data
def cmdData(self, data):
print "data:", data
@@
-87,9
+89,11
@@
class IpkgComponent:
if data.find('Downloading') == 0:
self.callCallbacks(self.EVENT_DOWNLOAD, data.split(' ', 5)[1].strip())
elif data.find('Upgrading') == 0:
if data.find('Downloading') == 0:
self.callCallbacks(self.EVENT_DOWNLOAD, data.split(' ', 5)[1].strip())
elif data.find('Upgrading') == 0:
- 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('Installing') == 0:
self.callCallbacks(self.EVENT_INSTALL, data.split(' ', 1)[1].split(' ')[0])
+ elif data.find('Removing') == 0:
+ self.callCallbacks(self.EVENT_REMOVE, data.split(' ', 1)[1].split(' ')[1])
elif data.find('Configuring') == 0:
self.callCallbacks(self.EVENT_CONFIGURING, data.split(' ', 1)[1].split(' ')[0])
elif data.find('An error occurred') == 0:
elif data.find('Configuring') == 0:
self.callCallbacks(self.EVENT_CONFIGURING, data.split(' ', 1)[1].split(' ')[0])
elif data.find('An error occurred') == 0:
@@
-98,7
+102,10
@@
class IpkgComponent:
self.callCallbacks(self.EVENT_ERROR, None)
elif data.find('ipkg_download: ERROR:') == 0:
self.callCallbacks(self.EVENT_ERROR, None)
self.callCallbacks(self.EVENT_ERROR, None)
elif data.find('ipkg_download: ERROR:') == 0:
self.callCallbacks(self.EVENT_ERROR, None)
- elif data.find(' Configuration file') == 0:
+ elif data.find(' Configuration file \'') >= 0:
+ # Note: the config file update question doesn't end with a newline, so
+ # if we get multiple config file update questions, the next ones
+ # don't necessarily start at the beginning of a line
self.callCallbacks(self.EVENT_MODIFIED, data.split(' \'', 1)[1][:-1])
def callCallbacks(self, event, param = None):
self.callCallbacks(self.EVENT_MODIFIED, data.split(' \'', 1)[1][:-1])
def callCallbacks(self, event, param = None):