|
|
@ -127,38 +127,43 @@ class DistributiveRepository:
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
return {}
|
|
|
|
return {}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def _getfromcontent(self,filename):
|
|
|
|
|
|
|
|
"""Get info from content"""
|
|
|
|
|
|
|
|
varsShare = self.varsShare
|
|
|
|
|
|
|
|
distr = None
|
|
|
|
|
|
|
|
# may be directory is isodir (directory which contains iso image)
|
|
|
|
|
|
|
|
extname = "isodir"
|
|
|
|
|
|
|
|
try:
|
|
|
|
|
|
|
|
distr = IsoDistributive(filename)
|
|
|
|
|
|
|
|
filename = distr.convertToDirectory().directory
|
|
|
|
|
|
|
|
except Exception,e:
|
|
|
|
|
|
|
|
extname = "dir"
|
|
|
|
|
|
|
|
d = self.ini_to_dict(path.join(filename,
|
|
|
|
|
|
|
|
'etc/calculate/calculate.ini'))
|
|
|
|
|
|
|
|
if not d or not "march" in d:
|
|
|
|
|
|
|
|
if path.exists(path.join(filename,'lib64')):
|
|
|
|
|
|
|
|
d['march'] = 'x86_64'
|
|
|
|
|
|
|
|
else:
|
|
|
|
|
|
|
|
d['march']= 'i686'
|
|
|
|
|
|
|
|
if d:
|
|
|
|
|
|
|
|
d['ext'] = extname
|
|
|
|
|
|
|
|
d["name"] = varsShare.getShortnameByMakeprofile(filename) or \
|
|
|
|
|
|
|
|
varsShare.getShortnameByIni(filename) or \
|
|
|
|
|
|
|
|
varsShare.detectOtherShortname(filename) or \
|
|
|
|
|
|
|
|
"Linux"
|
|
|
|
|
|
|
|
d['ver'] = \
|
|
|
|
|
|
|
|
varsShare.getVersionFromMetapackage(filename,d["name"]) or \
|
|
|
|
|
|
|
|
varsShare.getVersionFromCalculateIni(filename) or "0"
|
|
|
|
|
|
|
|
if distr:
|
|
|
|
|
|
|
|
distr.close()
|
|
|
|
|
|
|
|
return d
|
|
|
|
|
|
|
|
|
|
|
|
def _getdistrinfo(self,filename):
|
|
|
|
def _getdistrinfo(self,filename):
|
|
|
|
"""Get information by distributive"""
|
|
|
|
"""Get information by distributive"""
|
|
|
|
varsShare = self.varsShare
|
|
|
|
varsShare = self.varsShare
|
|
|
|
# if filename is directory
|
|
|
|
# if filename is directory
|
|
|
|
if path.isdir(filename):
|
|
|
|
if path.isdir(filename):
|
|
|
|
distr = None
|
|
|
|
return self._getfromcontent(filename)
|
|
|
|
# may be directory is isodir (directory which contains iso image)
|
|
|
|
|
|
|
|
extname = "isodir"
|
|
|
|
|
|
|
|
try:
|
|
|
|
|
|
|
|
distr = IsoDistributive(filename)
|
|
|
|
|
|
|
|
filename = distr.convertToDirectory().directory
|
|
|
|
|
|
|
|
except Exception,e:
|
|
|
|
|
|
|
|
extname = "dir"
|
|
|
|
|
|
|
|
d = self.ini_to_dict(path.join(filename,
|
|
|
|
|
|
|
|
'etc/calculate/calculate.ini'))
|
|
|
|
|
|
|
|
if not d or not "march" in d:
|
|
|
|
|
|
|
|
if path.exists(path.join(filename,'lib64')):
|
|
|
|
|
|
|
|
d['march'] = 'x86_64'
|
|
|
|
|
|
|
|
else:
|
|
|
|
|
|
|
|
d['march']= 'i686'
|
|
|
|
|
|
|
|
if d:
|
|
|
|
|
|
|
|
d['ext'] = extname
|
|
|
|
|
|
|
|
d["name"] = varsShare.getShortnameByMakeprofile(filename) or \
|
|
|
|
|
|
|
|
varsShare.getShortnameByIni(filename) or \
|
|
|
|
|
|
|
|
varsShare.detectOtherShortname(filename) or \
|
|
|
|
|
|
|
|
"Linux"
|
|
|
|
|
|
|
|
d['ver'] = \
|
|
|
|
|
|
|
|
varsShare.getVersionFromMetapackage(filename,d["name"]) or \
|
|
|
|
|
|
|
|
varsShare.getVersionFromCalculateIni(filename) or "0"
|
|
|
|
|
|
|
|
if distr:
|
|
|
|
|
|
|
|
distr.close()
|
|
|
|
|
|
|
|
return d
|
|
|
|
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
match = self.reDistName.match(filename)
|
|
|
|
match = self.reDistName.match(filename)
|
|
|
|
if not match:
|
|
|
|
if not match:
|
|
|
|