Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

In Unity, the Update Manager was included in the power cog menu along with log out, suspend, shut down etc. But in GNOME Shell, I do not find such an option. Is there any extension or tweak to make Update Manager appear in that menu?

share|improve this question
    
You can search for the Update Manager in GNOME Shell's Activities view, so I'm assuming you want it added there as a matter of convenience. –  Christopher Kyle Horton Nov 9 '11 at 7:06
    
Yes, it would be very useful for me to have it under system menu. –  Vivek Nov 9 '11 at 7:23

2 Answers 2

up vote 3 down vote accepted

This way to solve the problem is achieved by using the alternative-status-menu extension.

Install extension

If you have not installed the alternative-status-menu extension, type the following commands in the terminal.

sudo add-apt-repository ppa:webupd8team/gnome3
sudo apt-get update
sudo apt-get install gnome-shell-extensions-alternative-status-menu

Patching

gedit update-menu-extension.patch

Cut the following, and paste in the editor.

diff -urNP org/extension.js new/extension.js
--- org/extension.js    2011-11-10 00:12:19.912240830 +0900
+++ new/extension.js    2011-11-10 00:10:14.779233789 +0900
@@ -2,6 +2,7 @@
 const Lang = imports.lang;
 const St = imports.gi.St;

+const Shell = imports.gi.Shell;
 const Main = imports.ui.main;
 const PopupMenu = imports.ui.popupMenu;
 const GnomeSession = imports.misc.gnomeSession;
@@ -10,6 +11,13 @@
 const Gettext = imports.gettext.domain('gnome-shell-extensions');
 const _ = Gettext.gettext;

+function updateManager(item) {
+        Main.overview.hide();
+        let app = Shell.AppSystem.get_default().lookup_setting('update-manager.desktop');
+        app.activate();
+}
+
+
 function updateSuspend(object, pspec, item) {
     item.actor.visible = object.get_can_suspend();
 }
@@ -57,6 +65,10 @@
     item.connect('activate', Lang.bind(this, this._onPreferencesActivate));
     this.menu.addMenuItem(item);

+    item = new PopupMenu.PopupMenuItem(_("Update Manager"));
+    item.connect('activate', Lang.bind(this, updateManager));
+    this.menu.addMenuItem(item);
+
     item = new PopupMenu.PopupSeparatorMenuItem();
     this.menu.addMenuItem(item);

Add a blank line at the last line, and save.

cp /usr/share/gnome-shell/extensions/alternative-status-menu@gnome-shell-extensions.gnome.org/extension.js

patch -p1 < update-menu-extension.patch

sudo cp extension.js /usr/share/gnome-shell/extensions/alternative-status-menu@gnome-shell-extensions.gnome.org/.

Restart gnome-shell and turn on the alternative-status-menu extension by gnome-tweak-tool.

Screenshot of added entry (note: in Japanese)

The above screenshot is from the Japanese version. "アップデートマネージャー" = "Update Manager". Don't worry, the menu item ("Update Manager") will be displayed in English.

Note: If you will upgrade alternative-status-menu, you can not use "Update Manager" menu in session menus because alternative-status-menu extension will be overwritten.

Recovery

sudo apt-get purge gnome-shell-extensions-alternative-status-menu

or

sudo apt-get install --reinstall gnome-shell-extensions-alternative-status-menu
share|improve this answer
    
Awesome. This is working perfectly. :) –  Vivek Nov 17 '11 at 6:33

Do you have that ribbon to the left of the screen? I know when I am trying to keep a program there, I need to open the program and then right click it in launcher and press Keep in launcher.

share|improve this answer
    
The poster is using GNOME Shell, so the equivalent to pinning it to the Unity launcher like you describe is to right-click the running Update Manager's icon in the dock and select "Add to Favorites". But I don't know if that would be the solution they're looking for here. –  Christopher Kyle Horton Nov 9 '11 at 8:32
    
WarriorIng64 is right. I am using GNOME shell, and that trick doesn't work here. –  Vivek Nov 9 '11 at 9:26
    
Well, I tried :P –  HelpNeeder Nov 9 '11 at 19:15

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.