aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/desktops/plasma-5/kde-gtk-config/patches/gsettings.patch
blob: 69f7bc4e56a03d29c620c23ffd32d6568ea62555 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
diff --git a/src/gtkconfigkcmodule.cpp b/src/gtkconfigkcmodule.cpp
index 7b82d50..96831d8 100644
--- a/src/gtkconfigkcmodule.cpp
+++ b/src/gtkconfigkcmodule.cpp
@@ -91,6 +91,16 @@ GTKConfigKCModule::GTKConfigKCModule(QWidget* parent, const QVariantList& args )
     iconsProxyModel->sort(0);
     ui->cb_icon->setModel(iconsProxyModel);
     ui->cb_icon_fallback->setModel(iconsProxyModel);
+
+    // Add GSETTINGS_SCHEMAS_PATH to the front of XDG_DATA_DIRS.
+    // Normally this would be done by wrapGAppsHook, but this plugin
+    // (shared object) cannot be wrapped.
+    QByteArray xdgdata = qgetenv("XDG_DATA_DIRS");
+    if (!xdgdata.isEmpty()) {
+        xdgdata.push_front(":");
+    }
+    xdgdata.push_front(QByteArray(GSETTINGS_SCHEMAS_PATH));
+    qputenv("XDG_DATA_DIRS", xdgdata);
     
     m_tempGtk2Preview = QStandardPaths::writableLocation(QStandardPaths::TempLocation)+ "/gtkrc-2.0";
     m_tempGtk3Preview = QStandardPaths::writableLocation(QStandardPaths::TempLocation)+ "/.config/gtk-3.0/settings.ini";