=== modified file 'cmake/CompizCommon.cmake'
--- cmake/CompizCommon.cmake	2019-02-05 20:39:56 +0000
+++ cmake/CompizCommon.cmake	2019-02-08 11:43:36 +0000
@@ -958,23 +958,6 @@
 
 endmacro (compiz_test)
 
-#### optional file install
-
-function (compiz_opt_install_file _src _dst)
-    install (CODE
-        "message (\"-- Installing: ${_dst}\")
-         execute_process (
-	    COMMAND ${CMAKE_COMMAND} -E copy_if_different \"${_src}\" \"$ENV{DESTDIR}${_dst}\"
-	    RESULT_VARIABLE _result
-	    OUTPUT_QUIET ERROR_QUIET
-	 )
-	 if (_result)
-	     message (\"-- Failed to install: ${_dst}\")
-	 endif ()
-        "
-    )
-endfunction ()
-
 #### uninstall
 
 function (compiz_add_code_to_uninstall_target CODE WORKING_DIRECTORY)

=== modified file 'compizconfig/CMakeLists.txt'
--- compizconfig/CMakeLists.txt	2016-05-12 10:14:55 +0000
+++ compizconfig/CMakeLists.txt	2019-02-08 11:43:36 +0000
@@ -4,6 +4,9 @@
 set (COMPIZCONFIG_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/libcompizconfig/include)
 set (COMPIZCONFIG_LIBRARY_DIRS ${CMAKE_CURRENT_BINARY_DIR}/libcompizconfig)
 
+set (COMPIZCONFIG_CONFIG_DIR ${CMAKE_INSTALL_FULL_SYSCONFDIR}/compizconfig)
+set (COMPIZCONFIG_UPGRADES_DIR ${CMAKE_INSTALL_FULL_DATAROOTDIR}/compizconfig/upgrades)
+
 if (COMPIZ_PACKAGING_ENABLED)
     set (libcompizconfig_prefix ${CMAKE_INSTALL_PREFIX}                           CACHE PATH "prefix")
     set (libcompizconfig_libdir ${CMAKE_INSTALL_FULL_LIBDIR}                      CACHE PATH "libdir")

=== modified file 'compizconfig/libcompizconfig/config/CMakeLists.txt'
--- compizconfig/libcompizconfig/config/CMakeLists.txt	2012-07-23 06:22:04 +0000
+++ compizconfig/libcompizconfig/config/CMakeLists.txt	2019-02-08 11:43:36 +0000
@@ -1,13 +1,7 @@
 set (_config_file
-     config)
+     config.conf)
 
 configure_file (${CMAKE_CURRENT_SOURCE_DIR}/config_test
 		${CMAKE_CURRENT_BINARY_DIR}/compiz-1/compizconfig/config)
 
-compiz_opt_install_file (${CMAKE_CURRENT_SOURCE_DIR}/${_config_file} ${COMPIZ_SYSCONFDIR}/compizconfig/${_config_file})
-
-add_custom_target (
-    config_install
-    ${CMAKE_COMMAND} -E make_directory ${CMAKE_ROOT}/Modules &&
-    ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/config/${_config_file} ${COMPIZ_SYSCONFDIR}/compizconfig/${_config_file}
-    )
+install (FILES ${_config_file} DESTINATION ${COMPIZCONFIG_CONFIG_DIR})

=== removed file 'compizconfig/libcompizconfig/config/config'
--- compizconfig/libcompizconfig/config/config	2019-02-04 20:24:41 +0000
+++ compizconfig/libcompizconfig/config/config	1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-[gnome_session]
-backend = gconf
-integration = true
-plugin_list_autosort = true
-
-[general]
-backend = ini
-plugin_list_autosort = true

=== added file 'compizconfig/libcompizconfig/config/config.conf'
--- compizconfig/libcompizconfig/config/config.conf	1970-01-01 00:00:00 +0000
+++ compizconfig/libcompizconfig/config/config.conf	2019-02-08 11:43:36 +0000
@@ -0,0 +1,27 @@
+[general]
+backend = ini
+plugin_list_autosort = true
+
+[gnome_session]
+backend = gsettings
+integration = true
+plugin_list_autosort = true
+profile = Default
+
+[general_mate]
+backend = gsettings
+integration = false
+plugin_list_autosort = true
+profile = mate
+
+[general_ubuntu]
+backend = gsettings
+integration = true
+plugin_list_autosort = true
+profile = unity
+
+[general_ubuntu-lowgfx]
+backend = gsettings
+integration = true
+plugin_list_autosort = true
+profile = unity-lowgfx

