All GNOME extensions need an update in Fedora 39 (GNOME 45)

Problem

Fedora 39 Workstation includes GNOME 45. In this version of GNOME, the extension system was rewritten and is no longer compatible with previous versions of extensions. This means that all GNOME Shell extensions will have to be updated in order to work on GNOME 45. If they are not updated, they will not work. It’s likely that this will affect many extensions which are no longer well-maintained.

Note: Many people have extension version validation disabled in GNOME, which means GNOME tries to load extensions even if they don’t advertise direct support for that particular GNOME version. In this case, it’s recommended to revert this override, otherwise lots of your extensions will crash while loading, which might lead to some unintended behavior.

Cause

GNOME Shell moved from GJS’ own custom imports system to standard JavaScript modules (ESM). You can read more details on a GNOME Shell dev blog: Extensions in GNOME 45 – GNOME Shell & Mutter .

Related Issues

None

Solution

It’s recommended to make sure that GNOME 45 only tries to load extensions which advertise its direct support. You can do it by running this command in a terminal:

gsettings reset org.gnome.shell disable-extension-version-validation

You can run the Extensions app (package gnome-extensions-app) to see which extensions are loaded and which are not updated/fail to start.

For extensions which you have installed from Fedora repositories (see rpm -qa | grep gnome-shell-extension in a terminal), simply wait for a future update which will fix the functionality.

For extensions which you’ve installed from https://extensions.gnome.org , go to that website (follow instructions there if your browser integration is not enabled yet), and see if there are updates available in the Installed extensions tab.


You can discuss this issue here.

3 Likes

There are no new breaking changes in Fedora 40. But, if you upgrade directly from Fedora 38 to 40, skipping Fedora 39, you still of course need to deal with this change.