6dacebb57f1b929764c1348e3b782aab7d402291
[AGL/meta-agl-demo.git] / recipes-demo / flutter-ics-homescreen / flutter-ics-homescreen_git.bb
1 SUMMARY = "AGL ICS Flutter Homescreen"
2 DESCRIPTION = "Demo Flutter homescreen for Automotive Grade Linux by ICS."
3 HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/apps/flutter-ics-homescreen"
4 SECTION = "graphics"
5
6 LICENSE = "Apache-2.0"
7 LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
8
9 SRC_URI = "git://gerrit.automotivelinux.org/gerrit/apps/flutter-ics-homescreen;protocol=https;branch=${AGL_BRANCH} \
10   file://flutter-ics-homescreen.json \
11   file://flutter-ics-homescreen.service \
12   file://ics-homescreen.yaml \
13   file://ics-homescreen.yaml.kvm-demo \
14   file://ics-homescreen.token \
15   file://radio-presets.yaml \
16   file://kvm.conf \
17 "
18 SRCREV = "5587c6ae79b482fbff26442bb239d7d7eb55a337"
19
20 S = "${WORKDIR}/git"
21
22 PUBSPEC_APPNAME = "flutter_ics_homescreen"
23 FLUTTER_APPLICATION_INSTALL_PREFIX = "/flutter"
24
25 FLUTTER_BUILD_ARGS = "bundle -v"
26
27 inherit flutter-app systemd update-alternatives
28
29 APP_CONFIG = "${BPN}.json"
30
31 SYSTEMD_SERVICE:${PN} = "flutter-ics-homescreen.service"
32
33 # Disable the background animation on all platforms except the Renesas M3/H3 for now
34 DISABLE_BG_ANIMATION = "-DDISABLE_BKG_ANIMATION=true"
35 DISABLE_BG_ANIMATION:rcar-gen3 = ""
36 APP_AOT_EXTRA:append = " ${DISABLE_BG_ANIMATION}"
37
38 do_install:append() {
39     install -D -m 0644 ${WORKDIR}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
40
41     install -D -m 0644 ${WORKDIR}/kvm.conf ${D}${systemd_system_unitdir}/${BPN}.service.d/kvm.conf
42
43     install -D -m 0644 ${WORKDIR}/${APP_CONFIG} ${D}${datadir}/flutter/${BPN}.json
44
45     # VIS authorization token file for KUKSA.val should ideally not
46     # be readable by other users, but currently that's not doable
47     # until a packaging/sandboxing/MAC scheme is (re)implemented or
48     # something like OAuth is plumbed in as an alternative.
49     install -d ${D}${sysconfdir}/xdg/AGL/ics-homescreen
50     install -m 0644 ${WORKDIR}/ics-homescreen.yaml ${D}${sysconfdir}/xdg/AGL/ics-homescreen.yaml.default
51     install -m 0644 ${WORKDIR}/ics-homescreen.yaml.kvm-demo ${D}${sysconfdir}/xdg/AGL/
52     install -m 0644 ${WORKDIR}/ics-homescreen.token ${D}${sysconfdir}/xdg/AGL/ics-homescreen/
53     install -m 0644 ${WORKDIR}/radio-presets.yaml ${D}${sysconfdir}/xdg/AGL/ics-homescreen/
54 }
55
56 ALTERNATIVE_LINK_NAME[ics-homescreen.yaml] = "${sysconfdir}/xdg/AGL/ics-homescreen.yaml"
57
58 FILES:${PN} += "${datadir} ${sysconfdir}/xdg/AGL"
59
60 RDEPENDS:${PN} += " \
61     flutter-auto \
62     agl-flutter-env \
63     applaunchd \
64     ${@bb.utils.contains('AGL_FEATURES', 'agl-kvm-host-audio', '', 'agl-service-radio mpd', d)} \
65 "
66
67 PACKAGE_BEFORE_PN += "${PN}-conf ${PN}-conf-kvm-demo"
68
69 FILES:${PN}-conf += "${sysconfdir}/xdg/AGL/ics-homescreen.yaml.default"
70 RDEPENDS:${PN}-conf = "${PN}"
71 RPROVIDES:${PN}-conf = "ics-homescreen.yaml"
72 RCONFLICTS:${PN}-conf = "${PN}-conf-kvm-demo"
73 ALTERNATIVE:${PN}-conf = "ics-homescreen.yaml"
74 ALTERNATIVE_TARGET_${PN}-conf = "${sysconfdir}/xdg/AGL/ics-homescreen.yaml.default"
75
76 FILES:${PN}-conf-kvm-demo += " \
77     ${sysconfdir}/xdg/AGL/ics-homescreen.yaml.kvm-demo \
78     ${systemd_system_unitdir}/flutter-ics-homescreen.service.d/kvm.conf \
79 "
80 RDEPENDS:${PN}-conf-kvm-demo = "${PN}"
81 RPROVIDES:${PN}-conf-kvm-demo = "ics-homescreen.yaml"
82 RCONFLICTS:${PN}-conf-kvm-demo = "${PN}-conf"
83 ALTERNATIVE:${PN}-conf-kvm-demo = "ics-homescreen.yaml"
84 ALTERNATIVE_TARGET_${PN}-conf-kvm-demo = "${sysconfdir}/xdg/AGL/ics-homescreen.yaml.kvm-demo"