From 3478f415201c2136270a00b043c7cc0209211b27 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 8 Aug 2008 15:37:44 +0000 Subject: 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 --- .../matchbox-sato/matchbox-session-sato/session | 9 ++++++++- .../matchbox-sato/matchbox-session-sato_0.1.bb | 19 +++++++++++++++++-- 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 010772a8c..68aacd1d5 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 76c8797d4..4d208ddb7 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} () { -- cgit v1.2.3