meta-agl-demo: use HTML5 homescreen+background+launcher in HTML5 demo 37/27237/2
authorJose Dapena Paz <jdapena@igalia.com>
Tue, 1 Mar 2022 16:34:33 +0000 (17:34 +0100)
committerJose Dapena Paz <jdapena@igalia.com>
Mon, 7 Mar 2022 18:29:47 +0000 (19:29 +0100)
Adapt to use again html5-homescreen and html5-background:
* Added html5-background and html5-homescreen.
* Now only html5-homescreen is launched from systemd, while
html5-launcher and html5-background are launched from html5-homescreen
logic.
* Use landscape weston configuration as expected in HTML5 demo.
* Pass --agl-shell-appid=homescreen to WebAppMgr script so it knows
which application implements the UI of agl_shell wayland protocol.

chromium: bc1410d..fa99cf3344
fa99cf3344 [op][agl][wayland] Activate applications when requested from applaunchd
ab1a4cf05d [op][agl][injection] AGL D-Bus implementation of PAL appservice
e5f6143e55 [op][agl][injection] Add application service injection

wam: b0c1e46..8dd3f17
8dd3f17 [op][agl][wayland] Remove unused role code.
defc5af [op][agl][wayland] Fix: do not ignore Panel shell surface type.
6683b08 [op][agl][wayland] Set AGL application ID in all cases
0bb9814 [op][agl][wayland] Properly adapt dimensions for web apps using panel
9af0d23 [op][agl][wayland] Properly pass surface size, type and edge to chromium
e6df86b [op][agl][injection] Declare in web app XML the required injections

Bug-AGL: SPEC-4250
Change-Id: Ie1b1181f3a67ea2ada1912db53e360178a4cf443
Signed-off-by: Jose Dapena Paz <jdapena@igalia.com>
recipes-demo/html5-background/files/webapps-html5-background.desktop [new file with mode: 0644]
recipes-demo/html5-background/html5-background_git.bb [new file with mode: 0644]
recipes-demo/html5-homescreen/files/homescreen.service [moved from recipes-demo/html5-launcher/files/launcher.service with 63% similarity]
recipes-demo/html5-homescreen/html5-homescreen_git.bb [new file with mode: 0644]
recipes-demo/html5-launcher/html5-launcher_git.bb
recipes-platform/packagegroups/packagegroup-agl-demo-platform-html5.bb
recipes-wam/chromium/chromium_git.bb
recipes-wam/wam/files/WebAppMgr.service
recipes-wam/wam/wam_git.bb

diff --git a/recipes-demo/html5-background/files/webapps-html5-background.desktop b/recipes-demo/html5-background/files/webapps-html5-background.desktop
new file mode 100644 (file)
index 0000000..d53a767
--- /dev/null
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Version=1.0
+Name=HTML5 Background
+Comment=Background
+GenericName=Background
+Exec=env AFM_ID=webapps-html5-background AFM_APP_INSTALL_DIR=/usr/lib/wam_apps/html5-background/ /usr/bin/WebAppMgr
+Icon=settings
+Terminal=false
+Type=Application
+Categories=System;
+StartupNotify=true
diff --git a/recipes-demo/html5-background/html5-background_git.bb b/recipes-demo/html5-background/html5-background_git.bb
new file mode 100644 (file)
index 0000000..cf1dee1
--- /dev/null
@@ -0,0 +1,40 @@
+SUMMARY     = "AGL HTML5 Homescreen"
+HOMEPAGE    = "https://github.com/AGL-web-applications/background"
+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://github.com/AGL-web-applications/background.git;protocol=https;branch=master \
+  file://webapps-html5-background.desktop \
+"
+SRCREV = "3b8dae349d428c0230b9885f86d421d43cda5638"
+
+DEPENDS = "nodejs-native"
+
+do_compile() {
+  bldcmd=${S}/autobuild/agl/autobuild
+  cd ${S}
+  $bldcmd build
+}
+
+WAM_APPLICATIONS_DIR="${libdir}/wam_apps"
+APPLICATIONS_DIR="${datadir}/applications"
+
+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}${APPLICATIONS_DIR}
+  install ${WORKDIR}/webapps-html5-background.desktop ${D}${APPLICATIONS_DIR}
+}
+
+FILES_${PN} = " \
+  ${WAM_APPLICATIONS_DIR}/${PN} \
+  ${APPLICATIONS_DIR} \
+"
+
+RCONFLICTS_${PN} = "homescreen"
@@ -1,12 +1,12 @@
 [Unit]
-Description=AGL Launcher
+Description=AGL Homescreen
 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/
+Environment=AFM_ID=homescreen
+Environment=AFM_APP_INSTALL_DIR=/usr/lib/wam_apps/html5-homescreen/
 ExecStartPre=sleep 1
 ExecStart=/usr/bin/WebAppMgr
 Restart=on-failure
diff --git a/recipes-demo/html5-homescreen/html5-homescreen_git.bb b/recipes-demo/html5-homescreen/html5-homescreen_git.bb
new file mode 100644 (file)
index 0000000..1d5f14a
--- /dev/null
@@ -0,0 +1,41 @@
+SUMMARY     = "AGL HTML5 Homescreen"
+HOMEPAGE    = "https://git.automotivelinux.org/apps/html5-homescreen/"
+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-homescreen;protocol=https;branch=${AGL_BRANCH} \
+  file://homescreen.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}/homescreen.service ${D}${systemd_user_unitdir}/homescreen.service
+  ln -s ../homescreen.service ${D}${systemd_user_unitdir}/agl-session.target.wants/homescreen.service
+}
+
+FILES_${PN} = " \
+  ${WAM_APPLICATIONS_DIR}/${PN} \
+  ${systemd_user_unitdir} \
+"
+
+RCONFLICTS_${PN} = "homescreen"
+RDEPENDS_${PN} = "applaunchd html5-background"
\ No newline at end of file
index 2a4f7ed..61899e4 100644 (file)
@@ -10,7 +10,7 @@ B       = "${WORKDIR}/build"
 
 SRC_URI = " \
   git://gerrit.automotivelinux.org/gerrit/apps/html5-launcher;protocol=https;branch=${AGL_BRANCH} \
-  file://launcher.service \
+  file://launcher.desktop \
 "
 SRCREV = "${AGL_APP_REVISION}"
 
@@ -23,18 +23,19 @@ do_compile() {
 }
 
 WAM_APPLICATIONS_DIR="${libdir}/wam_apps"
+APPLICATIONS_DIR="${datadir}/applications"
 
 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
+  install -d ${D}${APPLICATIONS_DIR}
+  install ${WORKDIR}/launcher.desktop ${D}${APPLICATIONS_DIR}
 }
 
 FILES_${PN} = " \
   ${WAM_APPLICATIONS_DIR}/${PN} \
-  ${systemd_user_unitdir} \
+  ${APPLICATIONS_DIR} \
 "
 
 RCONFLICTS_${PN} = "launcher"
+RDEPENDS_${PN} = "applaunchd"
\ No newline at end of file
index bb457b9..b00883b 100644 (file)
@@ -18,30 +18,21 @@ RDEPENDS:${PN} += "\
     "
 
 RDEPENDS:${PN} += "\
-    packagegroup-hmi-framework \
     packagegroup-agl-profile-graphical-html5 \
     packagegroup-agl-demo \
     "
 
 
 RDEPENDS:${PN}:append = " \
-    weston-ini-conf \
+    weston-ini-conf-landscape \
     ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'unzip' , '', d)} \
     "
 
-# NOTE: Currently no coverage versions for the application widgets,
-#       they should be added here when available.
-#       Also, the navigation and mixer debug widgets are currently
-#       specified explicitly, as there's no simple way to derive their
-#       names from the virtual/ RPROVIDES at present.
-RDEPENDS:${PN}-devel = " \
-    packagegroup-hmi-framework-devel \
-    "
-
 # TODO(jdapena): replace this with HTML5 apps.
 AGL_APPS = " \
     dashboard \
     html5-launcher \
+    html5-homescreen \
     html5-hvac \
     ondemandnavi \
     settings \
index 25ed0bb..ce679d0 100644 (file)
@@ -8,7 +8,7 @@ SRC_URI = "\
 # Needed by catapult
 DEPENDS += "python-six-native python-beautifulsoup4-native python-lxml-native python-html5lib-native python-webencodings-native"
 
-SRCREV_chromium87 = "bc1410d5ad4eca384fa7350410b0df4d3f2bed10"
+SRCREV_chromium87 = "fa99cf33440ed399f80b9a5166869afc83c3138b"
 SRCREV_v8 = "935065d097cce0090bc858746e6aee0919b222de"
 
 CHROMIUM_VERSION = "87.0.4280.88"
index 749d850..0285347 100644 (file)
@@ -21,7 +21,7 @@ Type=simple
 UMask=0077
 OOMScoreAdjust=-1000
 EnvironmentFile=-/etc/default/WebAppMgr.env
-ExecStart=/usr/bin/WebAppMgr --use-gl=egl --enable-features=UseOzonePlatform --ozone-platform=wayland --no-sandbox --use-viz-fmp-with-timeout=0 --in-process-gpu --remote-debugging-port=9998 --user-data-dir="/home/%u/wamdata" --webos-wam
+ExecStart=/usr/bin/WebAppMgr --use-gl=egl --enable-features=UseOzonePlatform --ozone-platform=wayland --no-sandbox --use-viz-fmp-with-timeout=0 --in-process-gpu --remote-debugging-port=9998 --user-data-dir="/home/%u/wamdata" --webos-wam --agl-shell-appid=homescreen
 Restart=on-failure
 RestartSec=50
 
index 28c5d4e..20c2222 100644 (file)
@@ -30,7 +30,7 @@ SRC_URI = "\
     file://WebAppMgr.env \
 "
 S = "${WORKDIR}/git"
-SRCREV = "b0c1e4691b68ecb0dd300d918ec218955bf8c713"
+SRCREV = "8dd3f17d374b227d3f8c053621c058cebb68a9e9"
 
 PV = "ose55.agl.marlin"