about summary refs log tree commit diff
path: root/pkgs/desktops/gnome/misc/gpaste/fix-paths.patch
blob: ebebc8a20bd66622977561f148551a3afc66de18 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
diff --git a/src/libgpaste/gpaste/gpaste-settings.c b/src/libgpaste/gpaste/gpaste-settings.c
index 830f5e0b..c8df0e11 100644
--- a/src/libgpaste/gpaste/gpaste-settings.c
+++ b/src/libgpaste/gpaste/gpaste-settings.c
@@ -1039,7 +1039,10 @@ create_g_settings (void)
     }
     else
     {
-        return g_settings_new (G_PASTE_SETTINGS_NAME);
+        // library used by introspection requires schemas but we cannot set XDG_DATA_DIRS for the library
+        g_autoptr (GSettingsSchemaSource) schema_source = g_settings_schema_source_new_from_directory ("@gschemasCompiled@", NULL, FALSE, NULL);
+        g_autoptr (GSettingsSchema) schema = g_settings_schema_source_lookup (schema_source, G_PASTE_SETTINGS_NAME, FALSE);
+        return g_settings_new_full (schema, NULL, NULL);
     }
 }