i would first thank pcd for this great plugin and the first good one dealing with huge numbers of xbmc addons,and TSmedia xbmc part is based on this plugin code although i used different approach to the same idea,i TSmedia conversion of xbmc addons to enigma2 needs more work and time than than the one used with xbmcAddons to be more suitable with enigma2 enviroment
so TSmedia is not in competition with xbmcAddons but we consider xbmcAddons is mother of TSmedia xbmc part
now as translate my appreciation to this work i will add many my addons not available to be added to the xbmcAddons collection
but i like to add some suggestion:
when download module.script every time finishing the installation of script the screen exits so you have to return again and search for the second script module
and solution simple is just to remove self.close() in line 2716
self.session.open(Console,_(title),[cmd])
self.close()
also many addons when click on them nothing happaned,no message and anything and we should do log file to see what is the error,this is normal behavior because we use
system(python self.rg) staterment
i suggest to use other method which enable for us error handing
def import_(filename): #filename is path for addons default file
import imp, os.path
(path, name) = os.path.split(filename)
(name, ext) = os.path.splitext(name)
print "55",path
sys.path.append(path)
(file, filename, data) = imp.find_module(name, [path])
return imp.load_module(name, file, filename, data)
function to detect error and report it the log file in tmp,the initiation of function put in except statement
def trace_error():
import sys,traceback
traceback.print_exc(file = sys.stdout)
traceback.print_exc(file=open("/tmp/XBMCaddons_log","w"))
#######routine for running default file
try:
print "434",ARG
try:import_(default_file)
except:system( "python " + ARG)
except:
if os.path.exists("/tmp/XBMCaddons_log"):
os.remove("/tmp/XBMCaddons_log")
try:self.session.open(MessageBox, _("Error,press info for details"), timeout = 10, type = 1)
except:pass
trace_error()
i attached modified plugin.py with the solution but still far from perfect and just for testing but may PCD imporve it,the solution when there is error popup message tells us what happaned and the error info written to tmp/xbmc-addons.log without restarting and debugging enigma2
another problem i faced that most of addons are large size and itis real problem for who having old dreamboxes(dm800,dm800se,dm500hd) which have limited flash capacity so no choice to use the plugin apart from using flashexpander with its problems or slow multiboot agents
my suggestion to solve this problem to install the xbmcADDONs then before adding any addons move to flash usb or harddisc by the tool
pluginskinmovers then after that add all the addons and all the scripts without compromising the free space
mfaraj57-TSmedia
Edited by mfaraj57, 27 June 2014 - 13:44.