elvetemedve / gnome-shell-extension-system-monitor

Gnome Shell extension for displaying resource usage
GNU General Public License v3.0
87 stars 14 forks source link

GNOME 3.34 support #62

Closed feimosi closed 4 years ago

feimosi commented 4 years ago

First of all, I love this extension, you've done really great job. Unfortunately after recent upgrade to GNOME 3.34 it stopped working, any chance of adding support for the latest GNOME? I can only imagine how annoying it is with their constantly changing API as every update breaks half of my extensions...

elvetemedve commented 4 years ago

Hi @feimosi,

Thanks for the feedback. I'm also grad that you found this extension useful.

I plan to review the changes soon and make it compatible with the latest release. Unfortunately GNOME development is terrible from an outsider point of view like myself. There is no easy way to test the extension in advance before a new release. I spent few hours to build Gnome from sources, but I gave up in the end. Another way would be running the next Gnome beta in a virtual machine. In additon to that they don't provide an API for Shell extensions, which means you can do anything you want in Javascript. Last time they had upgraded the Javascript/ECMA script version which led to broken code again. So I decided to maintain the code, but stop adding new features or improvements. Rumors goes around Gnome 4 will get a significantly different software architecture compared to 3, meaning all extensions have to be re-created from scratch.

dac73 commented 4 years ago

If it helps:

Oct 03 11:01:47 traken gnome-shell[1858]: Usage of object.actor is deprecated for Menu
                                          get@resource:///org/gnome/shell/ui/environment.js:235:29
                                          _init@/var/home/dario/.local/share/gnome-shell/extensions/System_Monitor@bghome.gmail.com/view.js:28:9
                                          enable@/var/home/dario/.local/share/gnome-shell/extensions/System_Monitor@bghome.gmail.com/extension.js:51:16
                                          _callExtensionEnable@resource:///org/gnome/shell/ui/extensionSystem.js:130:13
                                          loadExtension@resource:///org/gnome/shell/ui/extensionSystem.js:263:21
                                          callback@resource:///org/gnome/shell/ui/extensionDownloader.js:231:17
                                          gotExtensionZipFile/<@resource:///org/gnome/shell/ui/extensionDownloader.js:99:13
Oct 03 11:01:47 traken gnome-shell[1858]: Extension "System_Monitor@bghome.gmail.com" had error: TypeError: this.setIcon is not a function
elvetemedve commented 4 years ago

I don't have much free time nowadays, but will try to find a space for fixing that.

Austaras commented 4 years ago

@elvetemedve I agree that overall gnome shell extension development experience is awful but this extension just need a quick fix. You only need to change BaseMenuItem and all its subclass from es6 class to GoObject class and it'll work fine

elvetemedve commented 4 years ago

I have prepared a new release for fixing this issue. It's under code review now.

elvetemedve commented 4 years ago

The release went live.

alexykot commented 4 years ago

Just tried installing the new version, and it still fails for me. Arch Linux, Gnome 3.34.1. I'm not sure how to debug Gnome extensions, but LookingGlass to this SO shows following error:

TypeError: this.setIcon is not a function.

elvetemedve commented 4 years ago

Hi @alexykot, That's one of the error that this new release should fix. Probably the extension is not reloaded properly. Under Xorg session you can reload the Shell by Pressing Alt + F2 and enter the r (restart) command and run it. That will restart Gnome Shell and reload the extension. Under Wayland session you have to log out and log in again to restart it.

rawlink commented 4 years ago

I used the Alt + F2 and r command @elvetemedve suggested and that fixed for me. Thanks so much! I love this extension.

alexykot commented 4 years ago

Worked for me after session restart. Also, did the UI design change between this and earlier version? I no longer have the mini-charts in the status bar at the top (or was it another extension?).

elvetemedve commented 4 years ago

@alexykot This extension never did that.