2

Is there any way to override the compatibility of a GNOME extension for the current GNOME version? For example, to make an installed GNOME extension work under GNOME 43 even if it has not been updated and only supports GNOME 41 or earlier (and is disabled by default).

The extension I'd like to get running under GNOME 43 is blur-me. I did some more searching and found this suggestion to modify the metadata.json file to include version 43, with potential issues. However, this creates the error Utils.setInterval is not a function.

To quote someone in that link:

GNOME doesn't have a stable API

This makes me think it is almost impossible to simply make one extension work on newer GNOME versions. Is this correct?

4
  • Yes, this issue falls under the category of software compatibility. Generally, lack of software compatibility, for non-technical users, is non-negotiatable. It won't work magically, just because one forces the components to interact with each other. You would need to download the source code for the extension, implement changes in its code to work with Gnome 43, then possibly repackage it in some installable package. If you don't want to learn how to do that (may take a lot of time), you could try to recruit and sponsor a developer to do it.
    – Levente
    Dec 24, 2022 at 11:45
  • Edited. I think there's a good question in there, personally. There might be a duplicate somewhere here already on the topic, but if not, I'd suggest leaving it open. As mentioned in the comments, your assumption is correct. @Levente I'd suggest moving your comment to an answer, personally (again, unless you find a duplicate). "Negative answers" are still good answers, assuming they come with the explanation that you provided. Dec 24, 2022 at 18:10
  • And I found this based on your deleted "comment"/answer. Don't worry, it doesn't take much rep to get to the "comment" privilege. I do appreciate your desire to try to help. Keep working on good questions and answers and you'll get there in no time. Also, reputation can be gained by suggesting good suggested edits to existing questions and answers. If you'd like some examples, you can see my edits. Dec 24, 2022 at 18:20
  • @NotTheDr01ds Thank you!
    – user1239526
    Dec 24, 2022 at 18:40

1 Answer 1

1

This makes me think it is almost impossible to simply make one extension work on newer GNOME versions. Is this correct?

Yes. The creator needs to update that extension or you would need to fork and rewrite the extension to be able to use it. Keep an eye out on his github page.

"Utils.setInterval is not a function"

That is a javascript function that probably needs to be rewritten. The source shows this: appplication.js If you know what it needs to be you could fork it. Alter it and compile your own version. Source install might work:

git clone https://github.com/ckissane/blur-me
cd blur-me  

and to make it:

make install
1
  • Thank you. Unfortunately, I am not an expert in programming. Nonetheless, I used the commands you provided. Copied the built files in ~/.local/share/gnome-shell/extensions/blur-me@nunchucks then changed metadata.json to include GNOME version 43. A new error occured Main.panel._leftCorner is undefined. Such an error seems to also occur when other extensions are forced to work on unsupported GNOME versions, as seen here, pointing that, indeed, it is almost impossible to resolve this situation.
    – user1239526
    Dec 24, 2022 at 19:44

You must log in to answer this question.