Προσθήκη YaST στο status menu του Gnome Shell στο Gnome 3 του 11.4

Αφορμή για το παρον άθρο πήρα από το post του Pavol Rusnak.
Η διαδικασία αποτελείται από 4 βηματάκια. Απλά δώστε τις παρακάτω εντολές σαν διαχειριστές (root):

1. cd /

2. wget https://gist.github.com/raw/8d0d7d756e18b8a1da21/0cad3011e90e1e2863651ee432bab57c43c6539f/gnome3-statusmenu-yast.patch

3. patch -p1 < gnome3-statusmenu-yast.patch

4. rm gnome3-statusmenu-yast.patch



Τι έκαναν οι παραπάνω εντολές; Αλλάζουν το αρχείο /usr/share/gnome-shell/js/ui/statusMenu.js που έχει το μενού κατάστασης, και προσθέτουν ένα ακόμα πεδίο στο μενού, για το YaST. Μπορείτε να προσθέσετε και δικές σας εφαρμογές.
Ο τρόπος της αλλαγής που κάνουμε μπορεί να μην είναι κομψός, και ενδέχεται με κάποιο πρόσθετο (extension) του GNOME Shell να γίνεται καλύτερα. Ναι, στο GNOME Shell μπορούμε να φτιάξουμε πρόσθετα σε Javascript.

Ας δούμε τις αλλαγές:

%%%%%%%%%%%%%
--- a/usr/share/gnome-shell/js/ui/statusMenu.js~
+++ b/usr/share/gnome-shell/js/ui/statusMenu.js
@@ -202,6 +202,10 @@
item.connect('activate', Lang.bind(this, this._onPreferencesActivate));
this.menu.addMenuItem(item);

+ item = new PopupMenu.PopupMenuItem(_("YaST Control Center"));
+ item.connect('activate', Lang.bind(this, this._onYaSTActivate));
+ this.menu.addMenuItem(item);
+
item = new PopupMenu.PopupSeparatorMenuItem();
this.menu.addMenuItem(item);

@@ -250,6 +254,12 @@
app.activate(-1);
},

+ _onYaSTActivate: function() {
+ Main.overview.hide();
+ let app = Shell.AppSystem.get_default().get_app('YaST.desktop');
+ app.activate(-1);
+ },
+
_onLockScreenActivate: function() {
Main.overview.hide();
this._screenSaverProxy.LockRemote();
%%%%%%%%%%%%%


Δηλαδή δημιουργούμε ένα νέο MenuItem, και το προσθέτουμε στο StatusMenu. Και δημιουργούμε μια νέα συνάρτηση που εκτελεί το πρόγραμμα που θέλουμε, εδώ το YaST.

Στη συνέχεια, επανεκκινήστε το GNOME Shell (πιέστε Alt+F2 και μετά δώστε "r").

Θα φαίνεται έτσι:

Δεν υπάρχουν σχόλια

Από το Blogger.