diff options
author | Abderrahim Kitouni <akitouni@gnome.org> | 2018-10-03 14:05:10 +0100 |
---|---|---|
committer | Abderrahim Kitouni <akitouni@gnome.org> | 2018-10-03 14:09:30 +0100 |
commit | e8794ddd6107ce7b2acb2b46796309056611cfdc (patch) | |
tree | 4912a4760a4006d59230760695ca8ebf7f2d5f89 /engine | |
parent | 56009f6b49468c43473f43565317a452ab0a898f (diff) | |
download | dconf-e8794ddd6107ce7b2acb2b46796309056611cfdc.tar.gz |
engine: allow overriding the config directory used by dconfwip/override
This is used by flatpak. This patch is present in all flatpak runtimes and
was likely originally written by Alexander Larsson.
Diffstat (limited to 'engine')
-rw-r--r-- | engine/dconf-engine-source-user.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engine/dconf-engine-source-user.c b/engine/dconf-engine-source-user.c index 1657875..b6b8772 100644 --- a/engine/dconf-engine-source-user.c +++ b/engine/dconf-engine-source-user.c @@ -39,11 +39,17 @@ dconf_engine_source_user_open_gvdb (const gchar *name) { GvdbTable *table; gchar *filename; + const gchar *override; + + override = g_getenv ("DCONF_USER_CONFIG_DIR"); + if (override == NULL) + filename = g_build_filename (g_get_user_config_dir (), "dconf", name, NULL); + else + filename = g_build_filename (g_get_home_dir (), override, name, NULL); /* This can fail in the normal case of the user not having any * settings. That's OK and it shouldn't be considered as an error. */ - filename = g_build_filename (g_get_user_config_dir (), "dconf", name, NULL); table = gvdb_table_new (filename, FALSE, NULL); g_free (filename); |