#!/bin/sh

if [ -d '/opt/lnxall_app/bin' ] ; then
	export PATH=/opt/lnxall_app/bin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin
else
	export PATH=/lib/dyiot/bin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin
fi

BO_GWSN="$1"
THIS_SCRIPT="$(readlink -f $0)"

check_gwsn() {
	if [ -z "${BO_GWSN}" ] ; then
		echo "Error, \`BO_GWSN not set." 1>&2
		# exit 1
	fi

	local GWSN="$(factory get 2>/dev/null | awk -F= '/SN=/{print $2}')"
	if [ "${GWSN}" != "${BO_GWSN}" ] ; then
		echo "Error, GWSN not match: ${BO_GWSN} <=> ${GWSN}" 1>&2
		BO_GWSN="${GWSN}"
		# exit 2
	fi

	echo "Gateway SN check OKAY: ${GWSN}"
	return 0
}

is_rk3568() {
	local out="$(cat /proc/device-tree/model | grep -a -e RK3568)"
	if [ -z "${out}" ] ; then
		echo "Error, not RK3568 gateway: ${BO_GWSN}"
		return 1
	fi
	return 0
}

has_hdmi() {
	local out="$(cat /sys/class/drm/card0-HDMI-A-1/status | grep -w connected)"
	if [ -z "${out}" ] ; then
		echo "Error, no hdmi screen detected"
		return 1
	fi
	return 0
}

has_no_opkg() {
	if command -v opkg >/dev/null 2>&1; then
		echo "Error, opkg exist, please install ipk of sysmonitor"
		return 1
	fi
	return 0
}

check_gwsn