=== modified file 'compizconfig/libcompizconfig/libcompizconfig.pc.in'
--- compizconfig/libcompizconfig/libcompizconfig.pc.in	2012-05-23 12:15:16 +0000
+++ compizconfig/libcompizconfig/libcompizconfig.pc.in	2019-02-08 11:43:36 +0000
@@ -3,6 +3,9 @@
 libdir=@libcompizconfig_libdir@
 includedir=@libcompizconfig_includedir@
 
+configdir=@COMPIZCONFIG_CONFIG_DIR@
+upgradesdir=@COMPIZCONFIG_UPGRADES_DIR@
+
 Name: libcompizconfig
 Description: Compiz configuration system
 Version: @VERSION@
@@ -10,4 +13,3 @@
 Requires: compiz
 Libs: -L@libcompizconfig_libdir@ -lcompizconfig
 Cflags: -I@libcompizconfig_includedir@
-

=== modified file 'compizconfig/libcompizconfig/src/CMakeLists.txt'
--- compizconfig/libcompizconfig/src/CMakeLists.txt	2018-07-24 09:36:54 +0000
+++ compizconfig/libcompizconfig/src/CMakeLists.txt	2019-02-08 11:43:36 +0000
@@ -27,8 +27,8 @@
     -DPLUGINDIR="${COMPIZ_PLUGINDIR}"
     -DIMAGEDIR="${COMPIZ_IMAGEDIR}"
     -DMETADATADIR="${COMPIZ_METADATADIR}"
-    -DSYSCONFDIR="${COMPIZ_SYSCONFDIR}"
-    -DDATADIR="${COMPIZ_DATADIR}"
+    -DCONFIGDIR="${COMPIZCONFIG_CONFIG_DIR}"
+    -DUPGRADESDIR="${COMPIZCONFIG_UPGRADES_DIR}"
     -DLIBDIR="${COMPIZ_LIBDIR}"
 )
 

=== modified file 'compizconfig/libcompizconfig/src/ccs_config_file.c'
--- compizconfig/libcompizconfig/src/ccs_config_file.c	2015-10-26 17:15:43 +0000
+++ compizconfig/libcompizconfig/src/ccs_config_file.c	2019-02-08 11:43:36 +0000
@@ -26,6 +26,9 @@
 #ifndef _GNU_SOURCE
 #define _GNU_SOURCE
 #endif
+
+#include <dirent.h>
+#include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -92,56 +95,111 @@
 }
 
 static Bool
