Pantheon Theme Settings

The settings portal can still use GSettings and thus the dconf database to store the settings internally. At least it does on GNOME. And if it does, dconf watch / should reveal the relevant settings name.

As mentioned in the other thread, services.xserver.desktopManager.pantheon.extraGSettingsOverrides is to be used similarly to services.xserver.desktopManager.gnome.extraGSettingsOverrides, with the same downsides. Using home-manager’s dconf module is also an option.

But if dconf watch / does not print anything relevant, other storage backend may be used.

In particular, it looks like the preferred color scheme is stored in AccountsService. Take a look at /var/lib/AccountsService/users/$USER.

Unfortunately, I do not think AccountsService is as flexible as dconf, and your best option of setting it declaratively is likely replacing the whole file with systemd.tmpfiles NixOS option. Of course, you will lose the ability to change all other settings imperatively too.

Those apps probably need to add explicit support for dark theme. I believe Granite-based and libadwaita-based apps should support it out of the box, though.

@bobby285271 will probably know more.

2 Likes