Entropy/Repository Manager:

- make it stronger when dealing with Portage on Spm functions
Entropy/Spritz:
- do not consider spm package dict static


git-svn-id: http://svn.sabayonlinux.org/projects/entropy/trunk@2466 cd1c1023-2f26-0410-ae45-c471fc1f0318
This commit is contained in:
lxnay
2008-10-03 18:11:27 +00:00
parent 430091eb8e
commit d32c3049ea
2 changed files with 32 additions and 20 deletions
+18 -15
View File
@@ -21932,22 +21932,25 @@ class SystemManagerExecutorServerRepositoryInterface:
data = {}
data['atom'] = matched_atom
data['key'] = self.entropyTools.dep_getkey(matched_atom)
if from_installed:
data['slot'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_package_slot(matched_atom)
portage_matched_atom = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_best_atom("%s:%s" % (data['key'],data['slot'],))
# get installed package description
data['available_atom'] = portage_matched_atom
if portage_matched_atom:
data['use'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_useflags(portage_matched_atom)
try:
if from_installed:
data['slot'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_package_slot(matched_atom)
portage_matched_atom = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_best_atom("%s:%s" % (data['key'],data['slot'],))
# get installed package description
data['available_atom'] = portage_matched_atom
if portage_matched_atom:
data['use'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_useflags(portage_matched_atom)
else:
# get use flags of the installed package
data['use'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_package_useflags(matched_atom)
data['description'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_package_description(matched_atom)
else:
# get use flags of the installed package
data['use'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_package_useflags(matched_atom)
data['description'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_package_description(matched_atom)
else:
data['slot'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_slot(matched_atom)
data['use'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_useflags(matched_atom)
data['installed_atom'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_atom("%s:%s" % (data['key'],data['slot'],))
data['description'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_description(matched_atom)
data['slot'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_slot(matched_atom)
data['use'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_useflags(matched_atom)
data['installed_atom'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_installed_atom("%s:%s" % (data['key'],data['slot'],))
data['description'] = self.SystemManagerExecutor.SystemInterface.Entropy.SpmService.get_package_description(matched_atom)
except KeyError:
pass
return data
+14 -5
View File
@@ -569,7 +569,10 @@ class RepositoryManagerMenu(MenuSkel):
cell.set_property('stock-id','gtk-cancel')
def spm_package_obj_to_cell(self, obj, cell):
use_data = obj['use']['use_string'].split()
use_data = []
if obj.has_key('use'):
if obj['use'].has_key('use_string'):
use_data = obj['use']['use_string'].split()
max_chars = 100
use_string = []
for use in use_data:
@@ -585,18 +588,24 @@ class RepositoryManagerMenu(MenuSkel):
installed_string = '<b>%s</b>: %s\n' % (_("Installed"),cleanMarkupString(str(obj['installed_atom'])),)
if obj.has_key('available_atom'):
available_string = '<b>%s</b>: %s\n' % (_("Available"),cleanMarkupString(str(obj['available_atom'])),)
atom = obj.get('atom')
key = obj.get('key')
slot = obj.get('slot')
description = obj.get('description')
txt = "<i>%s</i>\n<small><b>%s</b>: %s, <b>%s</b>: %s\n" % (
cleanMarkupString(obj['atom']),
cleanMarkupString(atom),
_("Key"),
cleanMarkupString(obj['key']),
cleanMarkupString(key),
_("Slot"),
cleanMarkupString(obj['slot']),
cleanMarkupString(slot),
)
txt += installed_string
txt += available_string
txt += "<b>%s</b>: %s\n<b>%s</b>: %s</small>" % (
_("Description"),
cleanMarkupString(obj['description']),
cleanMarkupString(description),
_("USE Flags"),
cleanMarkupString(use_string),
)