#!/bin/sh find_base(){ HDD_MOUNT=`/sbin/getcfg Public path -f /etc/config/smb.conf` local log_tool="/sbin/log_tool -t2 -uSystem -p127.0.0.1 -mlocalhost -a" if [ -e "$HDD_MOUNT" ]; then if [ -z "$QINSTALL_PATH" ]; then BASE_GROUP="/share/HDA_DATA /share/HDB_DATA /share/HDC_DATA /share/HDD_DATA /share/HDE_DATA /share/HDF_DATA /share/HDG_DATA /share/HDH_DATA /share/HDI_DATA /share/HDJ_DATA /share/HDK_DATA /share/HDL_DATA /share/MD0_DATA /share/MD1_DATA /share/MD2_DATA /share/MD3_DATA" publicdir=`/sbin/getcfg Public path -f /etc/config/smb.conf` if [ ! -z $publicdir ] && [ -d $publicdir ];then publicdirp1=`/bin/echo $publicdir | /bin/cut -d "/" -f 2` publicdirp2=`/bin/echo $publicdir | /bin/cut -d "/" -f 3` publicdirp3=`/bin/echo $publicdir | /bin/cut -d "/" -f 4` if [ ! -z $publicdirp1 ] && [ ! -z $publicdirp2 ] && [ ! -z $publicdirp3 ]; then [ -d "/${publicdirp1}/${publicdirp2}/Public" ] && QPKG_BASE="/${publicdirp1}/${publicdirp2}" fi fi # Determine BASE installation location by checking where the Public folder is. if [ -z $QPKG_BASE ]; then for datadirtest in $BASE_GROUP; do [ -d $datadirtest/Public ] && QPKG_BASE="/${publicdirp1}/${publicdirp2}" done fi if [ -z $QPKG_BASE ] ; then echo "The Public share not found." return 1 fi QPKG_INSTALL_PATH="${QPKG_BASE}/.qpkg" QPKG_DIR="${QPKG_INSTALL_PATH}/${QPKG_NAME}" else if [ -e "$QINSTALL_PATH" ]; then QPKG_INSTALL_PATH="${QINSTALL_PATH}" QPKG_DIR="${QINSTALL_PATH}/${QPKG_NAME}" else if [ -x "/usr/local/sbin/notify" ]; then /usr/local/sbin/notify send -A A039 -C C001 -M 50 -l error -t 3 "[{0}] {1} install failed due to QTS application install volume not found." "App Center" "Entware-alt" set_progress_fail exit else /sbin/log_tool -t2 -uSystem -p127.0.0.1 -mlocalhost -a "[App Center] Failed to install Entware-alt. The selected installation volume is missing." set_progress_fail fi exit fi fi return 0 else if [ -x "/usr/local/sbin/notify" ]; then /usr/local/sbin/notify send -A A039 -C C001 -M 50 -l error -t 3 "[{0}] {1} install failed due to QTS application install volume not found." "App Center" "Entware-alt" set_progress_fail exit else /sbin/log_tool -t2 -uSystem -p127.0.0.1 -mlocalhost -a "[App Center] Failed to install Entware-alt. The selected installation volume is missing." set_progress_fail fi exit fi } /bin/echo "Install QNAP package on TS-NAS..." /bin/grep "/mnt/HDA_ROOT" /proc/mounts >/dev/null 2>&1 || exit 1 find_base _EXTRACT_DIR="$QPKG_INSTALL_PATH/.tmp" /bin/mkdir -p $_EXTRACT_DIR || exit 1 script_len=3061 /bin/dd if="${0}" bs=$script_len skip=1 | /bin/tar -xO | /bin/tar -xzv -C $_EXTRACT_DIR || exit 1 offset=$(/usr/bin/expr $script_len + 20480) /bin/dd if="${0}" bs=$offset skip=1 | /bin/cat | /bin/dd bs=1024 count=4 of=$_EXTRACT_DIR/data.tar.gz || exit 1 [ -f /usr/local/bin/python ] && /usr/local/bin/python -c "with open('$_EXTRACT_DIR/data.tar.gz', 'rw+') as f: f.seek(3741); f.truncate()" offset=$(/usr/bin/expr $offset + 3741) ( cd $_EXTRACT_DIR && /bin/sh qinstall.sh || echo "Installation Abort." ) /bin/rm -fr $_EXTRACT_DIR && exit 10 exit 1 control.tar.gz0000666000000000000000000002561013557574517014603 0ustar adminadministrators6JMr~!}9r/B-| DmB4d#md,< ahf30K˶9% 6`Xrt?3ڃo6K/(daN8 8mj'0B;lQsnӃzfmz;u;F>EP|e˖40,s3$SもZGԺ 2eMgL 6bҳ`6atO`+2 J1H D[& FHe ۩[&þfۘc3">Ӻ=3+b\~ɳ6M##M'l͝v^:+ab\umm >P4R'?t{и=q5xQ]W:`vƠvt ]>Oh0ODO!yxTpwk3ljƓNN%SЛc-9i[̸9NKҴ݉{O{23Lt7{im'{3 f~C*ɧlRe+0|Ji;"U5 ~x@l#MaD6є7V“xwW]]v65{E؇%5i΄X؜_[yQ봏Ǽ *\glMxg(]d>a0*ިv u(޷̧ԝ4f:̘Pgmo5Ī-1J k*!ϿB'1/aApD鬠|)W}pl 7z!Og[Kn: p~]V;nCЮ1O!οLJ8o7z,r3f#w[GWm\A`fL%9)Pv5|gיM4Z`Sj6,V ==q5i:/͵:?ȟas%D,ѻV}`3eVZwzY+kk6 v[c_v;ky:P _sNkxF[Lk/fTSV̩t:.@نugJA'ɀ:AȽ·ܫtH%[FC5b~oRGg?&ON=rj"X*GMhuT*۶{iAzaxnl`Va5q 0[8E<*1a8S, o1Vt MV9L! J_YR\84 G'L&: |9SsL\hp,!2>*Ce(8sFL-QfNM($X1D&S-uNGFSzF£2a1)Z>%RLPz51A$(ȟ}6;`x||VYћKz-WKܽ$,ܗI-I)oGgaDkh)s?V.S/ye'HxTpҺ GqDO:99MgMmQ'H6-t+KM%%&2bk)sy'ɶ|.O!N@)>tȍ&C~dz=dbP`y$+jP^-i~ ^1ƽы1Xy+7̆%w4@HbXmy &D)q< Hѷ%=WjTW 9 /./ceu%4Hv|Mw,>)e겸,ߍ]+is%{8^8Oxvo/0:V]ݲs]bhlQ$pvCɇDe}$I-m}!e2-vpvKթ RU~M'(Bli*:D-EC3M2sTG0I՞xc5LLvaݳgDYq'"ODY8"?VjF+SC (QSRY9wp.ܱ12ZFzJ1MuD&/ݠO1l{ mw"?"Xy, pJcyѲ+y6Z8"?`XҔYP?QM>I0R$}HT+#D 7*s8 M}"{ƿ/*:bF2uƄ}68#"?%4=g,ԑwؙ3|ޔ$\ȳD+Bcbju*@qY>: xq[TSk#,Ho0N 'F]C&yg?2Y*e]CtacbnZ5S~fT Z6g5OZTH?gFQg#b sq'Q>*xĨX%sb )E#%)#C%Q+ӇW$1+uCs{{ &8f62SXo (oEltm0^7b4!?Om'+Lbٖ(^3^@fe? xUykJjv%䋪||AZ?2 S|)#2U, M1o~28Pݑ9ZYsN)z^t\j[Dgk+cʤєȘ׺IJCq+9_|<[~Y[\#&At`{#a̛,y"\#>N9ڭWym&Ӆ~MPDZ1?W+:r驐d383'(5ƾ/cG;];g%K]0ƔClV@E/qkRvܞĮcVW$RRmFhFK.$"خrqf(HN]QO3/x؂+B 5 S$L~]8u.~[3Kx- .T^ԙJ /5Wf%%Hpr?ZX;zC3HkpGѰ0ay*f'' ry\*:=]"bD^d@:K}5<&ʂUnAEh е7A@ mL:-vU SyIئYQF!R N=={]Dh" Vs JTL-s5yfs GB2rIg/1^q >>8I&u"b\ԡHRuwΤ,e"_`XM$‹&68c!k+@cS() ʝ2`*sS8TO5Es8;?(Y D\˵C|no{I"IΟgs[<7$0L֗USpyt!S?ҨEy8zxoNf8;H$WgoNSPr\ƔdKxB42W'jÒXPo ÒXǗ3va\< Cj Osߙb<_O;xQxXg]{'=הwKf;敏I@A@rκG' o : +HcjbUa-t}+ߎS>ݰH65UՌ*5 2SH&p+*rDK*a|cE )msPV*м4ޕw#?% vtc2&dfxmp/vms廯Jg>z/RI*JgW-TX`ѭ@X,V9ՠM<8YX񨒁rtY+c+7EUt74IY$Ezn{fQxA2hР(',~΂k|uP(wKa&B zdyMX2Xl4<ﶴ#m]_,OPT'=˩J,Wɞ/۳EYph[NV|c4F"떾lV20"@#($>ķ#>s) VViX WABK,Ӹp V2ɑ&j=8![|=U%cUH59Ƭ 0j:54Ǵ. y3҂ZT3.'Oh4PҪm~lcadȲ8Ջ,D업W×qyke.Zo-޻q7$bX٤4.{O-F}'f{̜gȊѧYáMIo#7y>m+#hy\*E (m/7`~OyʈBp|"JL's?QlQjK,(Ie&ߠ^N~kԳ-2zt{EytwFCBSpZh?~I$o| \1w,*1+tg,l%@CPYbDXW&i< V4.ʕJB~(-Pn9cR\AQ~p4O׵9c1L80b-\O-qC U[/\魰z1C :%ssB2v^.z"JgyLɛLaN^X/S둣޴o%(^Wl#rMgyd:Hb!ld8URNkԢwK4FEScXA뇱#Zە7Wj*Ro7C֭L@L٨P-4-FV`p(آϳ("V(.L楤{3`=*[,H` jbU l]V3-aq4!TY)K ޝ :gAZ;!U2ڠikK? 0gJ =cl*m͖:ɋ(I)J+6eC{ǝk{f!η ~_"RfqDG$B!7r;-&Vt_vNW@WAUQwTQ9iw|kwǿ//J}=姴tk{UZ8\\]ߤNuWJ9 桘rAS锯Rt_ l+<tSf{H ϟ!4禼9W ]v[Mvv72|So٘E&cF +΂8QM3 >4n9@|c9d'je|t0f \U3C._jĿ5RSv5z[b>cVo HbNG̑}RP)T4Ewz"]9k}" r43.W?Yxhӥ_/G(zd bE kDx4Tʹ=KjN=멛^G=8 D n,i2UY?H0leM /N 2<d ٸM\VƬ'*D+X:)Z*7i;C-qaoZtx owyA'`\hSb>؛ ^9[ ՓhA16s2+BW!˗LjI+LBa]o淁W{̌/cht4UJ/vEK Ԩ%3h`O5lr*8Y·7, %^uqO8|fx*E?dLfUwi~װ61$9Kg e#Y. o`F'9믞^SS@ )\!kA rh>j ˨FB.(]SEC\ nttHm2|Bpz,YfT񡊱=`# 18VΣ?8'  \!.OJ rJJG$n,a'إՅUsrDt='G۠29EɩF=2g?2CEŹ Am/i?ܩ 6ܺjR*ڼ猕D _z'}.ȆLQ^nUn VcW,J? n*9+K3t~rّ ~TprO}P/KP e |c8ktCs 74V?+9Y,9o:oչ(߀Yx8n1=&]?-qu@#*#* k6SLDO&<},Wb͡ӬN^4fUƽZ!Z$h>~ٜ.j(7n%ƱIBJԝAGW|5.N/`l < ^oߗqnT{>*2'c>RTPqHPX8Xp2(c?h-Ŕ^,R@n#R 2`[6/_ /"Q{H#+I?:"y͋ClLu^beE3_12U1:oy%3%1oedNK 臌NNX"D2MG[1|iq1'cA-?q2ʾ%SxWf^x_40]y"6~23+R:iACJζxHA"|Z4G$ǍCjw*ٸ/Zn2OX`a.(sU]>|B<%Y_VI7end4TP@ TT=ME&m/Љz*Ҫ8BG:E&=CszOFL<$"Z& Y9VS@b{ɾod0@=5)p#|jLps$:٧d<&8^b{~6vdsHZxxt>e>,\pXu}eKR5j+j^7l΀KzM%(,Y]̛rH?tA<@iŋf>,QΜDg4̌k1yI;t`eMq3쁰e,=5mrP q&KKt+RZLEqę`eI2hwfE[1+:#xG1z&V4OGwq,}#-PR{S|~4[< gG /͗Ծ`z]h鑨עK>a,*9Sf^sn+w ? aNHl9YS#~'B+CA_BV7)1RBU?èMϮ9k}@϶c=;RwP g??YXs+HzH_f sȭg Nc zͻoɖ%Ƈ'l|gQ(ɪ[ xе\V9R^XuׇUA_܊B:zA"{rktQ.(a| h'ZZE&>+n NQw{ ߃B_)Pr2;7d=Pv~&{Kc(v~﷡#xBG^3@|0B׼-$VK7ݪm8ƅ9c\hPܰ3 YLXEl~p D7|XX5U;A5V6\&](Y"m6$3gE6,y%*Ҫy[6 cՙY,r룪`TXi*=]u:{NVhʨf7' J3S+O%}##Z|$ұRtܜFEb`goktt ^|*ӻV"xc/<<#[!tv[$Wͥ8$&y?^Epi-T TL)VeRbD!Ƥ{ E*(YMf0xH\Y[kVM~BB|Bi'?u{zX!{ddZH$RK◛.|UuEz'JƧJDqwwgSeaqr8Y+@=|: gbmk v>BB{w/%v\Np3 jrgHJ׵Ԯki7?x42iTVOThzne<{{;7a_@^ߝD S  20xx0d(t~PFPVpVųg9r?zW"EaˢƑѲWGZ_Ux]9V55=d{hr廁C#ãy163vvlrv|rvbjs?y`˧/~ OLa 7X%\@~LR5cEvGfU^X/{&veH㼀^f|mľd̄=Cﵑ#h{ rڲ7"u.+֬(KP汾1]pp>ᤣzI{eĊ|}/g<5؝rKTU7Z?GbhkEq}2VE%K>*ܦqSUnՊHܷn+k+y8xBV!s\fM_DQ5otzLD<@{0U6I+KYg]}K֔|jCZ+N3juNe8'/FC0)bh)TI/_;Y-yl?"/֏ۇM!FC¸LVnz;zINi%N?nklpoIqz݂X_ե}}xn-b0~ \[zR+RUk&r3NHv7LVI usYp j0U3aeCVGdQQ SקF4 ǹR端yXM7*MVpX])}+uR.2LdAuCx-ôƙN u1rUmJə@t9퇚xƉ:F+{:iv(@pgl0ؒ/^?"+S\OToz&ûFɂF)bLOuЫ#W\CN6s6!b" F|^_RAV0@d|htc%[_g9hPPiǔavI\cc$cVCpmܡ8ĎestUBSXCy^ Xw<'oP]eD"L #P7 m҆Dg~.%ŢCDC)ݹ`~@M~G.엷/ЊoN\5sulKIAy?ĉE>!R N 4 \lICx_ =yȼQ-o`˖-caaY|9+++988p8XrUV^óf͚k[n6lظqM6o޼eAAAEDDDEEn*&&&...!!!)))%%%---##D"Q(fc8NVVVNNN^^l#EEE%%%eem۶l߾}ǎ;wܵkݻ٣o```hhw^###ccc}߿}?000888444<<ٳϟx˗###^zě7o޾};99955ݻ|Ǐ>}/_G ^U0?VSG+z[{jB.=C2g&z\հycHpa/^E'l1_mXp=ZrɽˊMH"y Ygks+[6wD}p%v$LuO=DΙT,wSfĠOYbES (/OQUryB[IhB+ASm!" $t"@hW߁Aѱ4T3!iK.!@v6dIT2u$*%Ex!j@u t;{hHoa8FxР (FZ@Xa0#tI AG q-d@?xk't>b =`UFOߴ651S:H =0Df