agl-demo: update meta-clang comment
[AGL/meta-agl-demo.git] / recipes-demo / flutter-ics-homescreen / flutter-ics-homescreen_git.bb
index ae897ff..576e5a7 100644 (file)
@@ -10,18 +10,19 @@ SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/flutter-ics-homescreen;p
   file://flutter-ics-homescreen.json \
   file://flutter-ics-homescreen.service \
   file://ics-homescreen.yaml \
+  file://ics-homescreen.yaml.kvm-demo \
   file://ics-homescreen.token \
+  file://radio-presets.yaml \
+  file://kvm.conf \
 "
-SRCREV = "193d15a456587bcf3928fb99fe0c1aede82d119d"
+SRCREV = "5587c6ae79b482fbff26442bb239d7d7eb55a337"
 
 S = "${WORKDIR}/git"
 
 PUBSPEC_APPNAME = "flutter_ics_homescreen"
-FLUTTER_APPLICATION_INSTALL_PREFIX = "/flutter"
-
 FLUTTER_BUILD_ARGS = "bundle -v"
 
-inherit flutter-app systemd
+inherit flutter-app systemd update-alternatives
 
 APP_CONFIG = "${BPN}.json"
 
@@ -33,18 +34,49 @@ DISABLE_BG_ANIMATION:rcar-gen3 = ""
 APP_AOT_EXTRA:append = " ${DISABLE_BG_ANIMATION}"
 
 do_install:append() {
-  install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
+    install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
+
+    install -D -m 0644 ${WORKDIR}/kvm.conf ${D}${systemd_system_unitdir}/${BPN}.service.d/kvm.conf
 
-  install -D -m 0644 ${WORKDIR}/${APP_CONFIG} ${D}${datadir}/flutter/${BPN}.json
+    install -D -m 0644 ${WORKDIR}/${APP_CONFIG} ${D}${datadir}/flutter/${BPN}.json
 
-  # VIS authorization token file for KUKSA.val should ideally not
-  # be readable by other users, but currently that's not doable
-  # until a packaging/sandboxing/MAC scheme is (re)implemented or
-  # something like OAuth is plumbed in as an alternative.
-  install -d ${D}${sysconfdir}/xdg/AGL/ics-homescreen
-  install -m 0644 ${WORKDIR}/ics-homescreen.yaml ${D}${sysconfdir}/xdg/AGL/
-  install -m 0644 ${WORKDIR}/ics-homescreen.token ${D}${sysconfdir}/xdg/AGL/ics-homescreen/
+    # VIS authorization token file for KUKSA.val should ideally not
+    # be readable by other users, but currently that's not doable
+    # until a packaging/sandboxing/MAC scheme is (re)implemented or
+    # something like OAuth is plumbed in as an alternative.
+    install -d ${D}${sysconfdir}/xdg/AGL/ics-homescreen
+    install -m 0644 ${WORKDIR}/ics-homescreen.yaml ${D}${sysconfdir}/xdg/AGL/ics-homescreen.yaml.default
+    install -m 0644 ${WORKDIR}/ics-homescreen.yaml.kvm-demo ${D}${sysconfdir}/xdg/AGL/
+    install -m 0644 ${WORKDIR}/ics-homescreen.token ${D}${sysconfdir}/xdg/AGL/ics-homescreen/
+    install -m 0644 ${WORKDIR}/radio-presets.yaml ${D}${sysconfdir}/xdg/AGL/ics-homescreen/
 }
 
+ALTERNATIVE_LINK_NAME[ics-homescreen.yaml] = "${sysconfdir}/xdg/AGL/ics-homescreen.yaml"
+
 FILES:${PN} += "${datadir} ${sysconfdir}/xdg/AGL"
-RDEPENDS:${PN} += "flutter-auto agl-flutter-env"
+
+RDEPENDS:${PN} += " \
+    flutter-auto \
+    agl-flutter-env \
+    applaunchd \
+    ${@bb.utils.contains('AGL_FEATURES', 'agl-kvm-host-audio', '', 'agl-service-radio mpd', d)} \
+"
+
+PACKAGE_BEFORE_PN += "${PN}-conf ${PN}-conf-kvm-demo"
+
+FILES:${PN}-conf += "${sysconfdir}/xdg/AGL/ics-homescreen.yaml.default"
+RDEPENDS:${PN}-conf = "${PN}"
+RPROVIDES:${PN}-conf = "ics-homescreen.yaml"
+RCONFLICTS:${PN}-conf = "${PN}-conf-kvm-demo"
+ALTERNATIVE:${PN}-conf = "ics-homescreen.yaml"
+ALTERNATIVE_TARGET_${PN}-conf = "${sysconfdir}/xdg/AGL/ics-homescreen.yaml.default"
+
+FILES:${PN}-conf-kvm-demo += " \
+    ${sysconfdir}/xdg/AGL/ics-homescreen.yaml.kvm-demo \
+    ${systemd_system_unitdir}/flutter-ics-homescreen.service.d/kvm.conf \
+"
+RDEPENDS:${PN}-conf-kvm-demo = "${PN}"
+RPROVIDES:${PN}-conf-kvm-demo = "ics-homescreen.yaml"
+RCONFLICTS:${PN}-conf-kvm-demo = "${PN}-conf"
+ALTERNATIVE:${PN}-conf-kvm-demo = "ics-homescreen.yaml"
+ALTERNATIVE_TARGET_${PN}-conf-kvm-demo = "${sysconfdir}/xdg/AGL/ics-homescreen.yaml.kvm-demo"