diff options
author | Scott Murray <scott.murray@konsulko.com> | 2018-12-07 11:53:32 -0500 |
---|---|---|
committer | Scott Murray <scott.murray@konsulko.com> | 2018-12-10 18:49:20 +0000 |
commit | 6ce8a90c1cdf0af96f4734c652b203fce8bf1929 (patch) | |
tree | 36d14078f5e0be6a7ee41568636cbd3c31e8a3fb /recipes-demo-hmi/navigation/mapviewer-demo.bb | |
parent | 98d6acf7b2805e570008eb513ac4aa73a0fa00c3 (diff) |
Rework mapviewer and mapviewer-demo
Rework the mapviewer and mapviewer-demo recipes to get mapviewer
working out of the box for the cluster demo:
- Remove the old on/off scripts, as the intent is that the cluster
demo work out of the box on an image built with the
agl-cluster-demo-support feature.
- The separate weston systemd unit has been replaced with a drop-in
over-ride file.
- A new systemd unit is installed to configure the network connection
to the cluster board. This is required now because the weston unit
no longer runs as root.
- A systemd drop-in is added to have afm-api-windowmanager@.service
depend on weston-ready. This is a bit of a workaround ATM, as the
windowmanager service was consistently failing due to Weston
taking longer to start with the gst-record feature enabled. It is
likely that making this more generic should be investigated.
- The mapviewer systemd unit has been updated. Its Install target
is now afm-user-session@.target; in my testing this seemed the
least invasive solution, as there are some dependency loop issues
that currently prevent adding it to multi-user.target. As well,
its dependencies have been updated from weston and HomeScreen to
afm-api-windowmanager@, which is not entirely ideal, but is about
the best that can be done ATM given that mapviewer interacts with
the other windowmanager users via Weston, but is not an app
framework application.
Change-Id: I8826e670ae156edd461cc657acefc86e7836a916
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Diffstat (limited to 'recipes-demo-hmi/navigation/mapviewer-demo.bb')
-rw-r--r-- | recipes-demo-hmi/navigation/mapviewer-demo.bb | 51 |
1 files changed, 26 insertions, 25 deletions
diff --git a/recipes-demo-hmi/navigation/mapviewer-demo.bb b/recipes-demo-hmi/navigation/mapviewer-demo.bb index fe897709a..95910da77 100644 --- a/recipes-demo-hmi/navigation/mapviewer-demo.bb +++ b/recipes-demo-hmi/navigation/mapviewer-demo.bb @@ -1,5 +1,5 @@ -SUMMARY = "Setting files of mapviewer for the AGL Demonstrator @ CES2017" -DESCRIPTION = "Setting files of mapviewer for the AGL Demonstrator @ CES2017" +SUMMARY = "Setting files of mapviewer for the AGL Demonstrator" +DESCRIPTION = "Setting files of mapviewer for the AGL Demonstrator" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" @@ -8,35 +8,36 @@ SECTION = "apps" inherit systemd SRC_URI = " \ - file://switch_off_mapviewer-demo.sh \ - file://switch_on_mapviewer-demo.sh \ file://weston-mapviewer-demo.ini \ - file://weston-mapviewer-demo.service \ - " + file://weston-mapviewer-demo.conf \ + file://weston-ready.conf \ + file://mapviewer-demo-network-conf.service \ +" do_install() { - # Map viewer demo - install -d ${D}/usr/AGL/${PN} - install -m 0755 ${WORKDIR}/switch_off_${PN}.sh ${D}/usr/AGL/${PN} - install -m 0755 ${WORKDIR}/switch_on_${PN}.sh ${D}/usr/AGL/${PN} - + # Install tweaked weston configuration install -d ${D}${sysconfdir}/xdg/weston install -m 0644 ${WORKDIR}/weston-${PN}.ini ${D}${sysconfdir}/xdg/weston/weston-${PN}.ini - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/weston-mapviewer-demo.service ${D}${systemd_system_unitdir} - sed -i "s:/home/root:${ROOT_HOME}:" ${D}${systemd_system_unitdir}/weston-mapviewer-demo.service + # Install weston service unit configuration over-ride drop-in + install -d ${D}${systemd_system_unitdir}/weston.service.d + install -m 0644 ${WORKDIR}/weston-mapviewer-demo.conf ${D}${systemd_system_unitdir}/weston.service.d + + # Install cluster demo network configuration service unit + install -m 0644 ${WORKDIR}/mapviewer-demo-network-conf.service ${D}${systemd_system_unitdir} + # Add symlink to network.target.wants + install -d ${D}${sysconfdir}/systemd/system/network.target.wants + ln -s ${systemd_system_unitdir}/mapviewer-demo-network-conf.service ${D}${sysconfdir}/systemd/system/network.target.wants/ + + # Workaround for now to ensure that the windowmanager and its dependencies + # start after weston, which takes longer with gst-record enabled. + # This should be investigated a bit further and likely reworked into + # something more generically applicable. + install -d ${D}${sysconfdir}/systemd/system/afm-api-windowmanager@.service.d + install -m 0644 ${WORKDIR}/weston-ready.conf ${D}${sysconfdir}/systemd/system/afm-api-windowmanager@.service.d } -## DO NOT ENABLE 'weston-mapviewer-demo.service' BY DEFAULT -## -## The 'weston-mapviewer-demo.service' is exclusive of default 'weston.ini', -## it should be enabled/disabled by 'switch_on_mapviewer-demo.sh'/'switch_off_mapviewer-demo.sh'. -## -#SYSTEMD_SERVICE_${PN} = "weston-mapviewer-demo.service" - FILES_${PN} += " \ - ${systemd_system_unitdir} \ - /usr/AGL/${PN}/ \ - ${sysconfdir}/xdg/weston/${PN} \ - " + ${sysconfdir}/xdg/weston/ \ + ${systemd_system_unitdir} \ +" |