summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross@openedhand.com>2008-08-08 15:37:44 +0000
committerRoss Burton <ross@openedhand.com>2008-08-08 15:37:44 +0000
commit3478f415201c2136270a00b043c7cc0209211b27 (patch)
treea175ad846cbd8cad1099b26b4877126da7bb1793
parente14a39f2808459a69ba0a549e133f93045b5e169 (diff)
downloadopenembedded-core-3478f415201c2136270a00b043c7cc0209211b27.tar.gz
matchbox-session-sato: magically munge the session script to remove applets depending on the machine features
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5042 311d38ba-8fff-0310-9ca6-ca027cbcb966
-rw-r--r--meta/packages/matchbox-sato/matchbox-session-sato/session9
-rw-r--r--meta/packages/matchbox-sato/matchbox-session-sato_0.1.bb19
2 files changed, 25 insertions, 3 deletions
diff --git a/meta/packages/matchbox-sato/matchbox-session-sato/session b/meta/packages/matchbox-sato/matchbox-session-sato/session
index 010772a8c4..68aacd1d5f 100644
--- a/meta/packages/matchbox-sato/matchbox-session-sato/session
+++ b/meta/packages/matchbox-sato/matchbox-session-sato/session
@@ -10,6 +10,13 @@ fi
matchbox-desktop &
-matchbox-panel --titlebar --start-applets showdesktop,windowselector --end-applets clock,battery,systray,startup-notify,notify &
+# Lines containing feature-[foo] are removed at build time if the machine
+# doesn't have the feature "foo".
+
+START_APPLETS=showdesktop,windowselector
+END_APPLETS=clock,battery,systray,startup-notify,notify
+END_APPETS=openmoko-panel-gsm,$APPLETS # feature-phone
+
+matchbox-panel --titlebar --start-applets $START_APPLETS --end-applets $END_APPLETS &
exec matchbox-window-manager -theme Sato -use_desktop_mode decorated -use_cursor $SHOWCURSOR $@
diff --git a/meta/packages/matchbox-sato/matchbox-session-sato_0.1.bb b/meta/packages/matchbox-sato/matchbox-session-sato_0.1.bb
index 76c8797d4f..4d208ddb70 100644
--- a/meta/packages/matchbox-sato/matchbox-session-sato_0.1.bb
+++ b/meta/packages/matchbox-sato/matchbox-session-sato_0.1.bb
@@ -2,14 +2,29 @@ DESCRIPTION = "Custom MB session files for poky"
LICENSE = "GPL"
SECTION = "x11"
RDEPENDS = "formfactor gtk-sato-engine matchbox-theme-sato gtk-theme-sato matchbox-panel-2 matchbox-desktop-sato initscripts matchbox-session"
-PR = "r24"
+PR = "r25"
+
+# This package is architecture specific because the session script is modified
+# based on the machine architecture.
+PACKAGE_ARCH = "${MACHINE_ARCH}"
SRC_URI = "file://session"
S = "${WORKDIR}"
do_install() {
+ # This is the set of machine features that the script has markers for
+ FEATURES="phone"
+ SCRIPT="${S}/sedder"
+ rm -f $SCRIPT
+ touch $SCRIPT
+ for FEAT in $FEATURES; do
+ if echo ${MACHINE_FEATURES} | awk "/$FEAT/ {exit 1}"; then
+ echo "/feature-$FEAT/d" >> $SCRIPT
+ fi
+ done
+
install -d ${D}/${sysconfdir}/matchbox
- install -m 0755 ${S}/session ${D}/${sysconfdir}/matchbox/
+ sed -f "$SCRIPT" ${S}/session > ${D}/${sysconfdir}/matchbox/session
}
pkg_postinst_${PN} () {