Home-manager dconf not applying

Hi there, I have a number of dconf settings I am setting in my nix code. For example enabling my gnome extensions.

"org/gnome/shell" = {
      enabled-extensions =
        "['quick-settings-audio-panel@rayzeq.github.io', 'unite@hardpixel.eu', 'appindicatorsupport@rgcjonas.gmail.com', 'bluetooth-quick-connect@bjarosze.gmail.com', 'blur-my-shell@aunetx', 'just-perfection-desktop@just-perfection', 'user-theme@gnome-shell-extensions.gcampax.github.com']";

Now after I run a rebuild without errors, I notice all my extensions are disabled. If I look in dconf editor I see it labeled as the default settings:

But at the same time if I run a dconf dump, I get the following:

λ dconf dump /org/gnome/shell/
command-history=['Ig', 'lh', 'lgt', 'lg']
enabled-extensions="['quick-settings-audio-panel@rayzeq.github.io', 'unite@hardpixel.eu', 'appindicatorsupport@rgcjonas.gmail.com', 'bluetooth-quick-connect@bjarosze.gmail.com', 'blur-my-shell@aunetx', 'just-perfection-desktop@just-perfection', 'user-theme@gnome-shell-extensions.gcampax.github.com']"
favorite-apps=['chromium-browser.desktop', 'code.desktop', 'org.gnome.Console.desktop', 'org.gnome.Nautilus.desktop', '1password.desktop', 'Zoom.desktop']

Has anyone seen this before?

you’re setting it to a string with [ etc inside. The string is probably being set fine (no build errors), but not taking the desired effect at runtime when gnome-shell tries to read it.

it needs to be a list (compare the line above for disabled extensions in the output):

e.g. in my case:

      enabled-extensions = [
1 Like

Thank you! That was driving me nuts. I swear I had confirmed with dconf2nix, but… :man_shrugging: