summaryrefslogtreecommitdiffstats
path: root/meta-sota/recipes-sota/rvi-sota-client/rvi-sota-client_git.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-sota/recipes-sota/rvi-sota-client/rvi-sota-client_git.bb')
-rw-r--r--meta-sota/recipes-sota/rvi-sota-client/rvi-sota-client_git.bb166
1 files changed, 118 insertions, 48 deletions
diff --git a/meta-sota/recipes-sota/rvi-sota-client/rvi-sota-client_git.bb b/meta-sota/recipes-sota/rvi-sota-client/rvi-sota-client_git.bb
index b990272..c6cb0bb 100644
--- a/meta-sota/recipes-sota/rvi-sota-client/rvi-sota-client_git.bb
+++ b/meta-sota/recipes-sota/rvi-sota-client/rvi-sota-client_git.bb
@@ -1,58 +1,128 @@
-DESCRIPTION = "SOTA Reference Implementation project - Client"
+DESCRIPTION = "sota-client rust recipe"
HOMEPAGE = "https://github.com/advancedtelematic/rvi_sota_client"
+
LICENSE = "MPL-2.0"
-inherit cargo systemd
+LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=65d26fcc2f35ea6a181ac777e42db1ea"
-SRC_URI = "git://github.com/advancedtelematic/rvi_sota_client.git;protocol=https \
- file://rvi-sota-client.service \
- "
-SRCREV="825be11b03f89c52e5441b3d26e1cbf63fd313dd"
-LIC_FILES_CHKSUM="file://LICENSE;md5=65d26fcc2f35ea6a181ac777e42db1ea"
+inherit cargo systemd
S = "${WORKDIR}/git"
-BBCLASSEXTEND = "native"
-
-DEPENDS += "dbus openssl"
-RDEPENDS_${PN} += "dbus-lib libcrypto libssl bash"
+SRCREV = "484e98981f5ddbf61a9e4ca6190c9f2c2fcdec4c"
+PV = "0.2.17.5.g484e989"
+PR = "${SRCPV}"
-SYSTEMD_SERVICE_${PN} = "rvi-sota-client.service"
-
-do_install_append() {
- install -m 0755 -p -D ${S}/client.toml ${D}/var/sota/client.toml
- install -m 0755 -p -D ${S}/docker/run.sh ${D}${bindir}/run.sh
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -p -D ${WORKDIR}/rvi-sota-client.service ${D}${systemd_unitdir}/system/rvi-sota-client.service
- fi
-}
+BBCLASSEXTEND = "native"
-## dbus-rs
-SRC_URI += "\
- git://github.com/diwic/dbus-rs.git;protocol=https;name=dbus-rs;destsuffix=dbus-rs \
- file://dbus-rs/0001-Cast-correctly-c_char-raw-pointers-for-ARM.patch;patchdir=../dbus-rs \
+FILES_${PN} = " \
+ /usr/bin/sota_client \
+ /usr/bin/system_info.sh \
+ /etc/sota_client.version \
+ /etc/sota_certificates \
+ ${base_libdir}/systemd/system/sota_client.service \
+ "
+
+SRC_URI = " \
+crate://crates.io/aho-corasick/0.5.2 \
+crate://crates.io/time/0.1.35 \
+crate://crates.io/url/1.1.1 \
+crate://crates.io/ws2_32-sys/0.2.1 \
+crate://crates.io/hyper/0.9.4 \
+crate://crates.io/log/0.3.6 \
+crate://crates.io/unicase/1.4.0 \
+crate://crates.io/bitflags/0.5.0 \
+crate://crates.io/bit-set/0.2.0 \
+crate://crates.io/lazy_static/0.1.16 \
+crate://crates.io/rust-crypto/0.2.36 \
+crate://crates.io/typeable/0.1.2 \
+crate://crates.io/pkg-config/0.3.8 \
+crate://crates.io/httparse/1.1.2 \
+crate://crates.io/openssl/0.7.13 \
+crate://crates.io/user32-sys/0.2.0 \
+crate://crates.io/regex/0.1.71 \
+crate://crates.io/unicode-normalization/0.1.2 \
+crate://crates.io/idna/0.1.0 \
+crate://crates.io/unicode-bidi/0.2.3 \
+crate://crates.io/rand/0.3.14 \
+crate://crates.io/gcc/0.3.28 \
+crate://crates.io/chan/0.1.18 \
+crate://crates.io/kernel32-sys/0.2.2 \
+crate://crates.io/winapi/0.2.7 \
+crate://crates.io/crossbeam/0.2.9 \
+crate://crates.io/bitflags/0.4.0 \
+crate://crates.io/thread-id/2.0.0 \
+crate://crates.io/mime/0.2.1 \
+crate://crates.io/thread_local/0.2.6 \
+crate://crates.io/utf8-ranges/0.1.3 \
+crate://crates.io/net2/0.2.23 \
+crate://crates.io/dbus/0.3.3 \
+crate://crates.io/winapi-build/0.1.1 \
+crate://crates.io/chan-signal/0.1.6 \
+crate://crates.io/bit-vec/0.4.3 \
+crate://crates.io/toml/0.1.30 \
+crate://crates.io/quick-error/0.2.2 \
+crate://crates.io/ws/0.5.0 \
+crate://crates.io/traitobject/0.0.1 \
+crate://crates.io/cfg-if/0.1.0 \
+crate://crates.io/matches/0.1.2 \
+crate://crates.io/getopts/0.2.14 \
+crate://crates.io/sha1/0.1.1 \
+crate://crates.io/openssl-sys/0.7.13 \
+crate://crates.io/cookie/0.2.5 \
+crate://crates.io/libressl-pnacl-sys/2.1.6 \
+crate://crates.io/lazy_static/0.2.1 \
+crate://crates.io/language-tags/0.2.2 \
+crate://crates.io/semver/0.1.20 \
+crate://crates.io/unix_socket/0.5.0 \
+crate://crates.io/memchr/0.1.11 \
+crate://crates.io/gdi32-sys/0.2.0 \
+crate://crates.io/nom/1.2.3 \
+crate://crates.io/mio/0.5.1 \
+crate://crates.io/tempdir/0.3.4 \
+crate://crates.io/miow/0.1.2 \
+crate://crates.io/pnacl-build-helper/1.4.10 \
+crate://crates.io/libc/0.2.12 \
+crate://crates.io/nix/0.5.1 \
+crate://crates.io/byteorder/0.5.3 \
+crate://crates.io/rustc_version/0.1.7 \
+crate://crates.io/slab/0.1.3 \
+crate://crates.io/rustc-serialize/0.3.19 \
+crate://crates.io/env_logger/0.3.3 \
+crate://crates.io/vecio/0.1.0 \
+crate://crates.io/rotor/0.6.3 \
+crate://crates.io/openssl-sys-extras/0.7.13 \
+crate://crates.io/regex-syntax/0.3.3 \
+crate://crates.io/bytes/0.3.0 \
+crate://crates.io/void/1.0.2 \
+crate://crates.io/spmc/0.2.1 \
+crate://crates.io/openssl-verify/0.1.0 \
+crate-index://crates.io/6127fc24b0b6fe73fe4d339817fbf000b9a798a2 \
+git://github.com/advancedtelematic/rvi_sota_client \
"
-
-# 0.1.2
-SRCREV_dbus-rs = "c2c4c98adcf9949992ac5b0050bf17afe10868c9"
-
-SRCREV_FORMAT .= "_dbus-rs"
-EXTRA_OECARGO_PATHS += "${WORKDIR}/dbus-rs"
-
-## rust-openssl
-SRC_URI += "git://github.com/sfackler/rust-openssl.git;protocol=https;name=rust-openssl;destsuffix=rust-openssl "
-
-# 0.7.10
-SRCREV_rust-openssl = "d6bc3bb16f2673f610e9310041fc030ea9b90187"
-
-SRCREV_FORMAT .= "_rust-openssl"
-EXTRA_OECARGO_PATHS += "${WORKDIR}/rust-openssl"
-
-## hyper
-SRC_URI += "git://github.com/hyperium/hyper.git;protocol=https;name=hyper;destsuffix=hyper "
-
-# 0.9.1
-SRCREV_hyper = "4828437551c7f5ed3f54acb1c1bf1fd50a6a3516"
-
-SRCREV_FORMAT .= "_hyper"
-EXTRA_OECARGO_PATHS += "${WORKDIR}/hyper"
+SRC_URI[index.md5sum] = "79f10f436dbf26737cc80445746f16b4"
+SRC_URI[index.sha256sum] = "86114b93f1f51aaf0aec3af0751d214b351f4ff9839ba031315c1b19dcbb1913"
+
+SYSTEMD_SERVICE_${PN} = "sota_client.service"
+
+DEPENDS += " openssl "
+RDEPENDS_${PN} = " libcrypto \
+ libssl \
+ dbus \
+ bash \
+ lshw \
+ jq \
+ "
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 0755 target/${TARGET_SYS}/release/sota_client ${D}${bindir}
+ install -m 0755 run/system_info.sh ${D}${bindir}
+
+ install -d ${D}${systemd_unitdir}/system
+ install -c ${S}/run/sota_client.service ${D}${systemd_unitdir}/system
+
+ install -d ${D}${sysconfdir}
+ echo `git log -1 --pretty=format:%H` > ${D}${sysconfdir}/sota_client.version
+ install -c ${S}/run/sota_certificates ${D}${sysconfdir}
+}