diff -Nur a/cmake/modules/FindGSettingSchemas.cmake b/cmake/modules/FindGSettingSchemas.cmake
--- a/cmake/modules/FindGSettingSchemas.cmake	2019-09-03 14:44:16.000000000 +0100
+++ b/cmake/modules/FindGSettingSchemas.cmake	1970-01-01 01:00:00.000000000 +0100
@@ -1,23 +0,0 @@
-find_package(PkgConfig)
-
-pkg_check_modules(PC_GLIB2 REQUIRED glib-2.0)
-
-find_path(GLIB_SCHEMAS_DIR org.gnome.desktop.interface.gschema.xml
-    HINTS ${PC_GLIB2_PREFIX}/share
-    PATH_SUFFIXES glib-2.0/schemas)
-
-if (GLIB_SCHEMAS_DIR)
-    set(GSettingSchemas_FOUND true)
-else()
-    set(GSettingSchemas_FOUND false)
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(GSettingSchemas
-    FOUND_VAR
-       GSettingSchemas_FOUND
-    REQUIRED_VARS
-       GSettingSchemas_FOUND
-)
-
-mark_as_advanced(GSettingSchemas_FOUND)
diff -Nur a/cmake/modules/FindGTK3.cmake b/cmake/modules/FindGTK3.cmake
--- a/cmake/modules/FindGTK3.cmake	2019-09-03 14:44:16.000000000 +0100
+++ b/cmake/modules/FindGTK3.cmake	2019-09-06 10:42:43.961376179 +0100
@@ -35,7 +35,7 @@
 	GLIB2_INCLUDE_DIR_PART1 glib.h
 	HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS}
 	PATH_SUFFIXES glib-2.0)
-
+	
 FIND_PATH(
 	GLIB2_INCLUDE_DIR_PART2 glibconfig.h
 	HINTS ${PC_GLIB2_INCLUDEDIR} ${PC_GLIB2_INCLUDE_DIRS}
@@ -58,7 +58,7 @@
 	GOBJECT2_INCLUDE_DIR_PART1 glib.h
 	HINTS ${PC_GOBJECT2_INCLUDEDIR} ${PC_GOBJECT2_INCLUDE_DIRS}
 	PATH_SUFFIXES gobject-2.0)
-
+	
 FIND_PATH(
 	GOBJECT2_INCLUDE_DIR_PART2 gobject.h
 	HINTS ${PC_GOBJECT2_INCLUDEDIR} ${PC_GOBJECT2_INCLUDE_DIRS}
@@ -71,30 +71,6 @@
 	HINTS ${PC_GOBJECT2_LIBDIR} ${PC_GOBJECT2_LIBRARY_DIRS})
 
 #
-# gio
-#
-PKG_CHECK_MODULES(PC_GIO2 REQUIRED gio-2.0)
-
-SET(GLIB2_DEFINITIONS ${PC_GIO2_CXXFLAGS_OTHER})
-
-FIND_PATH(
-	GIO2_INCLUDE_DIR_PART1 glib.h
-	HINTS ${PC_GIO2_INCLUDEDIR} ${PC_GIO2_INCLUDE_DIRS}
-	PATH_SUFFIXES gio)
-
-FIND_PATH(
-	GIO2_INCLUDE_DIR_PART2 gio.h
-	HINTS ${PC_GIO2_INCLUDEDIR} ${PC_GIO2_INCLUDE_DIRS}
-	PATH_SUFFIXES glib-2.0/gio)
-
-SET(GIO2_INCLUDE_DIR ${GIO2_INCLUDE_DIR_PART1} ${GIO2_INCLUDE_DIR_PART2})
-
-FIND_LIBRARY(
-	GIO2_LIBRARY NAMES gio-2.0
-	HINTS ${PC_GIO2_LIBDIR} ${PC_GIO2_LIBRARY_DIRS})
-
-
-#
 # pango
 #
 PKG_CHECK_MODULES(PC_PANGO REQUIRED pango)
@@ -182,7 +158,7 @@
 #
 #
 SET(GTK3_LIBRARY_DIRS ${GTK3_LIBRARY} ${GLIB2_LIBRARY} ${PANGO_LIBRARY} ${HARFBUZZ_LIBRARY} ${CAIRO_LIBRARY} ${GDKPIXBUF_LIBRARY} ${ATK_LIBRARY})