+ccsReadGlobalConfigFromFile (const char   *file,
+			     ConfigOption option,
+			     char         **value)
+{
+    IniDictionary *iniFile;
+    char          *entry = NULL;
+    char          *section;
+    Bool          ret;
+
+    iniFile = ccsIniOpen (file);
+    if (!iniFile)
+	return FALSE;
+
+    switch (option)
+    {
+    case OptionProfile:
+	entry = "profile";
+	break;
+    case OptionBackend:
+	entry = "backend";
+	break;
+    case OptionIntegration:
+	entry = "integration";
+	break;
+    case OptionAutoSort:
+	entry = "plugin_list_autosort";
+	break;
+    default:
+	break;
+    }
+
+    if (!entry)
+    {
+	ccsIniClose (iniFile);
+	return FALSE;
+    }
+
+    *value = NULL;
+    section = getSectionName();
+    ret = ccsIniGetString (iniFile, section, entry, value);
+    free (section);
+    ccsIniClose (iniFile);
+
+    return ret;
+}
+
+static int
+configFilter (const struct dirent *entry)
+{
+    const char *suffix;
+    size_t suffixLen;
+    size_t nameLen;
+
+    suffix = ".conf";
+    suffixLen = strlen (suffix);
+    nameLen = strlen (entry->d_name);
+
+    if (nameLen < suffixLen)
+	return 0;
+
+    if (strcmp (entry->d_name + nameLen - suffixLen, suffix) == 0)
+	return 1;
+
+    return 0;
+}
+
+static Bool
 ccsReadGlobalConfig (ConfigOption option,
 		     char         **value)
 {
-    IniDictionary *iniFile;
-    char          *entry = NULL;
-    char          *section;
-    Bool          ret;
-    FILE          *fp;
-
-    /* check if the global config file exists - if it doesn't, exit
-       to avoid it being created by ccsIniOpen */
-    fp = fopen (SYSCONFDIR "/compizconfig/config", "r");
-    if (!fp)
-	return FALSE;
-    fclose (fp);
-
-    iniFile = ccsIniOpen (SYSCONFDIR "/compizconfig/config");
-    if (!iniFile)
-	return FALSE;
-
-    switch (option)
-    {
-    case OptionProfile:
-	entry = "profile";
-	break;
-    case OptionBackend:
-	entry = "backend";
-	break;
-    case OptionIntegration:
-	entry = "integration";
-	break;
-    case OptionAutoSort:
-	entry = "plugin_list_autosort";
-	break;
-    default:
-	break;
-    }
-
-    if (!entry)
-    {
-	ccsIniClose (iniFile);
-	return FALSE;
-    }
-
-    *value = NULL;
-    section = getSectionName();
-    ret = ccsIniGetString (iniFile, section, entry, value);
-    free (section);
-    ccsIniClose (iniFile);
-
+    Bool ret;
+    const char *configDir;
+    struct dirent **nameList;
+    int num;
+    int i;
+
+    ret = FALSE;
+    configDir = CONFIGDIR;
+
+    num = scandir (configDir, &nameList, configFilter, alphasort);
+
+    if (num == -1)
+    {
+	ccsError ("error occurred during scandir(%s): %s", configDir, strerror (errno));
+	return FALSE;
+    }
+
+    for (i = 0; i < num; i++)
+    {
+	char *filename;
+
+	if (asprintf (&filename, "%s/%s", configDir, nameList[i]->d_name) == -1)
+	    continue;
+
+	ret = ccsReadGlobalConfigFromFile (filename, option, value);
+	free (filename);
+
+	if (ret)
+	    break;
+    }
+
+    for (i = 0; i < num; i++)
+	free (nameList[i]);
+    free (nameList);
+ 
     return ret;
 }
 

=== modified file 'compizconfig/libcompizconfig/src/main.c'
--- compizconfig/libcompizconfig/src/main.c	2018-06-27 16:01:19 +0000
+++ compizconfig/libcompizconfig/src/main.c	2019-02-08 11:43:36 +0000
@@ -3344,7 +3344,7 @@
 void
 ccsSetProfileDefault (CCSContext * context, const char *name)
 {
-    const char *globalProfileDir = SYSCONFDIR "/compizconfig";
+    const char *globalProfileDir = CONFIGDIR;
     CCSStringList availableInBackend = NULL;
     CCSStringList availableInSysconfDir = NULL;
 
@@ -4911,7 +4911,7 @@
     ccsFreeUpgrade (upgrade);
 }
 
