@@ -899,6 +899,11 @@ def list_header_func(row, before, user_data=None):
899
899
self .refresh_cache_menuitem .set_sensitive (False )
900
900
submenu .append (self .refresh_cache_menuitem )
901
901
902
+ software_sources_menuitem = Gtk .MenuItem (label = _ ("Software sources..." ))
903
+ software_sources_menuitem .connect ("activate" , self .open_software_sources )
904
+ software_sources_menuitem .show ()
905
+ submenu .append (software_sources_menuitem )
906
+
902
907
self .prefs_menuitem = Gtk .MenuItem (label = _ ("Preferences" ))
903
908
self .prefs_menuitem .connect ("activate" , self .on_prefs_clicked )
904
909
self .prefs_menuitem .show ()
@@ -1400,6 +1405,15 @@ def load_landing_apps(self, rcache=None):
1400
1405
self .load_featured ()
1401
1406
self .load_top_rated ()
1402
1407
1408
+ def open_software_sources (self ,_ ):
1409
+ # Opens Mint's Software Sources and refreshes the cache afterwards
1410
+ def on_process_exited (proc , result ):
1411
+ proc .wait_finish (result )
1412
+ self .refresh_cache ()
1413
+ p = Gio .Subprocess .new (["mintsources" ], 0 )
1414
+ # Add a callback when we exit mintsources
1415
+ p .wait_async (None , on_process_exited )
1416
+
1403
1417
def should_show_pkginfo (self , pkginfo ):
1404
1418
if pkginfo .pkg_hash .startswith ("apt" ):
1405
1419
return True
0 commit comments