--- elwix/config/rc.subr 2017/06/19 21:12:57 1.10.2.6 +++ elwix/config/rc.subr 2021/03/21 01:42:08 1.11.2.2 @@ -4,11 +4,16 @@ # (C) AITNET ltd - Sofia/Bulgaria # by Michael Pounov # -# $Id: rc.subr,v 1.10.2.6 2017/06/19 21:12:57 misho Exp $ +# $Id: rc.subr,v 1.11.2.2 2021/03/21 01:42:08 misho Exp $ # ### Dont edit this file !!! +Die() { + echo -n "EXIT: " >&2; echo "$@" >&2 + exit 1 +} + CheckVer() { [ -z "$1" -o ! -r "$1" ] && return 1 @@ -111,7 +116,7 @@ MakeFS_var() touch altroot/var/log/ppp.log chgrp 69 altroot/var/log/ppp.log - install -v $2/resolv.safe altroot/var/run/resolv.conf +# install -v $2/resolv.safe altroot/var/run/resolv.conf install -v ${WORLD}/usr/share/keys/pkg/trusted/* altroot/pkg/keys/trusted cd - @@ -143,11 +148,8 @@ MakeFS_etc() chmod 0600 $1/etc/ssh/ssh_host_ecdsa_key; chmod 0600 $1/etc/ssh/ssh_host_ed25519_key; - chmod 0440 $1/etc/sudoers; +# chmod 0440 $1/etc/sudoers; -# chgrp 80 $1/etc/config.xml; -# chmod 0660 $1/etc/config.xml; - mkdir -p $1/etc/mqtt; chgrp -R 883 $1/etc/mqtt; chown -R 883 $1/etc/mqtt; @@ -157,11 +159,11 @@ MakeFS_etc() ln -sf /usr/share/zoneinfo/${TIMEZONE} $1/etc/localtime; ln -sf /usr/share/misc/termcap $1/etc/termcap; - ln -sf /var/run/resolv.conf $1/etc/resolv.conf; +# ln -sf /var/run/resolv.conf $1/etc/resolv.conf; # ln -sf /elwix/pkg/etc/mk.conf $1/etc/mk.conf; - echo ${TARGET_ARCH} >$1/etc/platform; + echo "${TARGET_ARCH} $3" >$1/etc/platform; Create_etc_motd $1/etc/motd $3; @@ -195,6 +197,8 @@ MakeFS_boot() install -m 444 ${CFGDIR}/boot/logo-elwix.4th $1/boot; install -m 444 ${CFGDIR}/boot/brand-elwix.4th $1/boot; install -m 444 ${CFGDIR}/boot/menu.4th $1/boot; + install -m 444 ${CFGDIR}/boot/logo-elwix.lua $1/boot/lua; + install -m 444 ${CFGDIR}/boot/brand-elwix.lua $1/boot/lua; ;; *) ;; @@ -204,6 +208,7 @@ MakeFS_boot() if [ -r ${CFGDIR}/boot/loader_${TARGET_ARCH}.conf ]; then install -m 644 ${CFGDIR}/boot/loader_${TARGET_ARCH}.conf $1/boot/loader.conf; + install -m 644 ${CFGDIR}/boot/loader.conf.local $1/boot/loader.conf.local; fi; } @@ -221,6 +226,11 @@ InstallList() sed -nE -e 's/^ *([^ #]+) */\1/p' < $1 | tr ':' '\n' >$TMPFILE cd $2 for i in $(cat $TMPFILE); do + if [ ! -f $i ]; then + rm -f $TMPFILE + echo "Error:: File not found $i" + exit 1 + fi if [ -x $i ]; then echo "Strip '$i'" ${CEXEC} chflags -f noschg $i @@ -309,5 +319,18 @@ StripFiles() done cd - rm -f $TMPFILE + fi +} + +# $1 = file_pattern +# $2 = From dir +# $3 = To dir +InstallLinks() +{ + if [ -d "$2" ]; then + cd $2 + find . -type l -name "$1" | + tar -cvf - -T - | tar -C $3 -xf - + cd - fi }