From: Jose Dapena Paz Date: Fri, 11 Feb 2022 15:02:54 +0000 (+0100) Subject: Add back HTML5 launcher to HTML5 demo X-Git-Tag: 12.93.0~4 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=d787e10f87845a06cf15d11e592af4ae69d60ee8;p=AGL%2Fmeta-agl-demo.git Add back HTML5 launcher to HTML5 demo Add the web-based launcher to the HTML5 demo dropping original launcher. It includes changes to the launcher to match the new navigator.appservice API and JS injection and drops agl-js-api. Bug-AGL: SPEC-4249 Change-Id: I02a68fc81693a56aa19e213e8ee200c0ec4e3f42 Signed-off-by: Jose Dapena Paz --- diff --git a/recipes-demo/html5-launcher/files/launcher.service b/recipes-demo/html5-launcher/files/launcher.service new file mode 100644 index 000000000..67dcf5e1c --- /dev/null +++ b/recipes-demo/html5-launcher/files/launcher.service @@ -0,0 +1,15 @@ +[Unit] +Description=AGL Launcher +Requires=WebAppMgr.service dbus.service +After=WebAppMgr.service dbus.service + +[Service] +Type=simple +Environment=AFM_ID=launcher +Environment=AFM_APP_INSTALL_DIR=/usr/lib/wam_apps/html5-launcher/ +ExecStartPre=sleep 1 +ExecStart=/usr/bin/WebAppMgr +Restart=on-failure + +[Install] +WantedBy=agl-session.target diff --git a/recipes-demo/html5-launcher/html5-launcher_git.bb b/recipes-demo/html5-launcher/html5-launcher_git.bb new file mode 100644 index 000000000..2a4f7ed17 --- /dev/null +++ b/recipes-demo/html5-launcher/html5-launcher_git.bb @@ -0,0 +1,40 @@ +SUMMARY = "AGL HTML5 HVAC Application" +HOMEPAGE = "https://git.automotivelinux.org/apps/html5-launcher/" +SECTION = "apps" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" + +PV = "1.0+git${SRCPV}" +S = "${WORKDIR}/git" +B = "${WORKDIR}/build" + +SRC_URI = " \ + git://gerrit.automotivelinux.org/gerrit/apps/html5-launcher;protocol=https;branch=${AGL_BRANCH} \ + file://launcher.service \ +" +SRCREV = "${AGL_APP_REVISION}" + +DEPENDS = "nodejs-native" + +do_compile() { + bldcmd=${S}/autobuild/agl/autobuild + cd ${S} + $bldcmd build +} + +WAM_APPLICATIONS_DIR="${libdir}/wam_apps" + +do_install() { + install -d ${D}${WAM_APPLICATIONS_DIR}/${PN} + cp -R --no-dereference --preserve=mode,links ${S}/dist/* ${D}${WAM_APPLICATIONS_DIR}/${PN} + install -d ${D}${systemd_user_unitdir}/agl-session.target.wants + install -m0644 ${WORKDIR}/launcher.service ${D}${systemd_user_unitdir}/launcher.service + ln -s ../launcher.service ${D}${systemd_user_unitdir}/agl-session.target.wants/launcher.service +} + +FILES_${PN} = " \ + ${WAM_APPLICATIONS_DIR}/${PN} \ + ${systemd_user_unitdir} \ +" + +RCONFLICTS_${PN} = "launcher" diff --git a/recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb b/recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb index 5342f0780..bb457b993 100644 --- a/recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb +++ b/recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb @@ -41,8 +41,8 @@ RDEPENDS:${PN}-devel = " \ # TODO(jdapena): replace this with HTML5 apps. AGL_APPS = " \ dashboard \ + html5-launcher \ html5-hvac \ - hvac \ ondemandnavi \ settings \ " @@ -58,13 +58,10 @@ DEMO_UNIT_CONF ?= "demo-i2c-udev-conf" # Preload only if agl-demo-preload is set DEMO_PRELOAD = "${@bb.utils.contains("AGL_FEATURES", "agl-demo-preload", "${DEMO_UNIT_CONF}", "",d)}" -# TODO(jdapena): eventually qtquickcontrols2 components, and launcher -# (with an HTML5 replacement) RDEPENDS:${PN}:append = " \ - launcher \ + ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'unzip' , '', d)} \ qtquickcontrols2-agl \ qtquickcontrols2-agl-style \ - ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'unzip' , '', d)} \ ${AGL_APPS} \ ${DEMO_PRELOAD} \ " diff --git a/recipes-wam/wam/files/WebAppMgr.service b/recipes-wam/wam/files/WebAppMgr.service index 0fa7dbe5b..749d85059 100644 --- a/recipes-wam/wam/files/WebAppMgr.service +++ b/recipes-wam/wam/files/WebAppMgr.service @@ -12,7 +12,7 @@ [Unit] Description="WebAppMgr is responsible for running web apps and manage their lifecycle" -After=homescreen.service launcher.service agl-compositor.service +After=agl-compositor.service Requires=agl-compositor.service Before=agl-session.target