diff --git a/TODO b/TODO index efbe3979f..e93508178 100644 --- a/TODO +++ b/TODO @@ -3,7 +3,6 @@ TODO list - server-side db backup tool - implement pdepend support in dependencies sorting - add changelog to packages - - split entropy.py into entropy package (move exceptionTools to something saner) - move etpConst['conflicting_tagged_packages'] elsewhere - move etpConst['filesystemdirs'] and etpConst['filesystemdirsmask'] to config file - automatic client db backup @@ -16,10 +15,10 @@ TODO list - implement packages.db.system_mask management Spritz: - - package sets add/remove tool - - allow package remasking + - Proposed for Entropy >1.0 (require API changes): + - entropy.py refactoring (incl. exceptionTools) - UGC: personal package sets - UGC: bug report documents? - UGC: bbcode docs? diff --git a/spritz/src/dialogs.py b/spritz/src/dialogs.py index 1d13ee39f..3c2c83d55 100644 --- a/spritz/src/dialogs.py +++ b/spritz/src/dialogs.py @@ -5651,13 +5651,16 @@ class InputDialog: def __init__(self, parent, title, input_parameters, cancel = True): mywin = gtk.Window() + # avoids to taint the returning elements + # when running nested + self.parameters = self.parameters.copy() mywin.set_title(_("Please fill the following form")) myvbox = gtk.VBox() mylabel = gtk.Label() mylabel.set_markup(cleanMarkupString(title)) myhbox = gtk.HBox() - myvbox.pack_start(mylabel) + myvbox.pack_start(mylabel, expand = False, fill = False) mytable = gtk.Table(rows = len(input_parameters), columns = 2) self.identifiers_table = {} self.cb_table = {} @@ -5678,16 +5681,65 @@ class InputDialog: input_label.set_markup(text) if input_type == "checkbox": + input_widget = gtk.CheckButton(text) input_widget.set_alignment(0.0,0.5) input_widget.set_active(passworded) + elif input_type == "combo": + input_widget = gtk.combo_box_new_text() for opt in combo_options: input_widget.append_text(opt) if combo_options: input_widget.set_active(0) mytable.attach(input_label, 0, 1, row_count, row_count+1) + + elif input_type == "list": + + myhbox_l = gtk.HBox() + input_widget = gtk.ListStore(gobject.TYPE_STRING) + view = gtk.TreeView() + cell = gtk.CellRendererText() + column = gtk.TreeViewColumn( text, cell, markup = 0 ) + column.set_resizable( True ) + column.set_sizing( gtk.TREE_VIEW_COLUMN_FIXED ) + column.set_expand(True) + view.append_column( column ) + view.set_model(input_widget) + for opt in combo_options: + input_widget.append((opt,)) + myhbox_l.pack_start(view, expand = True, fill = True) + + myvbox_l = gtk.VBox() + add_button = gtk.Button() + add_image = gtk.Image() + add_image.set_from_stock("gtk-add", gtk.ICON_SIZE_BUTTON) + add_button.add(add_image) + rm_button = gtk.Button() + rm_image = gtk.Image() + rm_image.set_from_stock("gtk-remove", gtk.ICON_SIZE_BUTTON) + rm_button.add(rm_image) + myvbox_l.pack_start(add_button, expand = False, fill = False) + myvbox_l.pack_start(rm_button, expand = False, fill = False) + + def on_add_button(widget): + mydata = inputDialog(mywin, _("Add atom"), [('atom',_('Atom'),input_cb,False)], True) + if mydata == None: return + atom = mydata.get('atom') + input_widget.append((atom,)) + + def on_remove_button(widget): + model, iterator = view.get_selection().get_selected() + if iterator == None: return + model.remove(iterator) + + add_button.connect("clicked",on_add_button) + rm_button.connect("clicked",on_remove_button) + + myhbox_l.pack_start(myvbox_l, expand = False, fill = False) + mytable.attach(myhbox_l, 0, 2, row_count, row_count+1) + elif input_type == "text": def rescroll_output(adj, scroll): @@ -5710,13 +5762,16 @@ class InputDialog: scrolled_win.add_with_viewport(my_tv) mytable.attach(input_label, 0, 1, row_count, row_count+1) mytable.attach(scrolled_win, 1, 2, row_count, row_count+1) + else: continue self.entry_text_table[input_id] = text self.identifiers_table[input_id] = input_widget + if input_type in ["list"]: + def input_cb(s): return s self.cb_table[input_widget] = input_cb - if input_type != "text": + if input_type not in ["text","list"]: mytable.attach(input_widget, 1, 2, row_count, row_count+1) @@ -5747,7 +5802,7 @@ class InputDialog: mycancel = gtk.Button(stock = "gtk-cancel") mycancel.connect('clicked', self.do_cancel ) bbox.pack_start(mycancel) - myvbox.pack_start(bbox) + myvbox.pack_start(bbox, expand = False, fill = False) myvbox.set_spacing(10) myvbox.show() myhbox.pack_start(myvbox, padding = 10) @@ -5778,6 +5833,12 @@ class InputDialog: content = mywidget.get_active(),mywidget.get_active_text() elif isinstance(mywidget,gtk.TextBuffer): content = mywidget.get_text(mywidget.get_start_iter(),mywidget.get_end_iter(), True) + elif isinstance(mywidget,(gtk.ListStore,gtk.TreeStore,)): + myiter = mywidget.get_iter_first() + content = [] + while myiter: + content.append(mywidget.get_value(myiter, 0)) + myiter = mywidget.iter_next(myiter) else: continue verify_cb = self.cb_table.get(mywidget) diff --git a/spritz/src/etpgui/packages.py b/spritz/src/etpgui/packages.py index ba6baa1f1..cceca092c 100644 --- a/spritz/src/etpgui/packages.py +++ b/spritz/src/etpgui/packages.py @@ -45,6 +45,8 @@ class DummyEntropyPackage: self.set_from = None self.set_cat_namedesc = None self.set_category = False + self.set_install_incomplete = False + self.set_remove_incomplete = False class EntropyPackage: @@ -67,6 +69,8 @@ class EntropyPackage: self.set_from = None self.set_cat_namedesc = None self.set_category = False + self.set_install_incomplete = False + self.set_remove_incomplete = False self.matched_atom = matched_atom self.installed_match = None diff --git a/spritz/src/packages.py b/spritz/src/packages.py index a78c45fbb..f752ddbb9 100644 --- a/spritz/src/packages.py +++ b/spritz/src/packages.py @@ -226,18 +226,20 @@ class EntropyPackages: def _pkg_get_pkgset_matches_installed_matches(self, set_deps): set_matches = [] set_installed_matches = [] + install_incomplete = False + remove_incomplete = False for set_dep in set_deps: if set_dep.startswith(etpConst['packagesetprefix']): set_matches.append((set_dep,None,)) set_installed_matches.append((set_dep,None,)) else: set_match = self.Entropy.atomMatch(set_dep) - if set_match[0] != -1: - set_matches.append(set_match) + if set_match[0] != -1: set_matches.append(set_match) + else: install_incomplete = True set_installed_match = self.Entropy.clientDbconn.atomMatch(set_dep) - if set_match[0] != -1: - set_installed_matches.append(set_installed_match) - return set_matches,set_installed_matches + if set_match[0] != -1: set_installed_matches.append(set_installed_match) + else: remove_incomplete = True + return set_matches, set_installed_matches, install_incomplete, remove_incomplete def _pkg_get_pkgset_set_from_desc(self, set_from): my_set_from = _('Set from') @@ -264,7 +266,7 @@ class EntropyPackages: pkgsets = self.getPackageSets() for set_from, set_name, set_deps in pkgsets: - set_matches, set_installed_matches = self._pkg_get_pkgset_matches_installed_matches(set_deps) + set_matches, set_installed_matches, install_incomplete, remove_incomplete = self._pkg_get_pkgset_matches_installed_matches(set_deps) if not (set_matches and set_installed_matches): continue cat_namedesc = self._pkg_get_pkgset_set_from_desc(set_from) set_objects = [] @@ -277,10 +279,8 @@ class EntropyPackages: yp.set_matches = set_matches yp.set_installed_matches = set_installed_matches - # add myself, to make sure we have an element in cache - #yp, new = gp_call("%s%s" % (etpConst['packagesetprefix'],set_name,),True) - #update_yp(yp) - + myobjs = [] + broken = False for match in set_matches: # set dependency if match[1] == None: @@ -290,9 +290,14 @@ class EntropyPackages: try: yp, new = gp_call(match,True) except exceptionTools.RepositoryError: - continue - update_yp(yp) - objects.append(yp) + broken = True + break + myobjs.append(yp) + if broken: continue + + for yp in myobjs: yp.set_names.clear() + for yp in myobjs: update_yp(yp) + objects += myobjs return objects diff --git a/spritz/src/spritz.glade b/spritz/src/spritz.glade index 8d0b4f969..2d50233ef 100644 --- a/spritz/src/spritz.glade +++ b/spritz/src/spritz.glade @@ -1047,6 +1047,109 @@ 2 + + + 8 + GTK_BUTTONBOX_END + + + True + True + True + 0 + + + + True + 0 + 0 + + + True + 2 + + + True + gtk-add + + + False + False + + + + + True + 0.49000000953674316 + _Add Set + True + + + False + False + 1 + + + + + + + + + + + True + True + True + 0 + + + + True + 0 + 0 + + + True + 2 + + + True + gtk-remove + + + False + False + + + + + True + _Remove Set + True + + + False + False + 1 + + + + + + + + + 1 + + + + + False + False + 3 + + False @@ -2454,33 +2557,126 @@ 9 True - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 3 + 2 - + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Prevents files belonging to a package being overwritten by another + Disabled +Removal only +Install+Removal + + + + 1 + 2 + 1 + 2 + GTK_FILL + + + + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - Protected files and directories + Collision protection + + + 1 + 2 + + + + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + This is what they call "nice level" + 3 + 3 + 1 -19 19 1 10 0 + 1 + True + + + + 1 + 2 + + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Process priority (nice) + + + + + + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Entropy can keep a backup of your updated configuration files + Backup configuration files + 0 + True + + + + 2 + 2 + 3 + + + + + + 1 + 2 + 1 + 2 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Ignored protected files False - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK GTK_POLICY_AUTOMATIC GTK_POLICY_AUTOMATIC - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK @@ -2489,21 +2685,21 @@ - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK GTK_BUTTONBOX_SPREAD - + True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-new @@ -2516,16 +2712,15 @@ - + True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - - + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-edit @@ -2539,16 +2734,16 @@ - + True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-delete @@ -2574,6 +2769,10 @@ + + 1 + 2 + @@ -2703,33 +2902,33 @@ - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - Ignored protected files + Protected files and directories False - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK GTK_POLICY_AUTOMATIC GTK_POLICY_AUTOMATIC - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK @@ -2738,21 +2937,21 @@ - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK GTK_BUTTONBOX_SPREAD - + True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-new @@ -2765,15 +2964,16 @@ - + True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - + + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-edit @@ -2787,16 +2987,16 @@ - + True True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - + - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-delete @@ -2822,103 +3022,6 @@ - - 1 - 2 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 3 - 2 - - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Entropy can keep a backup of your updated configuration files - Backup configuration files - 0 - True - - - - 2 - 2 - 3 - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Process priority (nice) - - - - - - - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - This is what they call "nice level" - 3 - 3 - 1 -19 19 1 10 0 - 1 - True - - - - 1 - 2 - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Collision protection - - - 1 - 2 - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Prevents files belonging to a package being overwritten by another - Disabled -Removal only -Install+Removal - - - - 1 - 2 - 1 - 2 - GTK_FILL - - - - - 1 - 2 - 1 - 2 - @@ -2972,67 +3075,74 @@ Install+Removal 5 3 - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - FTP Proxy - - - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - HTTP Proxy - - - 1 - 2 - GTK_FILL - - - - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Example: http://proxy:1234 + type your password here + False 1 3 + 3 + 4 GTK_FILL - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Example: http://proxy:1234 + type your username here 1 3 - 1 - 2 + 2 + 3 GTK_FILL - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - Download speed limit + Proxy Password + 3 + 4 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Proxy Username + + + 2 + 3 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + kB/sec + + + 2 + 3 4 5 GTK_FILL @@ -3057,76 +3167,69 @@ Install+Removal - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - kB/sec + Download speed limit - 2 - 3 4 5 GTK_FILL - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Proxy Username - - - 2 - 3 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Proxy Password - - - 3 - 4 - GTK_FILL - - - - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - type your username here + Example: http://proxy:1234 1 3 - 2 - 3 + 1 + 2 GTK_FILL - + True True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - type your password here - False + Example: http://proxy:1234 1 3 - 3 - 4 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + HTTP Proxy + + + 1 + 2 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + FTP Proxy + + GTK_FILL @@ -3386,24 +3489,24 @@ Install+Removal 3 3 - + True - + True 0.98000001907348633 - Package category + Terminal font - + True True True 0 - + True gtk-revert-to-saved @@ -3416,7 +3519,7 @@ Install+Removal - + True True True @@ -3431,32 +3534,26 @@ Install+Removal - - 2 - 3 - 5 - 6 - - + True - + True 0.98000001907348633 - Text on error message + Package (default) - + True True True 0 - + True gtk-revert-to-saved @@ -3469,7 +3566,7 @@ Install+Removal - + True True True @@ -3487,29 +3584,27 @@ Install+Removal 1 2 - 5 - 6 - + True - + True 0.98000001907348633 - Text on succ. message + Package updated - + True True True 0 - + True gtk-revert-to-saved @@ -3522,58 +3617,7 @@ Install+Removal - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 5 - 6 - - - - - True - - - True - 0.98000001907348633 - Background error message - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - + True True True @@ -3591,29 +3635,27 @@ Install+Removal 2 3 - 4 - 5 - + True - + True 0.98000001907348633 - Background succ. message + Package not installed - + True True True 0 - + True gtk-revert-to-saved @@ -3626,7 +3668,7 @@ Install+Removal - + True True True @@ -3642,426 +3684,6 @@ Install+Removal - 1 - 2 - 4 - 5 - - - - - True - - - True - 0.98000001907348633 - Successful mesage - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 4 - 5 - - - - - True - - - True - 0.98000001907348633 - Error message - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 2 - 3 - 3 - 4 - - - - - True - - - True - 0.98000001907348633 - Package sub-description - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 1 - 2 - 3 - 4 - - - - - True - - - True - 0.98000001907348633 - Package subtitle - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 3 - 4 - - - - - True - - - True - 0.98000001907348633 - Package description - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 2 - 3 - 2 - 3 - - - - - True - - - True - 0.98000001907348633 - Generic title 2 - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 1 - 2 - 2 - 3 - - - - - True - - - True - 0.98000001907348633 - Generic title 1 - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 2 - 3 - - - - - True - - - True - 0.98000001907348633 - Package reinstalled - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 2 - 3 1 2 @@ -4120,24 +3742,24 @@ Install+Removal - + True - + True 0.98000001907348633 - Package not installed + Package reinstalled - + True True True 0 - + True gtk-revert-to-saved @@ -4150,58 +3772,7 @@ Install+Removal - - True - True - True - 0 - #000000000000 - - - - False - False - 2 - - - - - 1 - 2 - - - - - True - - - True - 0.98000001907348633 - Package updated - - - - - True - True - True - 0 - - - - True - gtk-revert-to-saved - - - - - False - False - 1 - - - - + True True True @@ -4219,27 +3790,29 @@ Install+Removal 2 3 + 1 + 2 - + True - + True 0.98000001907348633 - Package (default) + Generic title 1 - + True True True 0 - + True gtk-revert-to-saved @@ -4252,7 +3825,58 @@ Install+Removal - + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 2 + 3 + + + + + True + + + True + 0.98000001907348633 + Generic title 2 + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + True True True @@ -4270,27 +3894,29 @@ Install+Removal 1 2 + 2 + 3 - + True - + True 0.98000001907348633 - Terminal font + Package description - + True True True 0 - + True gtk-revert-to-saved @@ -4303,7 +3929,7 @@ Install+Removal - + True True True @@ -4318,6 +3944,483 @@ Install+Removal + + 2 + 3 + 2 + 3 + + + + + True + + + True + 0.98000001907348633 + Package subtitle + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 3 + 4 + + + + + True + + + True + 0.98000001907348633 + Package sub-description + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 1 + 2 + 3 + 4 + + + + + True + + + True + 0.98000001907348633 + Error message + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 2 + 3 + 3 + 4 + + + + + True + + + True + 0.98000001907348633 + Successful mesage + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 4 + 5 + + + + + True + + + True + 0.98000001907348633 + Background succ. message + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 1 + 2 + 4 + 5 + + + + + True + + + True + 0.98000001907348633 + Background error message + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 2 + 3 + 4 + 5 + + + + + True + + + True + 0.98000001907348633 + Text on succ. message + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 5 + 6 + + + + + True + + + True + 0.98000001907348633 + Text on error message + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 1 + 2 + 5 + 6 + + + + + True + + + True + 0.98000001907348633 + Package category + + + + + True + True + True + 0 + + + + True + gtk-revert-to-saved + + + + + False + False + 1 + + + + + True + True + True + 0 + #000000000000 + + + + False + False + 2 + + + + + 2 + 3 + 5 + 6 + @@ -4871,56 +4974,14 @@ Install+Removal 3 2 - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 150 - - - 1 - 2 - 2 - 3 - - - - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 150 - - - 1 - 2 - 1 - 2 - - - - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 150 - - - 1 - 2 - - - - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 10 - What you were doing + Your Full Name - 2 - 3 GTK_FILL @@ -4939,17 +5000,59 @@ Install+Removal - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 10 - Your Full Name + What you were doing + 2 + 3 GTK_FILL + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 150 + + + 1 + 2 + + + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 150 + + + 1 + 2 + 1 + 2 + + + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 150 + + + 1 + 2 + 2 + 3 + + 3 @@ -5430,177 +5533,6 @@ Install+Removal 4 10 3 - - - True - True - - - 3 - 4 - 4 - 5 - - - - - - True - 0 - Secure Services Port - - - 2 - 3 - 4 - 5 - GTK_FILL - - - - - - True - 0 - Services Port - - - 4 - 5 - GTK_FILL - - - - - - True - True - - - 1 - 2 - 4 - 5 - - - - - - True - bz2 -gz - - - 3 - 4 - 3 - 4 - GTK_FILL - GTK_FILL - - - - - True - 0 - Compression - - - 2 - 3 - 3 - 4 - GTK_FILL - - - - - - True - 0 - Identifier - - - GTK_FILL - - - - - - True - 0 - Description - - - 1 - 2 - GTK_FILL - - - - - - True - 0 - Mirrors - - - 2 - 3 - GTK_FILL - - - - - - True - 0 - URI - - - 3 - 4 - GTK_FILL - - - - - - True - True - - - 1 - 4 - - - - - - True - True - - - 1 - 4 - 1 - 2 - - - - - - True - True - - - 1 - 2 - 3 - 4 - - - 120 @@ -5738,6 +5670,177 @@ gz GTK_FILL + + + True + True + + + 1 + 2 + 3 + 4 + + + + + + True + True + + + 1 + 4 + 1 + 2 + + + + + + True + True + + + 1 + 4 + + + + + + True + 0 + URI + + + 3 + 4 + GTK_FILL + + + + + + True + 0 + Mirrors + + + 2 + 3 + GTK_FILL + + + + + + True + 0 + Description + + + 1 + 2 + GTK_FILL + + + + + + True + 0 + Identifier + + + GTK_FILL + + + + + + True + 0 + Compression + + + 2 + 3 + 3 + 4 + GTK_FILL + + + + + + True + bz2 +gz + + + 3 + 4 + 3 + 4 + GTK_FILL + GTK_FILL + + + + + True + True + + + 1 + 2 + 4 + 5 + + + + + + True + 0 + Services Port + + + 4 + 5 + GTK_FILL + + + + + + True + 0 + Secure Services Port + + + 2 + 3 + 4 + 5 + GTK_FILL + + + + + + True + True + + + 3 + 4 + 4 + 5 + + + @@ -6420,91 +6523,7 @@ gz 5 5 - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 12 - 13 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Creation date - True - - - 12 - 13 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 11 - 12 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Install Size - True - - - 11 - 12 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 10 - 11 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Package Size - True - - - 10 - 11 - - - - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 @@ -6515,21 +6534,234 @@ gz 1 2 - 9 - 10 + 1 + 2 - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - MD5 Signature + Website True - 9 - 10 + 1 + 2 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Location + True + + + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Version + True + + + 2 + 3 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 2 + 3 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Slot + True + + + 3 + 4 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 3 + 4 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Kernel Tag + True + + + 4 + 5 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 4 + 5 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Revision + True + + + 5 + 6 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 5 + 6 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Branch + True + + + 6 + 7 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 6 + 7 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Entropy API + True + + + 7 + 8 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 7 + 8 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Download Path + True + + + 8 + 9 @@ -6550,233 +6782,20 @@ gz - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - Download Path + MD5 Signature True - 8 - 9 + 9 + 10 - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 7 - 8 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Entropy API - True - - - 7 - 8 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 6 - 7 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Branch - True - - - 6 - 7 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 5 - 6 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Revision - True - - - 5 - 6 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 4 - 5 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Kernel Tag - True - - - 4 - 5 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 3 - 4 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Slot - True - - - 3 - 4 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - 2 - 3 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Version - True - - - 2 - 3 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Location - True - - - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - - - 1 - 2 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Website - True - - - 1 - 2 - GTK_FILL - - - - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 @@ -6787,8 +6806,92 @@ gz 1 2 - 1 - 2 + 9 + 10 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Package Size + True + + + 10 + 11 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 10 + 11 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Install Size + True + + + 11 + 12 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 11 + 12 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Creation date + True + + + 12 + 13 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + + + 1 + 2 + 12 + 13 @@ -6821,7 +6924,7 @@ gz 2 15 - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 @@ -6832,57 +6935,21 @@ gz 1 2 - 3 - 4 + 2 + 3 - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - Masked + CXXFLAGS True - 3 - 4 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - CHOST - True - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - True - True - True - - - 1 - 2 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - CFLAGS - True - - - 1 - 2 + 2 + 3 @@ -6902,20 +6969,20 @@ gz - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 - CXXFLAGS + CFLAGS True - 2 - 3 + 1 + 2 - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK 0 @@ -6926,8 +6993,44 @@ gz 1 2 - 2 - 3 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + CHOST + True + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Masked + True + + + 3 + 4 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + True + True + True + + + 1 + 2 + 3 + 4 @@ -8353,23 +8456,15 @@ Please read them carefully and <b>make your choice</b>. 2 2 - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Announced - True - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 0 - Revised + 1 True + 1 + 2 1 2 @@ -8387,19 +8482,27 @@ Please read them carefully and <b>make your choice</b>. - + True GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 1 + 0 + Revised True - 1 - 2 1 2 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 0 + Announced + True + + @@ -8705,103 +8808,33 @@ Please read them carefully and <b>make your choice</b>. 2 3 - + True 0 - this is the size + Title + + + + + True + 0 + this is the title True 1 2 - 5 - 6 - + True 0 - Size + Description - 5 - 6 - - - - - True - 0 - these are the keywords - True - - - 1 - 2 - 4 - 5 - - - - - True - 0 - Keywords - - - 4 - 5 - - - - - True - 0 - this it the date - True - - - 1 - 2 - 3 - 4 - - - - - True - 0 - Date - - - 3 - 4 - - - - - True - 0 - this is the author - True - - - 1 - 2 - 2 - 3 - - - - - True - 0 - Author - - - 2 - 3 + 1 + 2 @@ -8819,34 +8852,104 @@ Please read them carefully and <b>make your choice</b>. - + True 0 - Description + Author - 1 - 2 + 2 + 3 - + True 0 - this is the title + this is the author True 1 2 + 2 + 3 - + True 0 - Title + Date + + 3 + 4 + + + + + True + 0 + this it the date + True + + + 1 + 2 + 3 + 4 + + + + + True + 0 + Keywords + + + 4 + 5 + + + + + True + 0 + these are the keywords + True + + + 1 + 2 + 4 + 5 + + + + + True + 0 + Size + + + 5 + 6 + + + + + True + 0 + this is the size + True + + + 1 + 2 + 5 + 6 + @@ -9079,61 +9182,19 @@ Please read them carefully and <b>make your choice</b>. 2 3 - - True - - - - 1 - 2 - 3 - 4 - - - - + True 0 - Document type + Title - - 3 - 4 - - - True - True - 60 - - - 1 - 2 - 2 - 3 - - - - + True 0 - Keywords (space separated) + Description - 2 - 3 - - - - - True - True - 500 - - - 1 - 2 1 2 @@ -9150,22 +9211,64 @@ Please read them carefully and <b>make your choice</b>. - + True - 0 - Description + True + 500 + 1 + 2 1 2 - + True 0 - Title + Keywords (space separated) + + 2 + 3 + + + + + True + True + 60 + + + 1 + 2 + 2 + 3 + + + + + True + 0 + Document type + + + 3 + 4 + + + + + True + + + + 1 + 2 + 3 + 4 + @@ -10981,16 +11084,85 @@ Please read them carefully and <b>make your choice</b>. - + True True - localhost + False 1 2 + 3 + 4 + + + True + True + root + + + 1 + 2 + 2 + 3 + + + + + True + 0 + Password + + + 3 + 4 + + + + + True + 0 + Username + + + 2 + 3 + + + + + True + True + 1027 1 65535 1 10 10 + 1 + + + 1 + 2 + 1 + 2 + + + + + True + 0 + Port + + + 1 + 2 + + + + + True + 0 + Hostname + + True @@ -11009,83 +11181,14 @@ Please read them carefully and <b>make your choice</b>. - - True - 0 - Hostname - - - - - True - 0 - Port - - - 1 - 2 - - - - + True True - 1027 1 65535 1 10 10 - 1 + localhost 1 2 - 1 - 2 - - - - - True - 0 - Username - - - 2 - 3 - - - - - True - 0 - Password - - - 3 - 4 - - - - - True - True - root - - - 1 - 2 - 2 - 3 - - - - - True - True - False - - - 1 - 2 - 3 - 4 @@ -11269,125 +11372,135 @@ Please read them carefully and <b>make your choice</b>. 2 15 - + True 0 - True - PANGO_WRAP_CHAR + Queue Id + + + + + True + 0 + Command name + + + 1 + 2 + + + + + True + 0 + Command description + + + 2 + 3 + + + + + True + 0 + Process result - 1 - 2 11 12 - + True 0 - True + Remote stdout file - 1 - 2 10 11 - + True 0 - True + Errored at - 1 - 2 9 10 - + True 0 - True + Completed at - 1 - 2 8 9 - + True 0 - True + Processing at - 1 - 2 7 8 - + True 0 - True + Queued at - 1 - 2 6 7 - + True 0 - True + User / Group - 1 - 2 5 6 - + True 0 - True + Command arguments - 1 - 2 - 4 - 5 - - - - - True - 0 - True - - - 1 - 2 3 4 - + + True + 0 + Call + + + 4 + 5 + + + + True 0 True @@ -11395,8 +11508,6 @@ Please read them carefully and <b>make your choice</b>. 1 2 - 2 - 3 @@ -11413,7 +11524,7 @@ Please read them carefully and <b>make your choice</b>. - + True 0 True @@ -11421,135 +11532,127 @@ Please read them carefully and <b>make your choice</b>. 1 2 - - - - - True - 0 - Call - - - 4 - 5 - - - - - True - 0 - Command arguments - - - 3 - 4 - - - - - True - 0 - User / Group - - - 5 - 6 - - - - - True - 0 - Queued at - - - 6 - 7 - - - - - True - 0 - Processing at - - - 7 - 8 - - - - - True - 0 - Completed at - - - 8 - 9 - - - - - True - 0 - Errored at - - - 9 - 10 - - - - - True - 0 - Remote stdout file - - - 10 - 11 - - - - - True - 0 - Process result - - - 11 - 12 - - - - - True - 0 - Command description - - 2 3 - + True 0 - Command name + True - 1 - 2 + 1 + 2 + 3 + 4 - + True 0 - Queue Id + True + + 1 + 2 + 4 + 5 + + + + + True + 0 + True + + + 1 + 2 + 5 + 6 + + + + + True + 0 + True + + + 1 + 2 + 6 + 7 + + + + + True + 0 + True + + + 1 + 2 + 7 + 8 + + + + + True + 0 + True + + + 1 + 2 + 8 + 9 + + + + + True + 0 + True + + + 1 + 2 + 9 + 10 + + + + + True + 0 + True + + + 1 + 2 + 10 + 11 + + + + + True + 0 + True + PANGO_WRAP_CHAR + + + 1 + 2 + 11 + 12 + @@ -11606,20 +11709,47 @@ Please read them carefully and <b>make your choice</b>. 2 8 - + True 0 - True + Pinboard Id + + + + + True + 0 + Date + + + 1 + 2 + + + + + True + 0 + Done + + + 2 + 3 + + + + + True + 0 + Note - 1 - 2 3 4 - + True 0 True @@ -11627,8 +11757,6 @@ Please read them carefully and <b>make your choice</b>. 1 2 - 2 - 3 @@ -11645,7 +11773,7 @@ Please read them carefully and <b>make your choice</b>. - + True 0 True @@ -11653,48 +11781,23 @@ Please read them carefully and <b>make your choice</b>. 1 2 - - - - - True - 0 - Note - - - 3 - 4 - - - - - True - 0 - Done - - 2 3 - + True 0 - Date + True - 1 - 2 + 1 + 2 + 3 + 4 - - - True - 0 - Pinboard Id - - False @@ -11789,25 +11892,47 @@ Please read them carefully and <b>make your choice</b>. 2 3 - + True - True - True - http://www.sabayon.org - GTK_RELIEF_NONE 0 - 0 - http://www.sabayon.org + Notice board Id + + + + + True + 0 + Date + + + 1 + 2 + + + + + True + 0 + Title + + + 2 + 3 + + + + + True + 0 + Link - 1 - 2 3 4 - + True 0 True @@ -11815,8 +11940,6 @@ Please read them carefully and <b>make your choice</b>. 1 2 - 2 - 3 @@ -11833,7 +11956,7 @@ Please read them carefully and <b>make your choice</b>. - + True 0 True @@ -11841,48 +11964,28 @@ Please read them carefully and <b>make your choice</b>. 1 2 - - - - - True - 0 - Link - - - 3 - 4 - - - - - True - 0 - Title - - 2 3 - + True + True + True + http://www.sabayon.org + GTK_RELIEF_NONE 0 - Date + 0 + http://www.sabayon.org - 1 - 2 + 1 + 2 + 3 + 4 - - - True - 0 - Notice board Id - - False diff --git a/spritz/src/spritz.py b/spritz/src/spritz.py index f9d3259cb..88b1f399f 100644 --- a/spritz/src/spritz.py +++ b/spritz/src/spritz.py @@ -2128,6 +2128,9 @@ class SpritzApplication(Controller): else: self.ui.maskedWarningBox.hide() + if action == "pkgsets": self.ui.pkgsetsButtonBox.show() + else: self.ui.pkgsetsButtonBox.hide() + if action == "queued": self.ui.queueReviewAndInstallBox.show() else: self.ui.queueReviewAndInstallBox.hide() @@ -2433,6 +2436,72 @@ class SpritzApplication(Controller): def on_noticeBoardMenuItem_activate(self, widget): self.showNoticeBoard() + def on_pkgsetAddButton_clicked(self, widget): + + current_sets = self.Equo.packageSetList() + def fake_callback(s): + if (s not in current_sets) and (" " not in s) and (not s.startswith(etpConst['packagesetprefix'])): + return True + return False + + def lv_callback(atom): + c_id, c_rc = self.Equo.clientDbconn.atomMatch(atom) + if c_id != -1: return True + c_id, c_rc = self.Equo.atomMatch(atom) + if c_id != -1: return True + return False + + input_params = [ + ('name',_("Package Set name"),fake_callback,False), + ('atoms',('list',(_('Package atoms'),[],),),lv_callback,False) + ] + + data = self.Equo.inputBox( + _('Choose what Package Set you want to add'), + input_params, + cancel_button = True + ) + if data == None: return + + rc, msg = self.Equo.add_user_package_set(data.get("name"), data.get("atoms")) + if rc != 0: + okDialog(self.ui.main,"%s: %s" % (_("Error"),msg,)) + return + + self.etpbase.clearPackagesSingle("pkgsets") + self.addPackages() + + def on_pkgsetRemoveButton_clicked(self, widget): + + def mymf(m): + set_from, set_name, set_deps = m + if set_from == etpConst['userpackagesetsid']: + return set_name + return 0 + avail_pkgsets = [x for x in map(mymf,self.Equo.packageSetList()) if x != 0] + + def fake_callback(s): + return True + input_params = [ + ('pkgset',('combo',(_('Removable Package Set'),avail_pkgsets),),fake_callback,False) + ] + + data = self.Equo.inputBox( + _('Choose what Package Set you want to remove'), + input_params, + cancel_button = True + ) + if data == None: return + x_id,set_name = data.get("pkgset") + + rc, msg = self.Equo.remove_user_package_set(set_name) + if rc != 0: + okDialog(self.ui.main,"%s: %s" % (_("Error"),msg,)) + return + + self.etpbase.clearPackagesSingle("pkgsets") + self.addPackages() + def on_deptestButton_clicked(self, widget): self.switchNotebookPage("output") self.uiLock(True) @@ -2556,7 +2625,6 @@ class SpritzApplication(Controller): do_stop() - def on_color_reset(self, widget): # get parent parent = widget.get_parent() diff --git a/spritz/src/views.py b/spritz/src/views.py index 5f937e608..cfda9f6ac 100644 --- a/spritz/src/views.py +++ b/spritz/src/views.py @@ -771,8 +771,13 @@ class EntropyPackageView: pkgsets, exp_matches, objs, set_objs, exp_atoms = self._get_pkgset_data(self.selected_objs, add = install) if not objs+set_objs: return - q_cache = {} + install_incomplete = [x for x in self.selected_objs if x.set_install_incomplete] + remove_incomplete = [x for x in self.selected_objs if x.set_remove_incomplete] + if (install and install_incomplete) or ((not install) and remove_incomplete): + okDialog(self.ui.main,_("There are incomplete package sets, continue at your own risk")) + + q_cache = {} for obj in objs+set_objs: q_cache[obj.matched_atom] = obj.queued if install: @@ -1113,13 +1118,11 @@ class EntropyPackageView: mydummy = DummyEntropyPackage(namedesc = cat_text, dummy_type = SpritzConf.dummy_category, onlyname = category) mydummy.color = SpritzConf.color_package_category if pkgsets: - set_from, set_name, set_deps = self.Equo.packageSetMatch(category)[0] mydummy.set_category = category mydummy.set_from = set_from - mydummy.set_matches, mydummy.set_installed_matches = self.etpbase._pkg_get_pkgset_matches_installed_matches(set_deps) + mydummy.set_matches, mydummy.set_installed_matches, mydummy.set_install_incomplete, mydummy.set_remove_incomplete = self.etpbase._pkg_get_pkgset_matches_installed_matches(set_deps) mydummy.namedesc = "%s\n%s" % (category,cleanMarkupString(self.etpbase._pkg_get_pkgset_set_from_desc(set_from)),) - self.dummyCats[category] = mydummy parent = self.store.append( None, (mydummy,) ) for po in categories[category]: