matchbox-session-sato: install GConf values directly instead of using schemas
authorRoss Burton <ross.burton@intel.com>
Mon, 22 Apr 2013 12:43:32 +0000 (13:43 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 23 Apr 2013 12:00:43 +0000 (13:00 +0100)
Because both matchbox-session-sato and settings-daemon were attempting to
install their preferred values though schemas there was a race as to which ones
were used.

Revert matchbox-session-sato back to writing the values directly, adding a
dependency on gconf-native so that this can happen on the host.

(From OE-Core rev: 90ca53cbbdb1ed30883d4aa8ce9c933ae1fad5fa)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-sato/matchbox-sato/matchbox-session-sato/matchbox-session-sato.schemas [deleted file]
meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb

diff --git a/meta/recipes-sato/matchbox-sato/matchbox-session-sato/matchbox-session-sato.schemas b/meta/recipes-sato/matchbox-sato/matchbox-session-sato/matchbox-session-sato.schemas
deleted file mode 100644 (file)
index f5b770b..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0"?>
-<gconfschemafile>
-<schemalist>
-
-  <schema>
-    <key>/schemas/desktop/poky/interface/theme</key>
-    <applyto>/desktop/poky/interface/theme</applyto>
-    <type>string</type>
-    <owner>matchbox-session-sato</owner>
-    <default>Sato</default>
-    <locale name="C">
-      <short>Desktop theme</short>
-      <long>The theme name for Matchbox and Sato to use.</long>
-    </locale>
-  </schema>
-
-  <schema>
-    <key>/schemas/desktop/poky/interface/icon_theme</key>
-    <applyto>/desktop/poky/interface/icon_theme</applyto>
-    <type>string</type>
-    <owner>matchbox-session-sato</owner>
-    <default>Sato</default>
-    <locale name="C">
-      <short>Desktop icon theme</short>
-      <long>The icon theme name for Matchbox and Sato.</long>
-    </locale>
-  </schema>
-
-  <schema>
-    <key>/schemas/desktop/poky/interface/touchscreen</key>
-    <applyto>/desktop/poky/interface/touchscreen</applyto>
-    <type>bool</type>
-    <owner>matchbox-session-sato</owner>
-    <default>true</default>
-    <locale name="C">
-      <short>Activate touchscreen</short>
-    </locale>
-  </schema>
-
-  <schema>
-    <key>/schemas/desktop/poky/interface/font_name</key>
-    <applyto>/desktop/poky/interface/font_name</applyto>
-    <type>string</type>
-    <owner>matchbox-session-sato</owner>
-    <default>Sans 9</default>
-    <locale name="C">
-      <short>Font name</short>
-    </locale>
-  </schema>
-
-</schemalist>
-</gconfschemafile>
-
index 70cf7a9..2d18c66 100644 (file)
@@ -6,16 +6,15 @@ LICENSE = "GPLv2.0+"
 LIC_FILES_CHKSUM = "file://session;endline=3;md5=f8a5c5b9c279e52dc094d10e11c2be63"
 
 SECTION = "x11"
-RDEPENDS_${PN} = "formfactor gtk-sato-engine matchbox-theme-sato gtk-theme-sato matchbox-panel-2 matchbox-desktop-sato matchbox-session"
+DEPENDS = "gconf-native"
+RDEPENDS_${PN} = "formfactor gtk-sato-engine matchbox-theme-sato gtk-theme-sato matchbox-panel-2 matchbox-desktop-sato matchbox-session gconf"
 PR = "r30"
 
 # This package is architecture specific because the session script is modified
 # based on the machine architecture.
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-SRC_URI = "file://session \
-           file://matchbox-session-sato.schemas \
-          "
+SRC_URI = "file://session"
 S = "${WORKDIR}"
 
 do_install() {
@@ -33,9 +32,15 @@ do_install() {
        install -d ${D}/${sysconfdir}/matchbox
        sed -f "$SCRIPT" ${S}/session > ${D}/${sysconfdir}/matchbox/session
         chmod +x ${D}/${sysconfdir}/matchbox/session
-
-       install -d ${D}/${sysconfdir}/gconf/schemas
-       install -m 664 ${S}/matchbox-session-sato.schemas ${D}/${sysconfdir}/gconf/schemas
 }
 
-inherit gconf
+pkg_postinst_${PN} () {
+       set_value() {
+               #type, name, value
+               gconftool-2 --config-source=xml::$D${sysconfdir}/gconf/gconf.xml.defaults --direct --type $1 --set /desktop/poky/interface/$2 "$3"
+       }
+       set_value string theme Sato
+       set_value string icon_theme Sato
+       set_value bool touchscreen true
+       set_value string font_name "Sans 9"
+}