-SET(GTK3_INCLUDE_DIRS ${GTK3_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR} ${GIO2_INCLUDE_DIR} ${HARFBUZZ_INCLUDE_DIR} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR})
+SET(GTK3_INCLUDE_DIRS ${GTK3_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR} ${HARFBUZZ_INCLUDE_DIR} ${PANGO_INCLUDE_DIR} ${CAIRO_INCLUDE_DIR} ${GDKPIXBUF_INCLUDE_DIR} ${ATK_INCLUDE_DIR})
 
 INCLUDE(FindPackageHandleStandardArgs)
 
diff -Nur a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt	2019-09-03 14:44:30.000000000 +0100
+++ b/CMakeLists.txt	2019-09-06 10:40:23.236847664 +0100
@@ -8,14 +8,11 @@
 find_package(Qt5 REQUIRED NO_MODULE COMPONENTS Widgets Svg Test)
 find_package(KF5 REQUIRED COMPONENTS I18n KIO ConfigWidgets NewStuff Archive KCMUtils IconThemes)
 find_package(X11 REQUIRED)
-find_package(GTK3 REQUIRED)
-find_package(GSettingSchemas REQUIRED)
 
 include_directories(
-    ${CMAKE_SOURCE_DIR}
-    ${CMAKE_SOURCE_DIR}/src
-    ${CMAKE_SOURCE_DIR}/src/ui
-    ${GTK3_INCLUDE_DIRS}
+    ${CMAKE_SOURCE_DIR} 
+    ${CMAKE_SOURCE_DIR}/src 
+    ${CMAKE_SOURCE_DIR}/src/ui 
 )
 
 include(ECMSetupVersion)
@@ -40,21 +37,21 @@
      src/appearencegtk.cpp
      src/abstractappearance.cpp
      src/thread.cpp
-     src/installer.cpp
+     src/installer.cpp 
      src/gtkconfigkcmodule.cpp
-     src/dialog_installer.cpp
-     src/dialog_uninstaller.cpp
+     src/dialog_installer.cpp 
+     src/dialog_uninstaller.cpp 
      src/fontshelpers.cpp
 )
 
-ki18n_wrap_ui(kcm_SRCS
-     src/ui/gui.ui
-     src/ui/dialog_installer.ui
+ki18n_wrap_ui(kcm_SRCS 
+     src/ui/gui.ui 
+     src/ui/dialog_installer.ui 
      src/ui/dialog_uninstaller.ui
 )
 add_library(kcm_kdegtkconfig MODULE ${kcm_SRCS})
 target_compile_definitions(kcm_kdegtkconfig PRIVATE -DPROJECT_VERSION="${PROJECT_VERSION}")
-target_link_libraries(kcm_kdegtkconfig ${X11_Xcursor_LIB} ${GIO2_LIBRARY} ${GLIB2_LIBRARY} ${GTK3_LIBRARY} ${GOBJECT2_LIBRARY} Qt5::Svg KF5::ConfigCore KF5::I18n KF5::KIOWidgets KF5::NewStuff KF5::Archive KF5::NewStuff KF5::ConfigWidgets KF5::IconThemes)
+target_link_libraries(kcm_kdegtkconfig ${X11_Xcursor_LIB} Qt5::Svg KF5::ConfigCore KF5::I18n KF5::KIOWidgets KF5::NewStuff KF5::Archive KF5::NewStuff KF5::ConfigWidgets KF5::IconThemes)
 
 kcoreaddons_desktop_to_json(kcm_kdegtkconfig kde-gtk-config.desktop)
 
diff -Nur a/gtkproxies/CMakeLists.txt b/gtkproxies/CMakeLists.txt
--- a/gtkproxies/CMakeLists.txt	2019-09-03 14:44:16.000000000 +0100
+++ b/gtkproxies/CMakeLists.txt	2019-09-06 10:40:23.236847664 +0100
@@ -1,6 +1,6 @@
 find_package(GTK2 REQUIRED)
 
-include_directories(BEFORE ${GTK2_INCLUDE_DIRS})
+include_directories(${GTK2_INCLUDE_DIRS})
 
 add_executable(reload_gtk_apps reload.c)
 target_link_libraries(reload_gtk_apps ${GTK2_LIBRARIES})
diff -Nur a/src/appearancegtk3.cpp b/src/appearancegtk3.cpp
--- a/src/appearancegtk3.cpp	2019-09-03 14:44:16.000000000 +0100
+++ b/src/appearancegtk3.cpp	2019-09-06 10:40:23.236847664 +0100
@@ -1,5 +1,5 @@
 /* KDE GTK Configuration Module
- *
+ * 
  * Copyright 2011 José Antonio Sanchez Reynaga <joanzare@gmail.com>
  * Copyright 2011 Aleix Pol Gonzalez <aleixpol@blue-systems.com>
  *
@@ -10,13 +10,13 @@
  * later version accepted by the membership of KDE e.V. (or its
  * successor approved by the membership of KDE e.V.), which shall
  * act as a proxy defined in Section 6 of version 3 of the license.
- *
+ * 
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
+ * 
+ * You should have received a copy of the GNU Lesser General Public 
  * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
  */
 
@@ -28,11 +28,6 @@
 #include <KSharedConfig>
 #include <KConfigGroup>
 
-#undef signals
-#include <gio/gio.h>
-#include <gtk/gtk.h>
-#define signals Q_SIGNALS
-
 QStringList AppearanceGTK3::installedThemes() const
 {
     QFileInfoList availableThemes;
@@ -125,7 +120,7 @@
     QString root = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation);
     if(root.isEmpty())
         root = QFileInfo(QDir::home(), ".config").absoluteFilePath();
-
+    
     return root + '/' + configFileName();
 }
 
