summaryrefslogtreecommitdiff
path: root/recipes-devtools/node-red/node-red_0.15.3.bb
blob: 4898ebc5618aa11386484dd45e9adf076569767d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
DESCRIPTION = "Node-RED"
HOMEPAGE = "https://nodered.org"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
DEPENDS = "nodejs nodejs-native"
RDEPENDS_${PN} += "bash"
PR = "r0"

inherit npm-base


S = "${WORKDIR}"

do_install() {

    # npm install locally
    oe_runnpm install --prefix ./ node-red@0.15.3

    # npm install more stuff
    oe_runnpm install --prefix./node_modules/node-red nodemailer 
    # Build patched serialport.
    # Original is https://registry.npmjs.org/serialport/-/serialport-1.7.4.tgz
    oe_runnpm install  --prefix ./node_modules/node-red https://multitech.net/mlinux/sources/node-red-serialport-1.7.4-mt1.tgz

    # modules needed for loragw
    oe_runnpm install --prefix ./node_modules/node-red extend dissolve node-constants

    # install m2x node
    oe_runnpm install --prefix ./node_modules/node-red node-red-m2x

    # remove dupe deps
    oe_runnpm dedupe

    # remove Raspberry PI node
    rm ./node_modules/node-red/nodes/core/hardware/36-rpi-gpio.html
    rm ./node_modules/node-red/nodes/core/hardware/36-rpi-gpio.js
    rm ./node_modules/node-red/nodes/core/hardware/nrgpio
    rm ./node_modules/node-red/nodes/core/hardware/nrgpio.py

    # remove x86_64 serialport 0.0.5
    rm -rf ./node_modules/node-red/node_modules/node-red-node-serialport

    # install node-red
    install -d ${D}/opt/node-red
    cp -r ./node_modules/node-red/* ${D}/opt/node-red/
}
pkg_preinst_${PN}() {
   if grep 'Application Execution Platform with mLinux' /etc/issue ; then
	((aep=1))
   fi
   ls /etc/init.d >/tmp/init.txt

   if ((aep == 1)) ; then
	logger -t opkg -s -p user.error 'Application Execution Platform detected in /etc/issue  -- this node-red package is for mLinux not AEP'
        exit 1 
   fi
}

FILES_${PN} += "/opt/node-red"