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} () {