@@ -159,33 +154,6 @@
 
 bool AppearanceGTK3::saveSettings() const
 {
-    // FIXME kdebz#387417
-    // We should maybe use GSettings everywhere in future, but at this moment we
-    // need this to have this configuration available in sandboxed applications which
-    // is only possible through dconf
-    gtk_init(nullptr, nullptr);
-
-    g_autoptr(GSettings) gsettings = g_settings_new("org.gnome.desktop.interface");
-    g_settings_set_string(gsettings, "gtk-theme", m_settings["theme"].toUtf8().constData());
-    g_settings_set_string(gsettings, "icon-theme", m_settings["icon"].toUtf8().constData());
-    g_settings_set_string(gsettings, "cursor-theme", m_settings["cursor"].toUtf8().constData());
-    g_settings_set_string(gsettings, "font-name", m_settings["font"].toUtf8().constData());
-
-    QString toolbarStyle;
-    if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_ICONS")) {
-        toolbarStyle = QStringLiteral("icons");
-    } else if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_TEXT")) {
-        toolbarStyle = QStringLiteral("text");
-    } else if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_BOTH")) {
-        toolbarStyle = QStringLiteral("both");
-    } else if (m_settings["toolbar_style"] == QStringLiteral("GTK_TOOLBAR_BOTH_HORIZ")) {
-        toolbarStyle = QStringLiteral("both-horiz");
-    }
-
-    g_settings_set_string(gsettings, "toolbar-style", toolbarStyle.toUtf8().constData());
-
-    g_object_set(gtk_settings_get_default(), "gtk-application-prefer-dark-theme", getApplicationPreferDarkTheme(), nullptr);
-
     auto cfg = KSharedConfig::openConfig(configFileName(), KConfig::NoGlobals);
     return saveSettings(cfg);
 }
diff -Nur a/tests/CMakeLists.txt b/tests/CMakeLists.txt
--- a/tests/CMakeLists.txt	2019-09-03 14:44:16.000000000 +0100
+++ b/tests/CMakeLists.txt	2019-09-06 10:40:23.236847664 +0100
@@ -2,7 +2,7 @@
     add_executable(${name} ${name}.cpp ${ARGV})
     add_test(${name} ${name})
     ecm_mark_as_test(${name})
-    target_link_libraries(${name} ${GIO2_LIBRARY} ${GLIB2_LIBRARY} ${GTK3_LIBRARY} ${GOBJECT2_LIBRARY} Qt5::Core Qt5::Gui Qt5::Test KF5::ConfigCore)
+    target_link_libraries(${name} Qt5::Core Qt5::Gui Qt5::Test KF5::ConfigCore)
     target_include_directories(${name} PRIVATE ${CMAKE_BINARY_DIR})
 endmacro(add_kgc_test)