-static const char * CCS_UPGRADE_PATH = DATADIR "/compizconfig/upgrades";
+static const char * CCS_UPGRADE_PATH = UPGRADESDIR;
 
 static void
 ccsApplyUnappliedUpgrades (CCSContext    *context,

=== modified file 'compizconfig/libcompizconfig/tests/CMakeLists.txt'
--- compizconfig/libcompizconfig/tests/CMakeLists.txt	2018-07-24 09:36:54 +0000
+++ compizconfig/libcompizconfig/tests/CMakeLists.txt	2019-02-08 11:43:36 +0000
@@ -11,7 +11,7 @@
 
 set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
 
-add_definitions (-DSYSCONFDIR="${COMPIZ_SYSCONFDIR}")
+add_definitions (-DCONFIGDIR="${COMPIZCONFIG_CONFIG_DIR}")
 
 add_executable (compizconfig_test_ccs_object
 		${CMAKE_CURRENT_SOURCE_DIR}/compizconfig_test_ccs_object.cpp)

=== modified file 'compizconfig/libcompizconfig/tests/compizconfig_test_ccs_context.cpp'
--- compizconfig/libcompizconfig/tests/compizconfig_test_ccs_context.cpp	2013-02-21 16:41:49 +0000
+++ compizconfig/libcompizconfig/tests/compizconfig_test_ccs_context.cpp	2019-02-08 11:43:36 +0000
@@ -303,7 +303,7 @@
  * just load the profile and end up with an empty config */
 TEST_F (CCSContextTestWithMockedBackendProfile, ImportProfileIfNotAvailableInBackend)
 {
-    const std::string sysconfProfile (std::string (SYSCONFDIR) + "/compizconfig/" + unavailableProfileStr);
+    const std::string sysconfProfile (std::string (CONFIGDIR) + "/" + unavailableProfileStr);
 
     ExistingProfile (availableProfileStr);
     AddAvailableSysconfProfile (sysconfProfile);
@@ -316,7 +316,7 @@
 
 TEST_F (CCSContextTestWithMockedBackendProfile, ImportProfileDotIni)
 {
-    const std::string sysconfProfile (std::string (SYSCONFDIR) + "/compizconfig/" + unavailableProfileStr + ".ini");
+    const std::string sysconfProfile (std::string (CONFIGDIR) + "/" + unavailableProfileStr + ".ini");
 
     ExistingProfile (availableProfileStr);
     AddAvailableSysconfProfile (sysconfProfile);
@@ -329,7 +329,7 @@
 
 TEST_F (CCSContextTestWithMockedBackendProfile, ImportProfileDotProfile)
 {
-    const std::string sysconfProfile (std::string (SYSCONFDIR) + "/compizconfig/" + unavailableProfileStr + ".profile");
+    const std::string sysconfProfile (std::string (CONFIGDIR) + "/" + unavailableProfileStr + ".profile");
 
     ExistingProfile (availableProfileStr);
     AddAvailableSysconfProfile (sysconfProfile);

=== removed file 'debian/compizconfig'
--- debian/compizconfig	2016-07-04 10:12:34 +0000
+++ debian/compizconfig	1970-01-01 00:00:00 +0000
@@ -1,27 +0,0 @@
-[general]
-backend = ini
-plugin_list_autosort = true
-
-[gnome_session]
-backend = gsettings
-integration = true
-plugin_list_autosort = true
-profile = Default
-
-[general_mate]
-backend = gsettings
-integration = false
-plugin_list_autosort = true
-profile = mate
-
-[general_ubuntu]
-backend = gsettings
-integration = true
-plugin_list_autosort = true
-profile = unity
-
-[general_ubuntu-lowgfx]
-backend = gsettings
-integration = true
-plugin_list_autosort = true
-profile = unity-lowgfx

=== modified file 'debian/libcompizconfig0.install'
--- debian/libcompizconfig0.install	2014-11-24 22:25:07 +0000
+++ debian/libcompizconfig0.install	2019-02-08 11:43:36 +0000
@@ -1,4 +1,4 @@
-config /etc/compizconfig
+etc/compizconfig
 usr/lib/*/compizconfig/backends/libini.so
 usr/lib/*/compiz/libccp.so
 usr/lib/*/libcompizconfig.so.0

=== added file 'debian/libcompizconfig0.maintscript'
--- debian/libcompizconfig0.maintscript	1970-01-01 00:00:00 +0000
+++ debian/libcompizconfig0.maintscript	2019-02-08 11:43:36 +0000
@@ -0,0 +1,1 @@
+rm_conffile /etc/compizconfig/config 1:0.9.13.1+19.04.20190208-0ubuntu1~ libcompizconfig0

=== modified file 'debian/rules'
--- debian/rules	2019-02-05 13:11:07 +0000
+++ debian/rules	2019-02-08 11:43:36 +0000
@@ -51,9 +51,6 @@
 	# remove acceptance test binary
 	rm -f debian/tmp/usr/bin/compiz_autopilot_acceptance_tests
 
-	# work around having a file with a conflicted special name (#1156294)
-	cp debian/compizconfig debian/tmp/config
-
 	dh_install --fail-missing
 
 	# remove the compizconfig dev file from compiz-dev