if is_rk3568 && has_no_opkg && has_hdmi ; then
	line_no=$(cat -n "${THIS_SCRIPT}" | grep -a -E -e '#\s+RAW_DATA_BEGIN' | awk '{print $1}')
    if [ -z "${line_no}" ] ; then
        echo "Error, failed to get raw data line NO. => ${BO_GWSN}"
        return 1
    fi
    line_no=$((line_no + 1))

	cd /tmp
	tail -n "+${line_no}" "${THIS_SCRIPT}" | bzip2 -d -c | tar -x -f -

	chown root:root packed/*

	mv -v -f packed/softhpd.lua packed/sysmonitor.lua /opt/lnxall_app/bin/
	mv -v -f packed/softhpd.service /lib/systemd/system/
	systemctl daemon-reload

	/lib/dyiot/init.d/sysmonitor restart
	systemctl enable softhpd.service
	systemctl restart softhpd.service

	rm -v -f /app/config/*-tp-*.conf
	rm -v -f /opt/lnxall_app/bin/hdmi-display.sh
fi
rm -rf /tmp/packed
exit 0
#  RAW_DATA_BEGIN #####################
BZh91AY&SYD 8߂  `/ (so4*!uE-z>޵z.ѩ72C Uv#Ͻ}ݳ=yM;nv5*Kwu>te|gMϼY7y>{ЯI  02hdxe3#PM4LA0&OM?)=jm'=@@  *~M%?Sښ4hɈ 4=@h
HSl2L*meԍ    a&z~"=MmQh~A   I@F@OOʞ=OPmMS@@   ub8
.n̎XM"XE4%!bH(PDQDJDQL4QM1TDA$M%D$4DI%2A1MQT4TDM"L%AEEC	RBUR,MSAM4K3AULEDDCK1TEAQIIT4-CCQTD@!IBL DMAIIBSQA1T%$BD5M35B250TE*I
Hךus?{Ok}E >;\3'H%#m饒߇ۤ2|[M)4g[F=rclsٴ\?E;/?9CfQ_"E¬aATEՐ娄%1^^GmYFUDgpdgiDTvk2$1܀t {n̚L+fmwҙ:dw & e<@-c}{!yFԧ% r	0W$j|	xY5 18dv5BI.bKǠ-ʋkn
 HHD Ȑc#. KUlb{,6%|nR6*ؑ_edDHL+߯4T^j\w!hk5^<~,!V0'f75bc9x4ilK}$*n!U\gR"9'x@iFD vC۫<z1>BQHLT(i1,.8x6óQo<T,px	I*b2TM5_JVЂ9E10vws$KxZ	NkQK2Kuil~.05Viǰ;/~?tQH|%* ?F mUrL΋X3![t$o^=*|BĲ@_O+=3,hqCЇ4ݶ5R}Ġ^] E7˭Z<Цk-c4:5)~fBuy-`[26h:Wtb>|ˢ^)'kkic<uC/P_b"ITGj5k3sڬfvnYDkeQ)xnkpyH=uNwS:~:-Zn33,8m]FP9{f}gCծ{ :8!5Syd5/:"umjm$J"%^J
AVbm\(,ڢԥG?_j,ȩk=|8m;)pIlq>+g%lE]ٲ >b$-e$ZXvzEi38l3 .l)(UCXsdI0K"IIRuL[ÛD|3hƙ:Ksˍ/3*Kгgi)-HQEoUYEAHjupDv~9Y)NQ^Z$h,݋"pTO
5BA%1VƵp+ejMב7dEbUvio8U!h^]݄%gڵ4]فbIf=UT L=6J(	îyT,Qd[z}oInwR3SHfXi6ƒ_9FV	B*H)pATkuQnHv
xVӋx?k!TI _V%Kӭ۷մ-sE;4&h|$44-P0;if0l	1Z5 1?ؽ_괏>ޟAO
}Kq`LCg~pL3
Qh!X|Z8-C7җvt,\CsaZveϠB3Q$7B*1D3g!kƛ->hj9=άEwlZ3yMKrkteqJ&բgwr$XVLied¸rM	$1ټ.[y
UN3jgw]ʔI2w\elc#:qǢCeYqbqAK<2W-E)ǳCxvuӫtfa{u[W"U!DKBRTB$էt-l^z\)$AJ|-P~/  Vanby9L;0>YL2(珕4ؾLP#W@LD9Wq~(#1|'<~ΜR^YIoMUI%^mx}p%D2"A^ڪ0r=!H}Vlc)q0zoڡ$%Bߟ>n=8_	;ٵcOedLQ0J2KD(lN}|s85Mp$UYuIȢJJڶ
F5bZ9mǱN)iR^([):@&nou f2̱ќ], diuC,ܒ;J7	9Xcnq	|Bm۬Z~>_zGG+D>42=n6xFéȊ5IwyqD]GXKq0fd&!o:[*<;G*v~]c5eTz_xש0_V#(.NQueU)mʫ-Q2{N-"K5_y1mmeo(K aƌ43D=VWPڌ~vf'2``Y?TU 2ACB*=l5ﵟzѯ{Ռ-a;Nt}OEU׬BBYE<w&)h5eB|*XJ=,өkz"w|,n7A~5>%QYDFF]lGU@damT@1NX2|eDJd=ŝe75⬳#fHs^K{SWz6.9?JuYNŕ4@5bJM8D6#.5R3bVp7fڞ&))|.r)Emc`Ȉ4Miiv<Yk~(^̯DqE(|@D5S۟`YSSsXZ5k.`>rl-{4Q*htnϙ z(0r{B¨acǪ3ȻcW8R<t+C`r|ml\ID/HGx܇cpG׳33#6Ry?r,9+CsnP dRpl-,q١)@|4vYtTQ}(	!F"pIGKU<rA7掮8LX Gp x2#$	RGYeX\
/p,-MO`Fך[.F2NZ`q)xԓ~
(@.v?o+м.gP-p/{X'M"lPaf_iHx;;q7z& r15B6(G4B=`ݪJ| IAKpi_SIE@'=#dVU64-μ&G|C=g%GL=&lǍ%
gI
@	jGz-ǵ9'䤊G3&ywS#]1mzE.^(b<@pJXr׷(/BGAwI3	b$F;jY$"t歓gQ, iPQ*
N皣/oM~0yƙSZCL XGQIL8ewr;W'/Nt\5lb_x}ke!h,@` 'Z4,э	X:
X-CW!~
*ಹ775YdT)UT)Nd{VyA;^~|`(k~83w[c&** }mTMoMFg|zt)_0 !RSK1#  .g$N˴1.\0bU䣞NKW2n]?ЃQ^#d~Avw%u~T}+ЁGBȇA^Cm=En7c\N!KA͐"k/տG[)Kjl3u9v1&wtcD&,6/xe2^6@5[k`N8m/1mNt710%cjV}J69P0
V$RFHE>F;s6?aɉg3&4	h	8hIf.CՊ 54kіgo坬8<-TF
!ḝGP{ p ,''fu]еZ נK!Hnc -Zσ~>^?}Qs<VDpeW0(vH$aP_Υ=,O쩌cb08B8[K6}'ָ<HFjI(j" yNe+)$@2&GGXZc̝a!Mare%aHZt9׬xL%vJoGP36̈́5{TM{ɟq^q(tfae^hNp)}`?%Ȣ)btK@d%{a-}=medٓޠFڂH?xd-]*q[@~ݬkC$ wӀ:2#I+EdVMRB͠]3Rd<Իb1FYnZt}CpD<8RF+n
PU9c-,t/H
g烱Hbɮ	ô<=12.:6+6;0x"uj¨;'ox%5w7OB4W(7
JBd7qbz
z+ çL('70z4!45&iiWyqˇχ:fB0QN#}TӍ(M `d4h]Uyʱ׫e+<~&a}o)!s	d5ijVg%*1RCPR(Z̃Jj&"UKÆ'ƠHΔ*gsOLi,*Ε #
m͚SK48BYE$̭J56EU,^V%qѫkj^QJ.NɲnÁYlwvy_$6PCH[rgɄDu2ỲXY4d(r
MeS4G<dd̖~EdA!L/֡ӷ|(f8ɂfZ=ֈ RZIf-vM1g)O v
舦y_aL4E_rsEMaņB0.Y9NRN9WYrQ mq6Rj89ttmZHN!3`!f.3DekEK0ō@M5w !s$0s fGOEb"gsuUl*(/_h]%Bqute%J"!1J/pq8rf܀LXtVN. zZvpr
Ji

()"J&h"b(l (
&*Ƣg货x}fxqʪ!6=Q88/, =͕F!ZsI*|'WHH<&5Y*{^su${o{]yrx-y:&^ pT#a`S9_߬4-Ab|bS˪c^ˡ9s{y~pZ[jbKܶ$T}7w:%)#-EƧp:xXyL)·uA˕ǵ Iwm}jxb}C;r兏sX#6zOb$9FȲO~ؽNffUYQ݆:SrV4pYhwsF\2H$$+Q[T#HA	AC ]͚jSMp:GְZ*Zj-	b>A\"\ ʣ	P-v[.+fZ_G[4SJM	I7*T=EaFg
/8 YZd/֟wXqN[NE.ZѨ7^	xP=kC
Ǻ't$[)~YBP孛3b(Td%א.E׀eo<]-
gC#rx:Q\>g-ȏb@*Gdv2h+1Bx2C} d9%d&Bѭbө'^sc_q$p[S" zHc|*@oq`$oGA@Z@0*֖)dZwf$(bq%I&*4A9]WKX
W43AD XQ>e,ٻn4 MTaFg6DGW$Pb3;m'l5ɝ;ҝa+;<U.35i;$FԔBRʸ~Yf3B/ɼ;a6H$,fM;eoOHS;_t>)	rr
h>flT;Eo/.D%^ZZ5/WNV<_*&H2v%3{{OX	Q/;ሊ!DG]Add3\U$GS[ZB4bj_:IzVC:!y1^Jݘxx_{R4U]=.#
`=P4cn5rP!Em֐lKHb{oM£4>tbT/LB94k0J[FY)Ȕ3NPՖV5r7FCHBcp 4sgkdւ!D$ 7#P%VEA0]n2*ڱsM|$(m)҂Ј:Lf&@V%P],bl0r&;1d`x16p*u+vX 9?+.Ǡ8]ErrDFlݿoEsm
6	Mt3
,.i{8`.՘=}b"^N x;PUOwB}S2Xٕ ^A F)ve
TzX4@!DdEt^`ցR-զgGIXtYwK<mk2yTK	Ǆl*hQmj$~/i6܇X!5N@gapٚɯżMX%CT!]N"؎t@a*U;1!fnSY#[[ywarS 3ѐLUFW<=$``HCN0.e`,:H9g,ʒJZLoӻʦuoIdL
6Õub/ TÈ3A\	B4s,Kt&83+heh\ЁuA"Bh@o\;@ግ҂2! !d'Y<ty#nn-$C:d6	`
aS؛6Y
/h9GBggd3a# B4؜9	hI{NBX5Qqhv~#Xe!"ss8ě[țSΰd'z)|,(zeq(R<RӘQ/yBcBδA>;VEH3[x` 7Pcl/*)>ɢ`qNQSuvvI˒._(}QWYZ_+҂n,5,ЙO" TGc|MbBև*V!hСZ<ܦP6UrFN13jR8F5[UqĄ\|7݌w6 IŅIY\AڵY\v.=uBb6fgRp^!X\i濫a!D{j*uk_0FȼL`u"lr9dA a"0Y,($X <_`+$@Q@ʫ7Ag{1p	r.·AeEK i! (Bb]@YխPV JB
T܃ha٩G2]<nnb"Ǩe4jAk.Xz%52ȃ{[	^Βڒ߂a:##_:hH6L$5YQk
`)HHBCqA,*xLPS_ Ny8N^&It!!hpZ翞úPWT@oJ4u8m+"5`b$( 'S&)~QDGP#%GPDexyy"|̥Y^?c7ջ2JE> E,3V4yMW+өRss! A64uw6-GRC>z bKPD(y@> zdP$OQyTnQoVh݇- u@qkچ@3+-"vAqn7_e_yWS| %2oE;e1(|ۂކqŒe(5JWf+nH.k}[TRBo7oIM3ȃGz?LԸWv~gN{p
QQIY:Z&M@)" 