5

After trying out some GNOME extensions, I decided to uninstall some of them via the Extension Manager GUI. I can see that their directories are indeed removed from ~/.local/share/gnome-shell/extensions. However, while using dconf Editor, I noticed that these uninstalled extensions still reside in /org/gnome/shell/extensions.

For example, I had uninstalled forge, just-perfect, simple-weather, but I still find their folder and their settings reflected in dconf Editor in /org/gnome/shell/extensions.

However, they have been uninstalled:

$ gnome-extensions uninstall [email protected]
Extension “[email protected]” doesn't exist
$ gnome-extensions uninstall just-perfection-desktop@just-perfection
Extension “just-perfection-desktop@just-perfection” doesn't exist
$ gnome-extensions uninstall [email protected]
Extension “[email protected]” doesn't exist

Also, using LookingGlass via Alt+F2lgReturn and checking Extensions, confirms that these extensions are not list.

So why are they still reflected in the dconf Editor /org/gnome/shell/extensions directory?

How do I completely remove them from dconf Editor?

Update:

I learnt that /org/gnome/shell/extensions is a D-Bus object to GNOME shell which is a virtual object.

$ systemctl status | grep gdm
           │ ├─gdm.service
           │ │ └─1944 /usr/sbin/gdm3
               │ ├─2665 "gdm-session-worker [pam/gdm-password]"
               │ ├─2816 /usr/libexec/gdm-x-session --run-script "env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu"
               │ ├─2824 /usr/lib/xorg/Xorg vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -nolisten tcp -background none -noreset -keeptty -novtswitch -verbose 3
                 │ │   └─14882 grep --color=auto gdm

I have tried systemctl restart gdm.service and Alt+F2rReturn to restart GNOME shell and even restarting the computer, but these actions still can't remove /org/gnome/shell/extensions/forge, /org/gnome/shell/extensions/just-perfect and /org/gnome/shell/extensions/simple-weather from the dconf Editor.

An example of what I see in dconf Editor presently:

just-perfect visible dconf Editor

1 Answer 1

6

Indeed, the case with uninstalling extensions is as you describe it: uninstalling an extension does not remove its key/settings from dconf.

The reason that the dconf settings of an uninstalled extension are not removed when you uninstall it is likely because keeping the dconf settings allows reinstalling the extension with those, last used, settings. However, if you don't plan to reinstall the extension or if you want to have it in its default state when you reinstall it, these settings can be perceived as "residues" that clutter up dconf Editor and you may want to remove them.

The removal of these "residues" is an easy process, but it has to be done manually (at least I don't know of a way to automatically do it). Just follow these steps:

  1. Open dconf Editor.

  2. Navigate to /org/gnome/shell/extensions.

  3. Find the extension that you have uninstalled and you want removed from dconf Editor, right-click on it and select Reset recursively.

    See for example the following screenshot where I remove the dconf settings for the Hot Edge extension which is no longer installed in my system:

    right-click menu for the Hot Edge extension in dconf Editor

  4. Click Apply on the bottom right to apply the changes:

    Apply the changes in dconf Editor

  5. That's it! The extension should not appear anymore in dconf Editor:

    Extension removed from dconf Editor

Note: Be careful to apply the procedure described above only on the extensions you have uninstalled. If you select Reset recursively on the key of an installed extension, its settings will be reset and any changes you have made will be lost.

2
  • 2
    Alternatively, the gsettings command also has a reset-recursively subcommand
    – muru
    Commented yesterday
  • 1
    ... also dconf reset -f /path/to/dir/ should work IIRC.
    – Raffa
    Commented 12 hours ago

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.